😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD
如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。
😊 座右铭:不想当开发的测试,不是一个好测试✌️。
如果感觉博主的文章还不错的话,还请点赞、收藏哦!👍
咱们先用一张图总结 Docker 的命令(图片来源于《Docker入门技术与实战》)
如果你看到这张图云里雾里的,可以看下小编之前写的Docker 相关基础,先了解下大概。Docker技术相关支持。当然在本章中,也会详细的分享上述图的内容,让我们一起愉快的学习吧,已经了解过的也可以复习下,查漏补缺。
命令 | 说明 | 示例 |
---|---|---|
docker info | 可查看docker相关信息 | —— |
docker version | 输出Docker 的版本信息 | —— |
docker images | 列出本地主机已有镜像 | —— |
docker search 镜像名 | 搜索远端仓库中共享的镜像 | docker search mysql |
docker pull 镜像名 | 下载镜像 | docker pull ubuntu 或者docker pull ubuntu:14.04 |
docker run | 创建新容器 | docker run -t -i ubuntu /bin/bash |
docker tag | 为镜像添加标签 | docker tag jenkins:latest newjenkins |
docker inspect 镜像ID | 获取该镜像详细信息 | docker inspect db22c307da6d |
docker rmi 镜像ID/镜像标签 | 删除镜像 | docker rmi 1bf97600c6de |
docker rmi -f 镜像ID | 强制删除镜像 | docker rmi -f 1bf97600c6de |
docker rm 容器ID | 删除容器 | docker rm d6a007e33be8 |
docker exec | 在运行的容器内执行命令 | docker exec -it 容器ID /bin/bash |
docker build | 从一个Dockerfile创建一个镜像 | docker build -f sshdockerfile -t sshd:ubuntu3 . |
docker commit | 从一个容器的修改中创建一个新的镜像 | docker commit 容器ID 新镜像标签 |
docker create | 创建一个新容器,但并不运行它 | docker create -it imageID |
docker cp | 从容器中复制文件到宿主系统中 | docker cp 9b1daf16f889:/run.sh . |
docker diff | 检查一个容器文件系统的修改 | docker diff 容器ID |
docker export | 导出容器内容为一个tar包 | docker export test.tar |
docker save | 保存一个镜像为tar包文件 | docker save -o container-test.tar imageID |
docker import | 导入一个文件(tar)路径或目录来创建一个镜像 | docker import container-test.tar newimport |
docker load | 从一个tar包中加载一个镜像 | docker load --input container-test.tar |
docker history | 显示一个镜像的历史 | docker history imageID |
docker kill | 强制终止容器 | docker kill 容器ID |
docker logs | 获取容器的log信息 | docker logs 容器ID |
docker top | 查看一个容器中正在运行的进程信息 | docker top 容器ID |
docker pause | 暂停一个容器中的所有进程 | docker pause 容器ID |
docker unpause | 将一个容器内所有的进程从暂停状态中恢复 | docker unpause 容器ID |
docker wait | 阻塞直到一个容器终止,然后输出它的退出符 | docker wait 容器ID |
docker stop | 终止一个运行中的容器 | docker stop 容器ID |
docker start | 启动一个容器 | docker start 容器ID |
docker restart | 重启一个运行中的容器 | docker restart 容器ID |
docker ps | 列出容器 | docker ps 或者 docker ps -a |
docker push | 将一个镜像推送到一个Docker的注册服务器 | docker push test:latest |
docker port | 查找一个nat到一个私有网口的公共口 | docker port 容器ID |
docker login | 注册或登录到一个Docker的仓库服务器 | —— |
docker logout | 从Docker 的仓库服务器登出 | —— |
docker tag
docker tag
为镜像添加标签,例如我们有镜像jenkins:latest
,现在添加一个tag 名为 newjenkins
,所以命令如下:docker tag jenkins:latest newjenkins
使用docker images会看到新的标签image
docker inspect
docker inspect imageID
命令是获取该镜像的详细信息,会返回一个JSON格式的消息,如果只要其中一项内容时,可以使用-f
参数来指定。例如docker inspect -f {{".Metadata"}} db22c307da6d
docker commit
表示基于已有镜像的容器创建镜像,
例如我们现在有一个镜像,我们要启动镜像
➜ ~ docker run -it ubuntu:14.04 /bin/bash
root@efd8067600cd:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
root@efd8067600cd:/# mkdir test
root@efd8067600cd:/# exit
➜ ~ docker commit efd8067600cd newubuntu
sha256:598ce63cebaaacf2f0dd94ed1d1dd02e5933bc02bb6a22e06c164ff717357228
➜ ~ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
newubuntu latest 598ce63cebaa 6 seconds ago 197MB
docker commit
会返回新创建的镜像ID信息
docker save 与 docker import
docker save
保存一个镜像为tar包文件
docker import
导入一个镜像
镜像的载入也可以使用docker load
docker load --input container-test.tar
导出容器
docker export ce5 > test_run.tar
导入容器
docker import test_run.tar testrun
docker cp
docker cp 命令用于在本地主机和运行中的 Docker 容器之间复制文件或目录
docker cp <container_id>:<container_path> <host_path>
docker cp 9b1daf16f889:/run.sh .
docker create
docker create -it imageID
该命令会新建一个容器,新建的容器处于停止状态,可以使用docker start 容器ID
来启动
docker diff
docker diff 命令是用于查看容器内文件系统的更改
C:表示文件或目录发生了更改(Change)
A:表示Add
D:表示Delete
docker port
docker port命令是用于列出docker 容器的端口映射,比如
docker port 9f6db7ab7334
今天已经学的很多了,休息一下吧。
自己永远是自己的主角,不要总在别人的戏剧里充当着配角。