参考资料
官方文档:https://docs.docker.com/docker-for-windows/
仓库地址:https://hub.docker.com/
Docker安装
#卸载旧版本docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#安装yum-utils工具包
sudo yum install yum-utils
#设置阿里镜像源
sudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#更新软件包索引
yum makecache fast
#安装docker引擎
#docker-ce 社区版 ee 企业版
yum install docker-ce docker-ce-cli containerd.io
#启动docker
systemctl start docker
Docker卸载
# 卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
# 删除资源
rm -rf /var/lib/docker # docker 的默认工作路径
Docker命令
查看docker信息
#显示docker版本信息
docker version
#系统信息,镜像及容器信息
docker info
#运行镜像
docker run hello-world
查看镜像
#查看本机镜像
docker images
搜索镜像
#搜索远程仓库里面的镜像
docker search
#参数解释
Options:
-f, --filter filter Filter output based on conditions provided
--format string Pretty-print search using a Go template
--limit int Max number of search results (default 25)
--no-trunc Don't truncate output
# 搜索出Stars大于3000的
docker search mysql --filter=STARS=3000
下载镜像
#下载镜像
docker pull
docker pull mysql # 下载mysql镜像,default tag,默认最新版latest
docker pull mysql:5.7 # 指定版本下载
版本来自于官网,版本库https://hub.docker.com/_/mysql
删除镜像
#删除镜像
docker rmi
# 删除一个可以通过名称也可以指定id,- f表示强制删除
docker rmi -f 9cfcce23593a
# 删除多个用空格分隔id
docker rmi -f id id id
# 删除所有
docker rmi -f $(docker images -aq) # images -aq就是查所有镜像id,从而递归删除
启动容器
#启动容器
docker run [可选参数] image
# 参数说明
--name=“Name” # 容器名字,用于区分容器
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 如-p 8080::8080
-p ip:主机端口:容器端口
-p 主机端口:容器端口
-p 容器端口
-p 随机指定端口
查看容器
# 查看正在运行的容器
docker ps
# 查看所有的容器
docker ps -a
# 显示最近创建的容器,设置显示个数
docker ps -a - n=?
# 只显示容器的编号
docker ps -aq
删除容器
# 删除指定容器 不能删除正在运行的容器,如果强制删除 rm -f
docker rm 容器id
# 删除所有容器
docker rm -f $(docker ps -aq)
# 删除所有容器
docker ps -a -q|xargs docker rm
启动、停止容器
docker start
docker restart
docker stop
docker kill
[root@192 ~]# docker run -it centos /bin/bash
[root@7b1a7dd10ea4 /]# exit
exit
[root@192 ~]# docker ps #查看正在运行的
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@192 ~]# docker ps -a # 查看历史运行过的
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7b1a7dd10ea4 centos "/bin/bash" 54 seconds ago Exited (0) 42 seconds ago fervent_mirzakhani
[root@192 ~]# docker start 7b1a7dd10ea4 # 启动当前这个容器 container id 粘过 来
7b1a7dd10ea4
[root@192 ~]# docker ps # 查看当前运行容器 发现启动成功
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7b1a7dd10ea4 centos "/bin/bash" 2 minutes ago Up 28 seconds fervent_