Hi Open-RMF team, as usual, thanks for the hard work on maintaining the repository thus far.
This enquiry comes in regards to recent changes introduced in rmf-web release of version 0.2.0.
Enquiry :question:
How does one expose the RMF-Dashboard (Eg. http://localhost:5173) such that it is accessible on different devices in the same local network (Eg. http://<host_device_ip_address>:5173)?
Asking because:
Previously, to achieve this, a RMF developer would follow past issues which provides instructions to edit ./packages/dashboard/.env and ./packages/api-server/api_server/default_config.py such that it is no longer using localhost and instead use a combination of 0.0.0.0 and <host_device_ip_address>.
However, with rmf-web 0.2.0 release, ./packages/dashboard/.env has been replaced with app-config.json. Editing the rmfServerUrl and trajectoryServerUrl variables in app-config.json does not allow RMF Dashboard to be accessible via http://<host_device_ip_address>:5173.
Things I Tried :hammer:
Attempted running pnpm start with --host flag as recommended by pnpm start suggestions on startup. Issue persists.
Ensured that environment variables for RMF_SERVER_URL and TRAJECTORY_SERVER_URL are set to use host_device_ip_address as follows:
Scanned through the rmf-web 0.2.0 codebase manually in search of documentation. Went through the following "hidden" README.mds but still cannot figure out how. Not sure where I am still missing crucial information.
api-server
[dashboard]()
3. Edit `./packages/dashboard/app-config.json` such that it looks similar to what is shown below:
```bash
"rmfServerUrl": "http://192.168.30.173:8000",
"trajectoryServerUrl": "ws://192.168.30.173:8006",
Build the docker image using the command below:
docker build -t rmf_web_custom:jazzy .
:warning: This will take about 15 minutes, depending on your internet strength.
Before proceeding, is there an existing issue or discussion for this?
Description
Hi Open-RMF team, as usual, thanks for the hard work on maintaining the repository thus far.
This enquiry comes in regards to recent changes introduced in rmf-web release of version
0.2.0
.Enquiry :question:
How does one expose the RMF-Dashboard (Eg.
http://localhost:5173
) such that it is accessible on different devices in the same local network (Eg.http://<host_device_ip_address>:5173
)?Asking because:
Previously, to achieve this, a RMF developer would follow past issues which provides instructions to edit
./packages/dashboard/.env
and./packages/api-server/api_server/default_config.py
such that it is no longer usinglocalhost
and instead use a combination of0.0.0.0
and<host_device_ip_address>
.However, with rmf-web
0.2.0
release,./packages/dashboard/.env
has been replaced withapp-config.json
. Editing thermfServerUrl
andtrajectoryServerUrl
variables inapp-config.json
does not allow RMF Dashboard to be accessible viahttp://<host_device_ip_address>:5173
.Things I Tried :hammer:
pnpm start
with--host
flag as recommended bypnpm start
suggestions on startup. Issue persists.RMF_SERVER_URL
andTRAJECTORY_SERVER_URL
are set to usehost_device_ip_address
as follows:0.2.0
codebase manually in search of documentation. Went through the following "hidden"README.md
s but still cannot figure out how. Not sure where I am still missing crucial information. api-server [dashboard]()Steps To Reproduce :books:
Download rmf-web
0.2.0
repository:Create the following
Dockerfile
in the project root:RUN apt-get install -y \ git \ curl \ build-essential \ python3-pip \ python3-venv \ python3-rosdep \ python3-colcon-common-extensions \ ros-$ROS_DISTRO-rmf-building-map-msgs
ENV PIP_BREAK_SYSTEM_PACKAGES=1
WORKDIR /rmf_ws/src RUN git clone https://github.com/open-rmf/rmf_internal_msgs.git WORKDIR /rmf_ws/src/rmf_internal_msgs RUN git checkout 9ff25f4
colcon compilation
ENV DEBIAN_FRONTEND=noninteractive WORKDIR /rmf_ws/ RUN rosdep init RUN rosdep update --rosdistro $ROS_DISTRO \ && rosdep install --from-paths src --ignore-src --rosdistro $ROS_DISTRO -yr RUN . /opt/ros/$ROS_DISTRO/setup.sh \ && colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
cleanup
RUN sed -i '$isource "/rmf_ws/install/setup.bash"' /ros_entrypoint.sh
WORKDIR / COPY ./ ./rmf-web
RUN curl -fsSL https://get.pnpm.io/install.sh | bash - ENV PNPM_HOME /root/.local/share/pnpm ENV PATH "$PNPM_HOME:$PATH" RUN pnpm env use --global 20 RUN curl -sL https://deb.nodesource.com/setup_16.x | bash - RUN apt-get update && apt-get install -y \ nodejs \ jq && \ pip3 install pipenv \ && rm -rf /var/lib/apt/lists/*
-----------------
Stage 2 - build
-----------------
WORKDIR /rmf-web/ RUN pnpm config set unsafe-perm RUN pnpm install RUN pnpm store prune WORKDIR /rmf-web/packages/dashboard
----------
Stage 3 - cleanup
----------
ENTRYPOINT ["/ros_entrypoint.sh"] CMD ["pnpm", "start"]
Build the docker image using the command below:
:warning: This will take about 15 minutes, depending on your internet strength.
Run the docker image using the command below:
Expected Behaviour :green_circle:
RMF Dashboard is accessible on: http://192.168.30.173:5173
Actual Behaviour :red_circle:
RMF Dashboard is still only accessible on: http://localhost:5173
Similar Issues