1.帮助命令
1.1 docker version(显示docker的版本信息)
sudo docker version
1.2 docker info(显示docker的系统信息,包括镜像和容器数量)
sudo docker info
1.3 --help (万能命令)
sudo 命令 --help
1。4 帮助文档的地址
https://docs.docker.com/engine/reference/builder/
2. 镜像命令
查看所有本地的主机上的镜像
sudo docker images
2.1 docker images 查看所有本地的主机上的镜像
sudo docker images
- REPOSITORY: 镜像的仓库源
- TAG:镜像的标签
- IMAGE ID:镜像的id
- CREATED:镜像的创建时间
- SIZE:镜像的大小
2.1.1 docker images 可选项
-a, --all # 列出所有的镜像
-q, --quiet # 只显示镜像的id
2.1.2 docker images -a
sudo docker images -a
2.1.3 docker images -q
sudo docker images -q
2.1.4 docker images -aq
sudo docker images -aq
2.2 docker search 搜索镜像
# 搜索mysql镜像
sudo docker search mysql
2.2.1 通过 STARS 过滤
- 搜索过滤出STARS大于3000的
sudo docker search mysql --filter=STARS=3000
2.3 docker pull 下载镜像
- 下载mysql镜像(默认下载最新的)
sudo docker pull mysql
2.3.1 下载镜像加入版本号
sudo docker pull 镜像名[:tag]
sudo docker pull mysql:5.7
2.4 删除镜像
2.4.1 删除所有镜像
sudo docker rmi -f $(docker images -aq)
2.4.2 删除指定ID的镜像
sudo docker rmi -f 镜像id
sudo docker rmi -f c20987f18b13
2.4.3 删除多个镜像
sudo docker rmi -f 镜像id 镜像id 镜像id 镜像id
3. 容器命令
3.1 先下载一个centos来测试
我们有了镜像才可以创建容器,Linux,下载一个centos镜像来测试
3.2 新建容器并启动
sudo docker [可选参数] image
参数说明
–name=“Name” 容器名称
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 -p 8080:8080
-p 主机端口:容器端口
-p ip:主机端口:容器端口
-p 容器端口
-P 随机指定端口
3.3 启动容器并进入容器
sudo docker run -it 镜像名称 /bin/bash
sudo docker run -it centos /bin/bash
进入容器后的命令,和Linux一样,例如,ls、cd等等
3.3 退出容器
3.3.1 直接容器停止并退出
exit
3.3.2 容器不停止退出
快捷键 ctrl + P + Q
3.4 查看运行中的容器
docker ps
3.5 查看曾经运行过的容器
- 列出当前正在运行的容器 + 带出历史运行过的容器
docker ps -a
3.6 显示最近创建的容器
- n=1 即显示最近创建的一个容器
sudo docker ps -a -n=?
sudo docker ps -a -n=1
3.7 查看曾经运行过的容器id
sudo docker ps -aq
3.8 删除容器
3.8.1 删除一个没有运行的容器
sudo docker rm 容器id
3.8.2 删除一个运行中的容器
sudo docker rm -f 容器id
3.8.3 删除所有容器
docker rm -f $(docker ps -aq)
docker ps -a -q|xargs docker rm
3.9 启动和停止容器
docker start 容器id # 启动容器
docker restart 容器id # 重启容器
docker stop 容器id # 停止当前正在运行的容器
docker kill 容器id # 强制停止当前容器
4.常用其他命令
4.1 后台启动容器
- 要特别注意:启动后会发现查看运行中的容器发现并没有,但是查看曾经启动
过的容器时,却有,说明确实时启动过,只不过停止了 - 这种情况是,docker 容器使用后台运行,就必须要有一个前台进程,docker
发现没有应用,就会停止
docker run -d 镜像名
4.2 查看日志
- 查看某个运行中的容器的最近的10条日志
docker logs -tf --tail 10 容器id
- -t 日志加时间, -f 保留打印窗口,持续打印,–tail 10 显示最后的10行
- -tf 显示日志
- tail number 要显示日志的条数
4.3 查看容器中的进程信息
docker top 容器id
4.4 查看镜像的元数据
docker inspect 容器id
4.5 进入当前正在运行的容器
我们通常容器都是使用后台方式运行的,需要进入容器,修改一些配置
- 方式一
docker exec it 容器id /bin/bash
- 方式二
docker attach 容器id
exec和attach区别
- exec是进入容器后开启一个新的终端,可以在里面操作(常用)
- attach是进入容器正在执行的终端
4.6 从容器内拷贝文件到主机上
- 拷贝时,只要容器还在哪怕没有运行也可以拷贝
docker cp 容器id:容器内路径 目的主机路径
# 将容器中python文件夹下的test.py拷贝到 主机上的home文件夹下
docker cp 3a5f401a1fb5:/python/test.py /home
4.7 没有设置开机自启,重新启动docker
systemctl daemon-reload
systemctl restart docker.service
5. 命令小结