-
Notifications
You must be signed in to change notification settings - Fork 0
Docker Installation
First install git
and Docker according to your OS:
- macOS: Make sure command line tools are installed by running
xcode-select --install
in a terminal and then install and launch Docker Desktop. Open your Docker preferences and make sure Docker Compose V2 is enabled. - Windows: Install git and then install and launch Docker Desktop.
- Linux: Make sure you have git installed and then install Docker Engine for your distro and install Docker Compose V2.
Once everything is installed and running, if you're on macOS or Linux open a terminal and if you're on Windows open a PowerShell. Then clone the repository:
git clone --recurse-submodules [email protected]:ArcturusNavigation/arcturus_docker.git
If you are on MacOS with Apple Silicon (M series) or any ARM-based machine and would like to run the simulation: edit
docker-compose.yml
and modify theimage
field astoyat522/arcturus:aarch64
You may find it helpful to increase the amount of RAM allocated to Docker to make the simulation run faster.
Finally, pull the docker image:
cd arcturus_docker
docker compose pull
Linux users may need to use sudo
to run docker compose
. The image is about 1.5GB compressed so this can take a couple minutes. Fortunately, you only need to do it once. Pre-built images are located here.
Make sure you are on the latest version of all_seaing_vehicle by changing directory into the submodule and switching to the main
branch:
cd home/arcturus/dev_ws/src/all_seaing_vehicle
git checkout main
Once the image is pulled you can start it by running the following in your arcturus_docker
directory:
docker compose up
Follow the instructions in the command prompt to connect via either a terminal or your browser. If you're using the browser interface, click "Connect" then right click anywhere on the black background to launch a terminal.
The username and password inside the container are both arcturus
.
To use graphical programs, navigate to the link printed when starting up the container. Once connected, right-click anywhere on the black screen to open up a terminal or RViz for robot visualizations and debugging. Additionally, the command to run the simulation must be entered in the terminal in NoVNC.
To stop the image, run:
docker compose down
If you try to rerun docker compose up
without first running docker compose down
the image may not launch properly.
Any changes made to the your home folder in the docker image (/home/arcturus
) will be saved to the arcturus_docker/home
directory your local machine but ANY OTHER CHANGES WILL BE DELETED WHEN YOU RESTART THE DOCKER IMAGE.
- In the graphical interface, you can move windows around by holding Alt or Command (depending on your OS) then clicking and dragging anywhere on a window. Use this to recover your windows if the title bar at the top of a window goes off screen.
- You can edit files that are in the shared
home
directory using an editor on your host OS.
If you want to change the docker image and rebuild locally, all you need to do is add a --build
flag:
docker compose up --build
For autonomy leads: If you need to make changes to the docker image saved in Docker Hub, first commit the running container
docker container commit <container_name> toyat522/arcturus:<tag_name>
where <container_name>
is the name of the container (which you can see using the docker ps
command) and <tag_name>
is x86_64
for an x86 machine (most Windows machines) and aarch64
for machines with the ARM architecture (e.g. Apple silicon macs).
Note: If the VNC is running into issues after the new push, remove the /tmp/.X1-lock
file before committing the container.
Then push the container to Docker Hub
docker push toyat522/arcturus:<tag_name>
Back: Setting Up Your GitHub SSH Keys | Top: Installation | Next: VS Code Setup |
---|