docker 容器常用命令

---------  启动容器常用选项及用法 --------

docker run 常用选项及用法

如前边所说,容器是由镜像启动的

下面以 grafana/grafana:5.4.3 镜像为例 ,镜像 ID 是 088a3a431574 :

直接启动容器,并执行 bash shell(要想进入容器,必须要指定要执行的命令,只有 bash 可以进入容器),下面这种方式一般用来检查自己制作的镜像各项设置是否有问题。这样启动容器,退出后容器就会死掉,并且无法启动。

docker run -ti grafana/grafana:5.4.3 bash

后台启动容器(使用 -d 选项),并挂载目录或文件到容器中(使用 -v 选项,前边是宿主机路径,后边是容器路径)

docker run -d -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

上边的启动方式再增加个 容器开机启动 (--restart=always)

docker run -d --restart=always -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

上边的启动方式再增加个 指定容器名称 ( --name=grafana)

docker run -d --name=grafana --restart=always -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

上边的启动方式再增加个 限制容器内存使用 ( -m 4096m)

docker run -d  --name=grafana --restart=always -m 4096m -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

上边的启动方式再增加个 将容器中服务端口映射到宿主机 (-p 3000:3000 ,前边是宿主机端口,后边是容器端口)

docker run -d --name=grafana --restart=always -m 4096m -p 3000:3000 -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

上边的启动方式再增加个 在容器中加入环境变量 (-e STATUS=0)

docker run -d --name=grafana --restart=always -e STATUS=0 -m 4096m -p 3000:3000 -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

添加容器hosts记录

docker run -d --name=grafana --restart=always --add-host hbasemaster81:192.168.2.81 --add-host hbasemaster82:192.168.2.82 -e STATUS=0 -m 4096m -p 3000:3000 -v /opt/grafana/data/grafana:/var/lib/grafana grafana/grafana:5.4.3

可以将上边的命令在启动脚本中写成这样的格式

cat > start_grafana.sh << EOF
#!/bin/bash
docker stop `docker ps -a |awk '/grafana/{print $1}'`
docker rm `docker ps -a |awk '/grafana/{print $1}'`

docker run -d \
   --name=grafana \
   --restart=always \
   -p 3000:3000 \
   -m 4096m \
   -v /opt/grafana/data/grafana:/var/lib/grafana \
   grafana/grafana:5.4.3
EOF

 

-------------------------------------------------------------------------

对容器的操作常用的命令,-a 会列出各种状态的所有容器

docker ps -a

列出启动容器的 详细信息

docker inspect  containerID

登录到容器中

docker exec -ti containerID bash

docker exec -ti 088a3a431574 bash  

不登录到容器中执行容器中的命令

docker exec -ti containerID ls /

docker exec -ti 088a3a431574 ls /

停止 、 启动 、 删除(只能删除已经停止的容器) 一个容器

docker stop containerID ​​​​​​

docker start containerID ​​​​​​

docker rm containerID ​​​​​​

docker stop 088a3a431574 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值