运维开发网

docker 的常用命令

运维开发网 https://www.qedev.com 2021-04-02 16:12 出处:51CTO 作者:qq5d77148e4c49d
docker 常用命令介绍

1.帮助命令

docker version      #显示docker的版本信息
docker info         #显示docker的系统信息
docker --help       

帮助文档的官方地址:https://docs.docker.com/reference/

2.镜像命令

docker images

[root@docker ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
badwolf/centos      httpd               00398159773f        8 days ago          782MB
#解释
REPOSITORY      #镜像仓库源
TAG             #镜像的标签
IMAGE ID        #镜像的ID
CREATED         #镜像的创建时间
SIZE            #镜像的大小

#可选项:
Options:
  -a, --all             #列出所有镜像
  -q, --quiet           #只显示镜像id

docker search

[root@docker ~]# docker search mysql
#可选项
Options:
  -f, --filter filter   #--filter=STARS=100 搜索出来的镜像STARS大于100

docker pull

[root@docker ~]# docker pull mysql
Using default tag: latest           #如果不选择版本,默认下载最新版,docker pull mysql:5.7,版本官方存在即可
latest: Pulling from library/mysql      
d51ce1c2e575: Pull complete         #分层下载
c2344adc4858: Pull complete 
......
Digest: sha256:8b7b328a7ff6de46ef96bcf83af048cb00a1c86282bfca0cb119c84568b4caf6 #签名
Status: Downloaded newer image for mysql:latest 
docker.io/library/mysql:latest #真实下载地址
[root@docker ~]# 

docker rmi

#指定镜像ID删除
[root@docker ~]# docker rmi -f 镜像id
#删除多个镜像
[root@docker ~]# docker rmi -f 镜像id1 镜像id2 镜像id3 ......
#删除全部镜像
[root@docker ~]# docker rmi -f $(docker images -aq)

docker remove

#卸载docker
[root@docker ~]# yum remove docker-ce docker-ce-cli containerd.io

docker image prune

#清理镜像垃圾
echo 'y'|docker image prune

3.容器命令

说明:下载一个centos来进行测试

[root@docker ~]# docker pull centos:7   #一定要加版本号,最新版的下载可能会有问题,不兼容你的系统

docker run

[root@docker ~]# docker run [可选参数] image

#参数列表
--name  #容器名字 httpd mysqld tomcat .....
-d      #后台运行
-it     #使用交互模式运行,进入容器查看内容
-p      #指定容器的端口
    -p  #主机端口:容器端口
    -p  #容器端口
    -p  #ip:主机端口:容器端口
    -p  #容器端口

#案例1:
#启动并进入容器
[root@docker ~]# docker run -it centos:7 /bin/bash
[root@440e3ddc5000 /]# cat /etc/redhat-release 
CentOS Linux release 7.8.2003 (Core)
[root@440e3ddc5000 /]# hostname
440e3ddc5000 
[root@440e3ddc5000 /]# exit 

#案例2
#后台启动
docker run -d centos:7  
#问题
    #使用-d启动,使用ps检查发现容器停止了,出现这样的问题的原因是容器的启动必须有一个前台进程,否则docker会认为程序已经关闭,所以docker会自动停止

docker ps

#检查正在运行的容器
[root@docker ~]# docker ps -a

#参数说明
-a      #检查所有容器状态
-n=?    #显示最近创建的容器
-q      #只显示容器编号

退出容器

exit    #容器停止并退出
ctrl +p+q #容器不停止退出

docker rm

说明:镜像在运行的时候变成容器,所有容器在运行的时候是无法删除镜像的,但是容器在运行状态可以删除容器。

#删除一个容器
[root@docker ~]# docker rm -f 容器id
#删除所有容器
[root@docker ~]# docker rm -f $(docker ps -aq)
[root@docker ~]# docker ps -a -q |xargs rm -f

docker start

[root@docker ~]# docker start id

docker stop

[root@docker ~]# docker stop id 

docker kill

[root@docker ~]# docker kill id

docker logs


[root@docker ~]# docker logs name/id
#参数说明
-ft             #显示日志
--tail +number  #要显示的日志条数 
0

精彩评论

暂无评论...
验证码 换一张
取 消