一、镜像命令
#查看所有的镜像
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 13 months ago 13.3kB
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 13 months ago 13.3kB
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker images -q #显示镜像id
bf756fb1ae65
[root@iZbp10d5h2h0qbsabf055iZ docker]#
- REPOSITORY镜像的仓库源
- TAG镜像的标签
- IMAGE ID镜像的id
- CREATED镜像创建时间
- SIZE镜像创建时间
#通过docker搜索镜像
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker search redis
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
redis Redis is an open source key-value store that… 9081 [OK]
bitnami/redis Bitnami Redis Docker Image 173 [OK]
sameersbn/redis 83 [OK]
grokzen/redis-cluster Redis cluster 3.0, 3.2, 4.0, 5.0, 6.0 76
rediscommander/redis-commander Alpine image for redis-commander - Redis man… 54 [OK]
kubeguide/redis-master redis-master with "Hello World!" 33
redislabs/redisearch Redis With the RedisSearch module pre-loaded… 30
redislabs/redis Clustered in-memory database engine compatib… 27
redislabs/redisinsight RedisInsight - The GUI for Redis 24
redislabs/rejson RedisJSON - Enhanced JSON data type processi… 23
#可选项目,搜索stars大于3000的镜像
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker search redis --filter=stars=3000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
redis Redis is an open source key-value store that… 9081 [OK]
#下载镜像,分层下载
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker pull mysql
Using default tag: latest
latest: Pulling from library/mysql
a076a628af6f: Pull complete
f6c208f3f991: Pull complete
88a9455a9165: Pull complete
406c9b8427c6: Pull complete
7c88599c0b25: Pull complete
25b5c6debdaf: Pull complete
43a5816f1617: Pull complete
1a8c919e89bf: Pull complete
9f3cf4bd1a07: Pull complete
80539cea118d: Pull complete
201b3cad54ce: Pull complete
944ba37e1c06: Pull complete
Digest: sha256:feada149cb8ff54eade1336da7c1d080c4a1c7ed82b5e320efb5beebed85ae8c
Status: Downloaded newer image for mysql:latest
docker.io/library/mysql:latest
[root@iZbp10d5h2h0qbsabf055iZ docker]#
ps:docker.io/library/mysql:latest
=docker pull mysql
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest c8562eaf9d81 3 weeks ago 546MB
hello-world latest bf756fb1ae65 13 months ago 13.3kB
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker rmi -f bf756fb1ae65
Untagged: hello-world:latest
Untagged: hello-world@sha256:31b9c7d48790f0d8c50ab433d9c3b7e17666d6993084c002c2ff1ca09b96391d
Deleted: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest c8562eaf9d81 3 weeks ago 546MB
#删除全部镜像
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker rmi -f ${docker images -aq}
#删除多个镜像
[root@iZbp10d5h2h0qbsabf055iZ docker]#docker rmi -f id1 id2 id3
二、容器命令
有了镜像之后,我们就可以创建容器了,
#下载一个centos镜像来演示一下
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
7a0437f04f83: Pull complete
Digest: sha256:5528e8b1b1719d34604c87e11dcd1c0a20bedf46e83b5632cdeac91b8c04efc1
Status: Downloaded newer image for centos:latest
docker.io/library/centos:latest
[root@iZbp10d5h2h0qbsabf055iZ docker]#
#启动容器
docker run [可选参数] image /bin/bash
--name="name" #制定名字
-d #以后台的方式运行
-it #使用交互方式运行
-p #指定容器的端口
-p ip:主机端口:容器端口
-p 主机端口:容器端口
-p 容器端口
容器端口
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker run -it centos /bin/bash
[root@ce5f30235e68 /]# ls
bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
#从容器退回主机(容器本身也停止),如果想要容器不停止,使用快捷键Ctrl+P+Q(不停止容器退出容器)
[root@ce5f30235e68 /]# exit
exit
[root@iZbp10d5h2h0qbsabf055iZ docker]#
#查看运行的容器有哪些,-a参数代表把以往使用的容器也显示出来
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8a2dd00d489e bf756fb1ae65 "/hello" About an hour ago Exited (0) About an hour ago flamboyant_spence
[root@iZbp10d5h2h0qbsabf055iZ docker]#
#删除容器
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9e7eba833710 centos "/bin/bash" 9 seconds ago Exited (0) 5 seconds ago intelligent_faraday
bc0539983ed2 centos "/bin/bash" 2 minutes ago Up 2 minutes hungry_roentgen
ce5f30235e68 centos "/bin/bash" 9 minutes ago Exited (0) 5 minutes ago amazing_elbakyan
8a2dd00d489e bf756fb1ae65 "/hello" About an hour ago Exited (0) About an hour ago flamboyant_spence
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker rm 9e7eba833710
9e7eba833710
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bc0539983ed2 centos "/bin/bash" 2 minutes ago Up 2 minutes hungry_roentgen
ce5f30235e68 centos "/bin/bash" 10 minutes ago Exited (0) 6 minutes ago amazing_elbakyan
8a2dd00d489e bf756fb1ae65 "/hello" 2 hours ago Exited (0) 2 hours ago flamboyant_spence
#删除所有的容器
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker rm -f ${docker ps -aq}
#启动停止容器
#docker start 容器id
#docker restart 容器id
#docker stop 容器id
#docker kill 容器id
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bc0539983ed2 centos "/bin/bash" 8 minutes ago Up 8 minutes hungry_roentgen
ce5f30235e68 centos "/bin/bash" 15 minutes ago Exited (0) 11 minutes ago amazing_elbakyan
8a2dd00d489e bf756fb1ae65 "/hello" 2 hours ago Exited (0) 2 hours ago flamboyant_spence
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker stop bc0539983ed2
bc0539983ed2
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker run -it centos /bin/bash
[root@1fdc22fd5d8d /]# [root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1fdc22fd5d8d centos "/bin/bash" 14 seconds ago Up 13 seconds elated_proskuriakova
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker kill 1fdc22fd5d8d
1fdc22fd5d8d
#docker logs -tf --tail 10 容器id
#可选参数
-tf #显示日志
-tail number #要显示的日志条数
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker run -d centos /bin/sh -c "while true;do echo luhaihui;sleep 2;done"
ad6675bc8ae739bdd1fd4c5e4b42c16076889af43786b888fcb846e3cc8e1955
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ad6675bc8ae7 centos "/bin/sh -c 'while t…" 15 seconds ago Up 13 seconds wonderful_mestorf
6f2c69f266fe centos "/bin/bash" 2 minutes ago Up 2 minutes blissful_cohen
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker logs -tf --tail 10 ad6675bc8ae7
2021-02-09T14:12:18.166455498Z luhaihui
2021-02-09T14:12:20.168645163Z luhaihui
2021-02-09T14:12:22.171362653Z luhaihui
2021-02-09T14:12:24.173973077Z luhaihui
2021-02-09T14:12:26.176083223Z luhaihui
2021-02-09T14:12:28.178367860Z luhaihui
2021-02-09T14:12:30.180492195Z luhaihui
2021-02-09T14:12:32.182618110Z luhaihui
2021-02-09T14:12:34.185209745Z luhaihui
2021-02-09T14:12:36.191213299Z luhaihui
2021-02-09T14:12:38.193345814Z luhaihui
2021-02-09T14:12:40.195645244Z luhaihui
#查看容器的进程信息
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ad6675bc8ae7 centos "/bin/sh -c 'while t…" 4 minutes ago Up 4 minutes wonderful_mestorf
6f2c69f266fe centos "/bin/bash" 6 minutes ago Up 6 minutes blissful_cohen
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker top 6f2c69f266fe
UID PID PPID C STIME TTY TIME CMD
root 2683 2663 0 22:09 pts/0 00:00:00 /bin/bash
[root@iZbp10d5h2h0qbsabf055iZ docker]#
#查看镜像的元数据
[root@iZbp10d5h2h0qbsabf055iZ docker]# docker inspect 6f2c69f266fe
#把容器内部的文件拷贝到主机上。
[root@iZbp10d5h2h0qbsabf055iZ /]# cd home
[root@iZbp10d5h2h0qbsabf055iZ home]# ls
admin
[root@iZbp10d5h2h0qbsabf055iZ home]# docker cp 6f2c69f266fe:/home/a.txt /home
[root@iZbp10d5h2h0qbsabf055iZ home]# ls
admin a.txt
三、总结
至此,一些基本命令已经讲解完毕了,嘿嘿,开心!