【先上干货】
1、docker安装
curl -fsSL https://test.docker.com -o test-docker.shsudo sh test-docker.sh# ubuntu系统可以直接通过apt安装
sudo apt-get install -y docker.io
2、给docker一个root权限
sudo usermod -aG docker $USER
3、启动docker服务
# service 命令的用法
sudo service docker start
# systemctl 命令的用法
sudo systemctl start docker
4、下载带有ros-noetic版本的ubuntu20.04镜像
sudo docker pull osrf/ros:noetic-desktop-full
5、创建容器
docker run -it -v /home/rust/rust_files:/home/rust/rust_files --network=host --device=/dev/ttyS0 --device=/dev/ttyUSB0 --name=rust osrf/ros:noetic-desktop-full /bin/bash
6、备份容器
docker commit -a "rust" -m "origin" rust test:1.0
docker commit -a="用户名" -m="描述" 容器id或名字 打包后的镜像的名字:版本号
7、进docker后更换软件源
apt update
apt install vim
cp -ra /etc/apt/sources.list /etc/apt/sources.list.bak
vim /etc/apt/sources.list
# 用以下内容替换原文件中的
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse# 保存退出
apt-get update
apt-get upgrade
PS:换源地址查询
LUG's repo file generator (ustc.edu.cn)https://mirrors.ustc.edu.cn/repogen/8、拷贝命令
docker cp file rust:/home/
9、删除容器
docker rm -f rust
10、删除镜像
docker image rm 容器id
11、查询docker hub上的公共镜像
sudo docker search ros
12、保存镜像
docker save -o my_docker_image.tar 镜像id
13、导入镜像
#在相应的目录下加载镜像
docker load -i my_docker_image.tar
14、设置docker开机自启动
sudo systemctl enable docker
15、设置容器自启动
打开自启动
# docker update --restart=always 容器名或容器ID
docker update --restart=always <CONTAINER ID>关闭自启动
# docker update --restart=no 容器名或容器ID
docker update --restart=no <CONTAINER ID>