Difference between revisions of "Docker"
(→Docker) |
(→Docker) |
||
Line 4: | Line 4: | ||
===Why we use it=== | ===Why we use it=== | ||
We use docker as a way to have a portable, replicable environment to conduct development on the vision system without having physical access to the bike or any of its corresponding SoCs. | We use docker as a way to have a portable, replicable environment to conduct development on the vision system without having physical access to the bike or any of its corresponding SoCs. | ||
+ | |||
+ | ===Docker on Linux=== | ||
+ | *To install: | ||
+ | For Ubuntu: | ||
+ | <code> sudo apt-get install docker </code> | ||
+ | For Red Hat: | ||
+ | <code> sudo yum install docker </code> | ||
+ | For Fedora: | ||
+ | <code> sudo dnf install docker -y </code> | ||
+ | For Arch: | ||
+ | <code> sudo pacman -S docker </code> | ||
+ | |||
+ | *Starting the docker daemon: | ||
+ | <code> sudo systemctl enable docker.service | ||
+ | |||
+ | ===Docker With Pain (Windows)=== | ||
+ | Use the “edge” version or else it won’t like the windows version | ||
+ | |||
===Commands=== | ===Commands=== | ||
− | * To run a docker image in a container/volume: | + | * To run a docker image in a container/volume: |
<code> docker run -it --rm --mount source=SOURCE,destination=/DESTINATION IMAGE</code> | <code> docker run -it --rm --mount source=SOURCE,destination=/DESTINATION IMAGE</code> | ||
− | ** For example, to run an image <code> anything </code> in a container <code> autobike </code>: | + | ** For example, to run an image <code>anything</code> in a container <code>autobike</code>: |
<code> docker run -it --rm --mount source=autobike,destination=/autobike anything </code> | <code> docker run -it --rm --mount source=autobike,destination=/autobike anything </code> | ||
Line 25: | Line 43: | ||
When using a container, remember to store the code inside the folder of the container so that changes will be saved. | When using a container, remember to store the code inside the folder of the container so that changes will be saved. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===Vision’s Current Used Dockerfile (as of 12/12/20)=== | ===Vision’s Current Used Dockerfile (as of 12/12/20)=== |
Revision as of 19:43, 12 December 2020
Contents
Docker
Docker is an open-source project for automating the deployment of applications as portable, self-sufficient containers that can run on the cloud or on-premises.
Why we use it
We use docker as a way to have a portable, replicable environment to conduct development on the vision system without having physical access to the bike or any of its corresponding SoCs.
Docker on Linux
- To install:
For Ubuntu:
sudo apt-get install docker
For Red Hat:
sudo yum install docker
For Fedora:
sudo dnf install docker -y
For Arch:
sudo pacman -S docker
- Starting the docker daemon:
sudo systemctl enable docker.service
Docker With Pain (Windows)
Use the “edge” version or else it won’t like the windows version
Commands
- To run a docker image in a container/volume:
docker run -it --rm --mount source=SOURCE,destination=/DESTINATION IMAGE
- For example, to run an image
anything
in a container autobike
:
docker run -it --rm --mount source=autobike,destination=/autobike anything
- To create a new container:
docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
- To name a docker image:
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
- To see your docker images:
docker image list
- To see docker volumes:
docker volume list
When using a container, remember to store the code inside the folder of the container so that changes will be saved.
Vision’s Current Used Dockerfile (as of 12/12/20)
FROM ros:noetic
- install ros package
RUN apt-get update && apt-get install -y \
vim\
ros-noetic-ros-tutorials\
git &&\
rm -rf /var/lib/apt/lists/*
CMD ["/bin/bash"]