Docker官网
官方网站 https://docs.docker.com/ 中文文档 https://yeasy.gitbook.io/docker_practice/
Docker安装
参考文档
https://docs.docker.com/engine/install/centos/
安装步骤
1 2 3 4 5 6 7 8 9
| # 卸载旧版本docker sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
|
1 2 3 4
| # 设置仓库链接 sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
1 2
| # 安装Docker sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
1 2 3
| # 启动Docker sudo systemctl enable docker sudo systemctl start docker
|
1 2
| # 测试是否安装成功 sudo docker run hello-world
|
镜像加速
概述
由于默认的镜像仓库在国外,所以我们的访问速度非常慢。 但是我们配可以镜像加速让我们能更快的拉
取镜像。
步骤
访问阿里云官网>进入控制台>搜索容器镜像服务>镜像工具>镜像加速器 按照操作文档的要求配置。

1
| sudo mkdir -p /etc/docker
|
1 2 3 4 5
| sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://b0njanv3.mirror.aliyuncs.com"] } EOF
|
1
| sudo systemctl daemon-reload
|
1
| sudo systemctl restart docker
|
Docker常规操作
下载镜像
搜索镜像可以通过访问网站https://hub.docker.com/
1 2 3 4
| docker pull 镜像名[:版本] 例如:下载mysql最新版本镜像 docker pull mysql 下载nginx最新版本镜像 docker pull nginx 下载mysql镜像5.7标签镜像 docker pull mysql:5.7
|
列出镜像信息
1 2
| docker images [选项] # 后面的选项可以通过 docker images --help查询更多
|

列出容器信息
1 2
| docker ps [选项] 默认显示正在运行的容器信息 # 后面的选项可以通过 docker ps --help查询更多
|
创建并运行容器
1 2 3 4 5 6 7 8 9
| 1.docker run [options] image [command] [arg...] # options:选项,需要重点关注-d,-p,-v,-e,--restart # image:镜像信息,推荐使用 镜像名:tag的写法 ,如果只写镜像名则运行的是laster版本 # command:创建容器后要执行的命令 # arg... :command命令的参数 2.容器运行方式: (1)默认运行方式: docker run nginx:laster (2)后台运行方式(常用):docker run -d nginx:laster (3)交互式运行:docker run -it nginx:laster bash 一般用在调试阶段进入容器内部,查看脚本运行情况。
|
删除容器
1 2 3 4
| docker rm [选项] [容器ID或容器名...] # docker rm qwer1234 删除单个非运行中的容器 # docker rm qwer1234 asdf1452 删除多个非运行中的容器 # docker rm -f qwer12324 删除运行中的容器
|
进入容器
1 2 3
| docker exec [选项] 容器ID或容器名 命令 [参数] # docker exec 容器id ls 进入容器并执行ls命令(但是这样还是只能单次交互) # docker exec -it 容器id bash 进入容器并执行脚本解析器(则可以多次交互) 常用
|
查看容器日志
1 2
| docker logs [选项] 容器ID或容器名 # docker logs -f 容器ID或容器名 持续显示新的日志
|
容器文件拷贝
1 2 3 4 5 6 7 8 9
| docker cp [options] 容器id:源路径 目标路径 #把容器中的文件拷贝到宿主机中 注:源路径为要复制的文件路径,目标路径为要复制到哪里的路径。 docker cp [options] 源路径 容器id:目标路径 #把宿主机的文件拷贝到容器中 -------------------------------------- # 从宿主机中拷贝一个文件到nginx容器中 # docker cp /home/cp_test 容器id:/home/cp_test
# 把nginx容器中的任意一个文件拷贝到宿主机中 # 1.要进入nainx的容器当中 # 2.docker cp 容器id:/usr/share/nginx/html/index.html /home/index.html
|
停止容器
1
| docker stop [选项] [容器ID或容器名...]
|
运行容器(注意:不能是用run命令,run命令是创建一个新的容器并运行)
1
| docker start [选项] 容器ID或容器名
|