docker build -t friendlyname . # 使用当前目录下的内容创建Dockerfile镜像文件
docker run -p 4000:80 friendlyname # 运行名为“friendlyname”的镜像,并设置端口映射
docker run -d -p 4000:80 friendlyname # 后台运行容器
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 # 给镜像打标签
docker push username/repository:tag # 上传镜像到笔者个人仓库
docker run username/repository:tag # 运行指定镜像的指定版本
docker stack ls # 列出应用程序
docker stack deploy -c <composefile> <appname> # 运行制动的composefile
docker service ls # 列出与应用关联的正在运行的服务
docker service ps <service> # 列出与应用程序关联的任务
docker inspect <task or container> # 检查任务或容器状态
docker container ls -q # 列出容器ID
docker stack rm <appname> # 删除一个应用程序
docker swarm leave --force # 用swam管理下掉集群的一个节点
docker-machine create --driver virtualbox myvm1 # 在(Mac, Win7, Linux)创建一个VM
docker-machine create -d hyperv --hyperv-virtual-switch "myswitch" myvm1 # Win10
docker-machine env myvm1 # 查看有关节点的基本信息
docker-machine ssh myvm1 "docker node ls" # 列出swarm群中的节点
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" # 使worker脱离swarm
docker-machine ssh myvm1 "docker swarm leave -f" # 使master脱离swarm并杀掉swarm
docker-machine ls # 列出虚拟机,星号显示这个shell正在与哪个虚拟机通话
docker-machine start myvm1 # 启动一个当前没有运行的虚拟机
docker-machine env myvm1 # 显示myvm1的环境变量和命令
eval $(docker-machine env myvm1) # Mac命令将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> # 部署一个应用程序;命令shell必须设置为与管理器(myvm1)通信,使用本地Compose文件
docker-machine scp docker-compose.yml myvm1:~ # 将文件复制到节点的主目录(只有在使用ssh连接到管理器并部署应用程序时才需要
docker-machine ssh myvm1 "docker stack deploy -c <file> <app>" # 使用ssh部署应用程序(您必须首先将撰写文件复制到myvm1)
eval $(docker-machine env -u) # 断开与虚拟机的shell,使用本地docker
docker-machine stop $(docker-machine ls -q) # 停止所有运行的VM
docker-machine rm $(docker-machine ls -q) # 删除所有虚拟机及其磁盘映像