docker基础命令

docker官网:https://docs.docker.com/
docker 菜鸟教程:https://www.runoob.com/docker/docker-tutorial.html

docker run
docker run -d -i -t <image ID> /bin/bash
docker启动容器
-a: 指定标准输出输入内容类型
-d: 后台运行容器并返回容器id
-i: 交互式运行容器,与-t同时使用
-P: 随机端口映射,容器内部端口随机映射到主机端口,如:如:docker run -it -d nginx:latest -p 81:80 /bin/bash
-p: 指定端口映射,格式:主机(宿主机):容器端口,如:docker run -it -d nginx:latest -p 81:80 /bin/bash
-t: 为容器重新分配伪输入终端,与-i同时适应
--name=”nginx-test”:为容器指定一个名称,如:docker run -it -d --name apache apache:latest
-h “test”:指定容器主机名
-e username=”ritchie”:设置环境变量
--env-file=[]:从指定文件读入环境变量
-m:设置容器使用内存最大值
-c:调整同期使用的spu权重
--net=bridge:指定容器的网络连接类型,支持:bridge/host/none/container
--link=[]:添加链接到另一个容器
--expose=[]:开放一个端口或一组端口
-v:绑定数据卷,格式:/宿主机目录:/容器目录,如:docker run -it -d -v /data:/tmp apache:latest /bin/bash

docker start/stop/restart
docker start:启动一个或多个已经停止的容器
docker stop:停止正在运行的容器
docker restart:重新启动一个容器

docker kill
docker kill:杀掉运行中的容器
docker kill -s KILL nginx
停止正在运行的所有容器:docker kill $(sudo docker ps -q)
清理批量后台停止的容器:docker kill $sudo docker ps -a -q

docker rm
-f:通过sigkill信号强制删除一个运行中的容器,如:docker rmi -f nginx
-l:移除容器间的网络连接而不是容器本身,如移除容器nginx01对容器Apache1的连接,连接名na:docker rmi -l na
-v:删除与容器相关的卷,如删除容器nginx并删除容器挂载的数据卷:docker rmi -v data
删除所有停止的容器:docker rmi $(sudo docker ps -a -q)

docker pause/unpause
pause:暂停容器中所有进程,如暂停数据库容器:docker pause db01
unpause:恢复数据库容器db01提供服务:docker unpause db01
docker create
创建一个新的容器但是不启动它
使用docker镜像nginx:latest创建一个容器,并命名为mynginx
docker create --name mynginx nginx:latest 

docker exec
在运行中的容器执行命令
-d:分离模式在后台运行
-i:保持stdin打开
-t:分配一个伪终端
在nginx容器中执行容器内的/root/bak.sh
docker exec -it nginx /bin/sh /root/bak.sh
在nginx容器中开启一个交互模式的终端
docker exec -it nginx /bin/bash

docker ps
-a:显示所有的容器,如:docker ps -a
-f:根据条件过滤显示的内容
--format:指定返回值的模板文件
-l:显示最近创建的容器
-n:列出最近创建的n个容器,如显示最近创建的4个容器:docker ps -n 4
-q:只显示容器编号,如列出所有创建的容器id:docker ps -a -q
-s:显示总的文件大小

docker inspect
获取容器/镜像的元数据,docker insepct nginx
-f:指定返回值的模板文件
-s:显示总文件大小
--type:为指定类型返回json
获取正在运行的nginx容器ip
 docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mymysql

docker top
查看容器内进程信息
docker top nginx
列出所有运行容器的进程信息
for i in  `docker ps |grep Up|awk '{print $1}'`;do echo \ &&docker top $i; done

docker attach
连接到正在运行的容器

docker logs
获取容器日志
-f:跟踪日志输出,如:docker logs -f nginx
-t:显示时间
--tail:仅列出最新N条容器日志
--since:显示某个开始时间的所有日志,如:docker logs --since=”2021-03-31” --tail=10 nginx

docker export
将系统文件作为一个tar归档文件导出到stdout
-o:将输出写到文件
将id为a32h90的容器按日期保存为tar文件
docker export -o nginx-`date +%Y%m%d`.tar a32h90

docker port
查看容器端口映射情况
docker port nginx

docker cp
用于容器与主机之间的数据拷贝
-L:保持源目标中的链接
将主机/www/data目录拷贝都容器96ahdh78的/www目录下
docker cp /www/data 96ahdh78:/www/
将主机/www/data目录拷贝都容器96ahdh78中,并重命名为www
docker cp /www/data/ 96ahdh78:/www
将容器96ahdh78的/www目录拷贝到主机/data目录
docker cp 96ahdh78:/www /tmp/

docker diff
检查容器文件结构更改
docker diff mysql

docker images
列出本地镜像
-a:列出所有镜像,docker images -a
--digests:显示镜像摘要信息
-f:显示满足条件的镜像
--format:指定返回值的模板文件
--no-trunc:显示完整镜像信息
-q:只显示镜像id

docker tag
标记本地镜像
将ubuntu:15.10标记为root/ubuntu:v1
docker tag ubuntu:15.10 root/ubuntu:v1
docker images root/ubuntu:v1
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值