Difference between revisions of "Docker"

From Bike Wiki
Jump to navigation Jump to search
(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:<\br>
+
* 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.
 
===Docker on Linux===
 
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>
 
 
 
 
===Docker With Pain (Windows)===
 
Use the “edge” version or else it won’t like the windows version
 
  
 
===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

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

  1. 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"]