Docker Command 本文共有5826个字,关键词: 1. 显示 Docker 版本信息:docker version 2. 显示 Docker 系统信息,包括镜像和容器数:docker info 镜像改名: docker tag IMAGEID(镜像id) REPOSITORY:TAG(仓库:标签) 查看指定容器的IP信息 docker inspect -f {{.NetworkSettings.IPAddress}} Container_name 3. 从 Docker Hub 中搜索符合条件的镜像: docker search docker search [options "o">] term docker search -s django --automated 只列出 automated build类型的镜像; --no-trunc 可显示完整的镜像描述; -s 40 列出收藏数不小于40的镜像。 4. 从 Docker Hub 中拉取或者更新指定镜像: docker pull docker pull [-a "o">] [user/ "o">]name[:tag "o">] docker pull laozhu/telescope:latest -a 拉取所有 tagged 镜像 。 5. 按步骤输入在 Docker Hub 注册的用户名、密码和邮箱即可完成登录docker login root@moon:~# docker login Username: username Password: **** Email: user@domain.com Login Succeeded 6. 运行后从指定服务器登出,默认为官方服务器: docker logout 7. 列出本地所有镜像。其中 [name] 对镜像名称进行关键词查询: docker images docker images [options "o">] [name] -a 列出所有镜像(含过程镜像); -f 过滤镜像,如: -f ['dangling=true'] 只列出满足dangling=true 条件的镜像; --no-trunc 可显示完整的镜像ID; -q 仅列出镜像ID。 --tree 以树状结构列出镜像的所有提交历史。 8. 列出所有运行中容器: docker ps -a 列出所有容器(含沉睡镜像); --before="nginx" 列出在某一容器之前创建的容器,接受容器名称和ID作为参数; --since="nginx" 列出在某一容器之后创建的容器,接受容器名称和ID作为参数; -f [exited=] 列出满足exited= 条件的容器; -l 仅列出最新创建的一个容器; --no-trunc 显示完整的容器ID; -n=4 列出最近创建的4个容器; -q 仅列出容器ID; -s 显示容器大小。 9. 从本地移除一个或多个指定的镜像: docker rmi docker rmi [options "o">] "o">[image...] docker rmi nginx:latest postgres:latest python:latest -f 强行移除该镜像,即使其正被使用; --no-prune 不移除该镜像的过程镜像,默认移除。 10. 移除容器: docker rm docker rm [options "o">] "o">[container...] docker rm nginx-01 nginx-02 db-01 db-02 sudo docker rm -l /webapp/redis -f 强行移除该容器,即使其正在运行; -l 移除容器间的网络连接,而非容器本身; -v 移除与容器关联的空间。 11. 查看指定镜像的创建历史 docker history docker history "o">[options] --no-trunc 显示完整的提交记录; -q 仅列出提交记录ID。 12. 启动、停止和重启一个或多个指定容器 docker start|stop|restart docker start|stop "p">|restart [options "o">] "o">[container...] -a 待完成 -i 启动一个容器并进入交互模式; -t 10 停止或者重启容器的超时时间(秒),超时后系统将杀死进程。 13. 杀死一个或多个指定容器进程: docker kill docker kill "o">[options "o">] "o">[container...] -s "KILL" 自定义发送至容器的信号。 14. 从服务器拉取个人动态,可选择时间区间 docker events docker events [options "o">] docker events --since= "s2">"20141020" docker events --until= "s2">"20120310" 15. 将指定镜像保存成 tar 归档文件, docker load 的逆操作。保存后再加载(saved-loaded)的镜像不会丢失提交历史和层,可以回滚: docker save docker save -i "debian.tar" docker save > "debian.tar" -o "debian.tar" 指定保存的镜像归档。 16. 从 tar 镜像归档中载入镜像, docker save 的逆操作。保存后再加载(saved-loaded)的镜像不会丢失提交历史和层,可以回滚: docker load docker load [options] docker load < debian.tar docker load -i "debian.tar" -i "debian.tar" 指定载入的镜像归档。 17. 将指定的容器保存成 tar 归档文件, docker import 的逆操作。导出后导入(exported-imported))的容器会丢失所有的提交历史,无法回滚: docker export docker export docker export nginx-01 > export.tar 18. 从归档文件(支持远程文件)创建一个镜像, export 的逆操作,可为导入镜像打上标签。导出后导入(exported-imported))的容器会丢失所有的提交历史,无法回滚: docker import docker import url|- "o">[repository[:tag "o">]] cat export.tar "p">| docker import - imported-nginx:latest docker import http://example.com/export.tar 19. 查看一个正在运行容器进程,支持 ps 命令参数: docker top docker top "o">[ps options] 20. 检查镜像或者容器的参数,默认返回 JSON 格式: docker inspect docker instpect nginx:latest docker inspect nginx-container -f 指定返回值的模板文件。 21. 暂停某一容器的所有进程: docker pause 22. 恢复某一容器的所有进程: docker unpause docker unpause 23. 恢复某一容器的所有进程: docker tag docker tag [options "o">] [:tag "o">] [repository/ "o">][username/]name "o">[:tag] -f 覆盖已有标记。 24. 将镜像推送至远程仓库,默认为 Docker Hub: docker push docker push name[:tag "o">] docker push laozhu/nginx:latest 25. 获取容器运行时的输出日志: docker logs docker logs [options "o">] docker logs -f -t --tail= "s2">"10" insane_babbage -f 跟踪容器日志的最近更新; -t 显示容器日志的时间戳; --tail="10" 仅列出最新10条容器日志。 26. 启动一个容器,在其中运行指定命令: docker run docker run [options "o">] [ "nb">command] "o">[arg...] -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项; -d: 后台运行容器,并返回容器ID; -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -i: 以交互模式运行容器,通常与 -t 同时使用; -P: 随机端口映射,容器内部端口随机映射到主机的高端口 -p: 指定端口映射,格式为:主机(宿主)端口:容器端口 -v: 指定目录映射,格式为:主机(宿主)目录:容器目录,若目录不存在会自动创建目录 --name="nginx-lb": 为容器指定一个名称; --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致; --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致; -h "mars": 指定容器的hostname; -e username="ritchie": 设置环境变量; --env-file=[]: 从指定文件读入环境变量; --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行; -m :设置容器使用内存最大值; --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型; --link=[]: 添加链接到另一个容器; --expose=[]: 开放一个端口或一组端口; 27. 获取容器内的IP docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}‘ 容器名称 28. docker inspect : 获取容器/镜像的元数据。 docker inspect [OPTIONS] NAME|ID [NAME|ID...] -f :指定返回值的模板文件。 -s :显示总的文件大小。 --type :为指定类型返回JSON。 28. docker宿主机上查找指定容器内运行的所有进程的PID Docker top 容器ID 29. 使用Dockerfile Build镜像时,优势会发现发送到Daemo的内容过大 发现Docker Client会默认发送Dockerfile同级目录下的所有文件到Dockerdaemon中。 解决办法有两种: 1. 使用.dockerignore文件,设置黑名单,该文件包含的目录不会被发送到Docker daemon中 2. 将Dockerfile迁移后其他目录中执行。 「一键投喂 软糖/蛋糕/布丁/牛奶/冰阔乐!」 赞赏 × 几人行 (๑>ڡ<)☆谢谢老板~ 2元 5元 10元 50元 100元 任意金额 2元 使用微信扫描二维码完成支付 版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。 Docker笔记 2019-04-13 评论 2131 次浏览