看官方文档:https://docs.docker.com/engine/install/centos/
dockerhub网址:https://hub.docker.com/
一、 安装
1. 卸载老版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2. 需要的安装包
yum install -y yum-utils
3. 设置镜像仓库
yum-config-manager
--add-repo
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 阿里云镜像
4. 更新yum软件包索引
yum makecache fast
5. 安装docker引擎
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
6. 启动docker
systemctl start docker
7. 查看版本
docker version
8. 测试hello world
docker run hello-world
# 会下载镜像,出现hello from docker说明安装成功
9. 查看下载的镜像
docker images
10. 卸载docker
yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin
rm -rf /var/lib/docker #docker默认工作路径
rm -rf /var/lib/containerd
二、 常用命令
1. 帮助命令
docker --help
2. 镜像命令
(1) docker images 查询所有本地主机上的镜像
(2) docker search 搜索镜像
(3) docker pull 下载镜像
docker pull mysql 不写版本默认下载lastest
docker pull mysql:5.7 指定下载5.7版本 有哪些版本使用 docker search查看
(4) docker rmi 删除镜像
docker rmi -f 镜像id # 删除指定镜像
docker rmi -f 镜像id 镜像id 镜像id # 删除多个镜像
docker rmi -f $(docker images -aq) # 删除所有镜像
3. 容器命令: 有了镜像才能创建容器
(1) docker run 新建容器并启动
(2) docker ps 列出所有运行的容器
(3) 退出容器
a) docker exit 直接停止容器并退出
b) Ctrl + Q + P 不停止容器退出
(4) 删除容器
a) docker rm 容器id # 删除指定容器,不能删除正在运行的容器,除非使用 docker rm -f 容器id
b) docker rm $(docker ps -aq) # 删除所有容器
c) ocker ps -a -q|xargs docker rm # 删除所有容器
(5) 启动和停止容器
a) docker start 容器id # 启动容器
b) ocker restart 容器id # 重启容器
c) docker stop 容器id # 停止容器,运行中的容器无法停止
d) docker kill 容器id # 强制停止容器,可以停止运行中的容器
4. 其他常用命令
(1)后台启动容器
docker run -d 镜像名
(2)查看日志
docker logs
(3)查看容器中的进程信息
docker top 容器id
(4)查看镜像的元数据
docker inspect 容器id
(5) 进入当前正在运行的容器
a) docker exec -it 容器id /bin/bash
b) docker attach 容器id
(6)从容器拷贝文件到主机上
docker cp 容器id:容器内路径 目的主机路径
5. 小结
6. 命令文档
三、 练习
1. 部署nginx
docker search nginx # 可以去dockerhub查
docker pull nginx
docker images
docker run -d --name nginx01 -p 3344:80 镜像名 # 后台运行
curl localhost:3344 # 测试
2. 端口暴露的概念
3. 部署tomcat
docker pull tomcat9.0 (docker run -it tomcat9.0 # 直接运行容器会自动下载镜像)
docker run -d -p 3333:8080 --name tomcat01 tomcat