docker 命令列表总结(参考官方)
以下命令总结,参考官网文档:https://docs.docker.com/get-started/
目录
1)入门
##列出Docker CLI命令
docker
docker container --help##显示Docker版本和信息
docker --version
docker version
docker info##执行Docker镜像
docker run hello-world##列出Docker镜像
docker image ls
##列出Docker容器(运行,全部,全部处于安静模式)
docker container ls
docker container ls --all
docker container ls -aq
2)docker 容器
使用Docker方式构建应用程序了。我们从这个应用程序层次结构的底部开始,这个页面包含一个容器。高于此级别的是一项服务,它定义了容器在生产中的行为方式。
docker build -t friendlyhello。 #使用此目录的Dockerfile创建映像
docker run -p 4000:80 friendlyhello #运行“friendlyhello”映射端口4000到80
docker run -d -p 4000:80 friendlyhello #相同的东西,但处于分离模式
docker container ls #列出所有正在运行的容器
docker container ls -a #列出所有容器,即使是那些没有运行的容器
docker container stop <hash> #优雅地停止指定的容器
docker container kill <hash> #强制关闭指定的容器
docker container rm <hash> #从此计算机中删除指定的容器
docker container rm $(docker container ls -a -q)#删除所有容器
docker image ls -a #列出本机上的所有图像
docker image rm <image id> #从本机删除指定的图像
docker image rm $(docker image ls -a -q)#从本机删除所有图像
docker login #使用Docker凭据登录此CLI会话
docker tag <image> username / repository:tag #Tag <image>,用于上传到注册表
docker push username / repository:tag #将标记的图像上传到注册表
docker run username / repository:tag #从注册表运行图像
3)服务
回顾一下,虽然键入docker run
简单,但生产中容器的真正实现是将其作为服务运行。服务在Compose文件中编码容器的行为,此文件可用于扩展,限制和重新部署我们的应用程序。服务的更改可以在运行时使用启动服务的相同命令来应用: docker stack deploy
。
在此阶段要探索的一些命令:
docker stack ls #列出堆栈或应用程序
docker stack deploy -c <composefile> <appname> #运行指定的Compose文件
docker service ls #列出与应用程序关联的运行服务
docker service ps <service> #列出与应用程序关联的任务
docker inspect <task or container> #Inspect任务或容器
docker container ls -q #列出容器ID
docker stack rm <appname> #删除应用程序
docker swarm leave --force #从管理器中删除单个节点群
4)群
将此应用程序部署到群集上,在多台计算机上运行它。多容器,多机应用程序通过连接多台机器到称为一个“Dockerized”簇成为可能群。设置一个swarm,它是一个运行Docker的机器集群,并为其部署了一个应用程序,其中容器在多台机器上协同运行。
了解Swarm集群
群集是一组运行Docker并加入群集的计算机。在此之后,您继续运行您习惯使用的Docker命令,但现在它们由群集管理器在群集上执行。群中的机器可以是物理的或虚拟的。加入群组后,它们被称为节点。
Swarm管理器可以使用多种策略来运行容器,例如“最节点的节点” - 它使用容器填充利用率最低的机器。或“全局”,它确保每台机器只获得指定容器的一个实例。您指示swarm管理器在Compose文件中使用这些策略,就像您已经使用的那样。
群集管理器是群中唯一可以执行命令的机器,或授权其他机器作为工作者加入群集。工人只是在那里提供能力,没有权力告诉任何其他机器它能做什么和不能做什么。
到目前为止,您一直在本地计算机上以单主机模式使用Docker。但Docker也可以切换到swarm模式,这就是使用群集的原因。立即启用群集模式使当前计算机成为群集管理器。从那时起,Docker就会运行您在管理的swarm上执行的命令,而不仅仅是在当前机器上。
docker-machine create --driver virtualbox myvm1 #创建一个VM(Mac,Win7,Linux)
docker-machine create -d hyperv --hyperv-virtual-switch“myswitch”myvm1#Win10
docker-machine env myvm1 #查看有关节点的基本信息
docker-machine ssh myvm1“docker node ls” #列出你群中的节点
docker-machine ssh myvm1“docker node inspect <node ID>” #检查节点
docker-machine ssh myvm1“docker swarm join-token -q worker” #查看连接令牌
docker-machine ssh myvm1 #打开与VM的SSH会话;输入“exit”结束
docker node ls #查看swarm中的节点(登录管理器时)
docker-machine ssh myvm2“docker swarm leave” #让工人离开群
docker-machine ssh myvm1“docker swarm leave -f” #Master master,kill swarm
docker-machine ls #list VMs,asterisk显示此shell正在与之通信的VM
docker-machine start myvm1 #启动当前未运行的虚拟机
docker-machine env myvm1 #show myvm1的环境变量和命令
eval $(docker-machine env myvm1) #Max命令将shell连接到myvm1&“C:\ Program Files \ Docker \ Docker \ Resources \ bin \ docker-machine.exe”env myvm1 | Invoke-Expression #Windows命令将shell连接到myvm1
docker stack deploy -c <file> <app> #deploy app;命令shell必须设置为与管理器(myvm1)通信,使用本地Compose文件
docker-machine scp docker-compose.yml myvm1:〜#将文件复制到node的home目录(仅当你使用ssh连接到manager并部署应用程序时才需要)
docker-machine ssh myvm1“docker stack deploy -c <file> <app>”#使用ssh部署应用程序(必须先将Compose文件复制到myvm1)
eval $(docker-machine env -u) #从VM断开shell,使用本机docker
docker-machine stop $(docker-machine ls -q) #停止所有正在运行的VM
docker-machine rm $(docker-machine ls -q) #删除所有虚拟机及其磁盘映像
希望对你有帮助。
文章来源: guo-pu.blog.csdn.net,作者:一颗小树x,版权归原作者所有,如需转载,请联系作者。
原文链接:guo-pu.blog.csdn.net/article/details/97615616
- 点赞
- 收藏
- 关注作者
评论(0)