| 运行容器 | 启动参数 启动脚本 例3 |
| 查看运行容器 | 例1 |
| 删除容器 | 例2 |
| 更新容器 | 例5 |
| 修改时区 | 例10 |
| 重启容器 | 例6 |
| 执行命令 | 例7 |
| 进入容器 | 例8 |
| 查看启动参数 | 例9 |
| 选项简写 | 选项 | 说明 |
|---|---|---|
| -d | –detach | 在后台运行容器,并且打印容器id。 |
| -i | –interactive | 即使没有连接,也要保持标准输入保持打开状态,一般与 -t 连用。 |
| -t | –tty | 分配一个伪tty,一般与 -i 连用。 |
| –restart | 指定容器停止后的重启策略 --restart=always 把Docker容器设置为开机自动启动 | |
| –name | 指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字 | |
| -e | –env=[] | 指定环境变量,容器中可以使用该环境变量 -e LC_ALL=C.utf8 指定系统编码 |
| -p | 指定端口映射,格式为:主机(宿主)端口:容器端口 | |
| -v | –volume=[] | 把数据文件挂载到宿主机的路径 |
| -l | –label list | 在容器上设置元数据 |
| -m | –memory | 指定容器的内存上限,例如 100M, 2G。 |
| –memory-swap | 设置 内存+swap 的使用限额 | |
| -c | –cpu-shares=0 | 设置容器CPU权重,在CPU共享场景使用 |
| -h | –hostname=“” | 指定容器的主机名 |
| –net | 容器网络设置 | |
| –privileged=false | 指定容器是否为特权容器,特权容器拥有所有的capabilities | |
| –rm | 容器停止后自动删除容器 | |
| -P | 随机端口映射,容器内部端口随机映射到主机的端口 | |
| –link=[] | 指定容器间的关联,使用其他容器的IP、env等信息 |
- 使用镜像创建一个容器,该镜像必须与 Docker 宿主机系统架构一致,例如x86_64 架构的系统中只能使用x86_64的镜像创建容器。
bash的docker启动脚本
#!/bin/bash container="dbtool" image="registry.cn-hangzhou.aliyuncs.com/xxx/beta:dbtool" echo "停止容器 $container..." docker container stop $(docker container ls -q --filter name=^$container$) echo "删除容器 $container..." docker rm $container echo "删除镜像 $image..." docker rmi $image echo "拉取镜像 $image..." docker pull $image docker run -itd --name $container -p 44360:80 --restart=always $image例1
查看运行容器
docker ps
运行结果
- –format参数可以实现格式化输出自定义列
docker ps --format "table {{.ID}}t{{.Names}}t{{.Ports}}t{{.Status}}"
例2
指定id或名称删除
docker rm
删除所有容器
docker rm -f $(docker ps -aq)例3
启动tomcat
docker run -it -p 8888:8080 tomcat例4
复制文件到容器
docker ps -a
docker inspect -f '{{.ID}}' store-dev
docker cp 文件全路径 容器长ID:文件全路径例5
设置容器为开机自启
docker update --restart=always 容器名例6
docker restart admin-mongo例7
有后台的centos容器在运行,在不进入centos情况下执行centos的命令
docker exec -t 5bb87e918b0e ls -l /etc例8
docker exec -it 容器ID /bin/bash例9
查看运行容器的docker run启动参数
yum install -y python-pip
pip install runlike
runlike -p <容器名>|<容器ID>例10
有时需要查看容器中的日志,但是日志的时间和宿主机不在同一个时区,查看不方便,需要修改时区
容器启动参数中添加环境变量
-e TZ=Asia/Shanghai
将宿主机上的/etc/timezone和/etc/localtime挂载到容器中,这样可以保持容器和宿主机时区和时间一致。
我用的书:《第一本Docker书》 https://gitee.com/sheng_wei_zhang/auto_upload_video_to_jinritoutiao



