一、Linux上安装docker
1.1 配置仓库
安装 config-manager 命令,配置仓库的工具所在工具包
sudo yum install -y yum-utils
配置 repo
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
把 /etc/yum.repos.d/docker-ce.repo 里的 gpgkey 替换成国内(中科大)镜像源
sudo sed -i 's@//download.docker.com@//mirrors.ustc.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo
1.2 安装 docker
sudo yum install -y docker-ce docker-ce-cli containerd.io dockerbuildx-plugin docker-compose-plugin
1.3 验证
配置加载
sudo systemctl daemon-reload
启动服务
sudo systemctl start docker
开启启动(视需求添加)
sudo systemctl enable docker
查看服务状态
sudo systemctl status docker
运行 docker
sudo docker run hello-world
运行开发环境压缩包
查看 docker 容器,-a查看所有包括未运行。
#查看容器
sudo docker ps
sudo docker ps -a
# 查看镜像
sudo docker images
rz 将压缩包传到 linux 机器,docker load 对.tar环境包进行加载。
# 方法一
sudo docker load --input /压缩包位置
# 方法二
sudo docker load -i /压缩包位置
# 方法三
sudo docker load < /压缩包位置
run 和 exec 都可以进入容器:
- run 从镜像中创建并进入一个容器,可以同时运行命令
 docker run [OPTIONS] IMAGE [COMMAND] [ARG…]
- exec 进入已经打开的容器,可以同时运行命令
 docker exec [OPTIONS] CONTAINER COMMAND [ARG…]
- attach 进入已经打开的容器(除了不能运行命令,功能和exec一样)
 docker attach [OPTIONS] CONTAINER
- 区别: - run 可以创建容器。
- 当使用容器结束后输入 exit退出,以 exec 方式进入的只是退出容器终端,但不会导致容器的停止,需要重新进入的时候只需要使用docker attach [OPTIONS] CONTAINER。
- 而 run 方式进入的在 exit 命令后会直接退出,需要使用 docker restart [OPTIONS] CONTAINER [CONTAINER...]将其开启,再 attach 连接。
- 或者在 run 命令后加一个选项 --restart=always也可以保证不直接退出。
 
在这个案例中,我们用 run 创建一个由 cppubuntu:2.0 镜像生成的名为 tsqBoost 的容器,并进入,其中 /root/LocalDir(会自动在本地生成文件夹) 为容器中 /ContainerDir 的本地仓库,两边有相同的沙箱环境,都可以操作会自动同步(就像一个简单版的git本地仓库和git仓库,的关系)。
- -p: 可以指定映射端口,选个不常用的即可
- -t: 在新容器内指定一个伪终端或终端。
- -i: 允许你对容器内的标准输入 (STDIN) 进行交互。
- -d: 让容器在后台运行
docker run -it --name tsqBoost -v /root/LocalDir:/ContainerDir -p 8015:22 cppubuntu:2.0
对正在使用中的已有的容器使用 sudo docker ps 可以查看,按如下命令敲入容器 id 或容器名,也可以进入该容器。
docker exec -it e061224769fe /bin/bash