docker-docker命令参数
这里介绍一下docker常用的一些命令docker ps 容器列表 run 运行容器 -d守护进程运行(后台运行) -t 分配制个伪tty -i 开发输入-P 0.0.0.0:81:80映射容器内的端口到0.0.0.0的81端口 -a --attach=[]追加一个标准的输入输出 --net="bridge" 设置容器的网络模式< brige桥接模式 none无网络模式 container:<name|id> 复用另一个容器网络 host完全使用容器本地的网络 --network=my-bridge 给容器使用指定网络 -P 标志将容器中任何所需的网络端口映射到您的主机。 这使您可以查看Web应用程序。 --rm当容器退出以后自动删除容器的文件系统,除非匿名数据卷。 -m 512M 配置限制内存512M --restart=always 当容器退出时docker自动重启它 --restart=on-failure:10 当容器退出20次不再重启 --name=[容器名] 指定容器名 --blkio-weight 300 IO权重
attach后面加容器ID进入容器 exec 容器里面执行操作 pause 暂停容器内的所有进程 unpause 启动一个暂停的容器 inspect 查看容器配置信息 port查看容器的端口映射关系 logs -f 查看容器服务日志输出 top 查看容器内进程 stop礼貌停止容器 start启动一个已有的容器
下面使用实际执行为大家演示:
查看docker各个组件列表查看运行容器列表
1
2
3
4
5
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3bb54e0aabc8 redis "/bin/sh -c '/usr/..." 12 hours ago Up 12 hours 6379/tcp redis3.3.ixqiak9t5tw9ktuvsoyksj5nm
b37115d7d875 redis "/bin/sh -c '/usr/..." 13 hours ago Up 13 hours 6379/tcp redis3.1.w0jjjrdr25ehcorm3tkoxcrci
87f639892fcf redis "/bin/sh -c '/usr/..." 25 hours ago Up 25 hours 6379/tcp redis3.2.y2tpi5kpfz0v42ax28rucql2v
查看网络列表
1
2
3
4
5
6
[iyunv@salt-node1
.docker]# docker network ls
NETWORK ID NAME DRIVER SCOPE
b60c9e065473 bridge bridge local
a603808ad4ba host host local
48d3687c03f0 none null local
查看swarm service列表
1
2
3
# docker service ls
ID NAME MODE REPLICASIMAGE
ig4hg5e8233rredis3replicated5/5 registry.cn-hangzhou.aliyuncs.com/forker/redis:latest
查看swarm 节点列表
1
2
3
4
5
# docker node ls
ID HOSTNAME STATUSAVAILABILITYMANAGER STATUS
2pzv4kzc2p8f7c4wqlfupp9h9 *salt-node1Ready Active Leader
g36lvv23ypjd8v7ovlst2n3yt salt-node3Ready Active
h14re9viizbs5yj3zunuo9zo8 salt-node2Ready Active
查看容器映射的端口
1
2
3
4
[iyunv@saltstack-node2
etc]# docker port 0c3f9644bbde
80/tcp ->
0.0.0.0:81
查看容器日志输出
1
2
3
4
5
6
7
8
9
10
11
12
[iyunv@saltstack-node2
etc]# docker logs -f 0c3f9644bbde
192.168.81.1 - -
"GET / HTTP/1.1" 200 612 "-"
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101
Firefox/41.0" "-"
[iyunv@saltstack-node2
etc]# docker top 0c3f9644bbde
UID PID PPID C STIME TTY TIME CMD
root 110825 107711 0 16:57 ? 00:00:00 nginx: master process nginx -g
daemon off;
104 110857 110825 0 16:57 ? 00:00:00 nginx: worker process
关闭容器
1
2
3
[iyunv@saltstack-node2
~]# docker stop 0c3f9644bbde
0c3f9644bbde
在容器内执行命令
1
2
docker exec -i
d2a6cd962775 /bin/sh
直接创建虚拟终端并接受标准输入
1
2
docker
run -i -t image_name
健康检测
1
2
3
4
5
6
7
8
$ docker run
--name=test -d \
--health-cmd='stat /etc/passwd ||
exit 1' \
--health-interval=2s \
busybox sleep 1d
$ sleep 2; docker inspect --format='{{.State.Health.Status}}' test
healthy
页:
[1]