千家信息网

docker使用技巧

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,01.安装Dockercurl -sSL https://get.docker.com/ | shcentos6 epelyum install -y docker-iocentos 7yum in
千家信息网最后更新 2026年10月31日docker使用技巧

01.安装Docker

curl -sSL https://get.docker.com/ | shcentos6 epelyum install -y  docker-iocentos 7yum install -y docker-engineservice docker startservice docker stopservice docker restart

02.查看Docker信息

docker info文件位置 /var/lib/docker

03.查找镜像

官方网站查找 https://hub.docker.com/docker search centos(镜像名称)--automated 自动化选项--no-trunc  显示完全ID-s          最低星级 25个结果

04.查看3星级的镜像

docker search -s 3 centos  

05.拉取镜像

docker pull <镜像名称>:<标签>docker pull  centos-a 所有镜像docker daemon启动参数 "--insecure-registry=0.0.0.0/0"

06.使用自定义镜像站点修改

/etc/default/dockerDOCKER_OPTS="--REGISTRY-MIRROR=https://www.daocloud.io"docker daemon启动参数 "--insecure-registry=0.0.0.0/0"

07.列出镜像

docker images-a         显示所有镜像 -f         过滤条件-no-trunc  显示完全ID -q         唯一ID

08.使用run创建容器

docker run <选项><镜像名称><要运行的文件>docker run  -dti -p 80:80 -v /root/data:/data hello:1.0 --name hello-nginxdocker run -d -p 8000:8000 --restart=always --name ngng -v /data/registry:/var/lib/registry registry:2后台运行容器 容器端口:宿主机端口 容器异常重新启动 启动容器名称 位置映射、宿主机位置:容器位置 镜像名称或者ID-d 后台运行-i(interactive)、-t(Pseudo-tty)运行Bash shell中进行输入输出--name 指定容器名称,若不指定则自动生成-p 主机端口与容器端口连接,并暴露到外部-v 主机/root/data目录连接到容器的/data目录

09.查看容器列表

docker ps-a 显示所有的容器

10.使用start命令启动容器

docker start <容器名称> 或 容器IDdocker start hello

11.重启容器

docker restart <容器名称> 或 容器IDdocker restart hello

12.使用attach命令连接容器

docker attach <容器名称> 或 容器IDdocker attach hello(NAMES)注意:     在Bash shell中输入 Ctrl + D 或者 exit,表示停止并退出docker容器。     若依次输入Ctrl + P、Ctrl + Q,则不会终止容器而只是推出。

13.使用exec命令从外部运行容器内的命令

docker exec <容器名称><命令><形式参数>docker exec -ti 容器IDdocker exec registry    ip add

14.停止容器

docker stop <容器名称> 或 容器IDdocker psdocker stop hello

15.删除容器

docker rm <容器名称> 或 容器IDdocker rm hellodocker ps -a

16.删除镜像

docker rmi <镜像名称>:<标签> 或 容器IDdocker rmi hello-f 强制删除 --no-trunc 删除没有标签的# 删除所有镜像docker rmi $(docker images -qa)

17.使用build命令创建镜像

docker build <选项>docker build --tag hello:1.0

18.使用cp复制文件

docker cp <容器名称>:<路径> <主机路径>
docker cp 2e52e426f849:/etc/hosts ./
docker cp fervent_lumiere:/etc/host.conf /opt/

19.使用history命令查看镜像历史

docker history <镜像名称>:<标签> 或 容器IDdocker history hello:1.0docker history tobegit3hub/seagull:latest

20.从容器的修改中创建镜像 commit

docker commit <选项> <容器名称> <镜像名称>:<标签>docker commit -a "chengfeng " -m "add hello.txt" fervent_lumiere tobegit3hub/seagull:latest

21.使用diff命令检查容器文件的修改

docker diff <容器名称> 或 容器IDdocker diff hello-nginxA 为添加的文件C 为修改的文件D 为删除的文件

22.命令查看inspect详细信息

docker inspect <镜像或者容器名称>docker inspect hello-nginx

23.拉取镜像到本地

docker tag <镜像名称>:<标签> /<镜像名称>:<标签>docker tag hello:1.0 localhost:5000/hello:1.0docker pull registry:latestdocker run -d -p 5000:5000 --name hello-registry -v /tmp/registry:/tmp/registry registry运行后,镜像文件存储到主机的/tmp/registry目录。

24.推送镜像

docker push /<镜像名称>:<标签>docker push localhost:5000/hello:1.0

25.删除标签

docker rmi /<镜像名称>:<标签>docker rmi dev.dockcloud.cn/busybox:0.1

26.查看日志

docker logs <容器名称或ID>

27.查看运行状态

docker stats <容器名称或ID>

28.查看top

docker top <容器名称或ID>

29.查看映射端口

docker port <容器名称或ID>

30.更新容器信息

docker update <容器名称或ID>

31.保存容器成tar文件

docker export <容器名称或ID>

32.将tar文件导入到镜像列表

docker import <容器名称或ID>

33.把容器保存成镜像

docker commit 运行中docker ID-a 添加作者-m 描述

34.将镜像保存成tar文件

docker save 镜像 ID# 保存镜像iddocker tag 56d3dc08212d registry.chinadaas.com/pubilc/elasticsearch:6.3.0# 保存标签docker save -o elastic.tar.gz registry.chinadaas.com/pubilc/elasticsearch:6.3.0

35.加载tar镜像文件

docker load 镜像 ID

36.外挂卷 volumes

docker run -dti -v /web-data:/tmp:ro --name data-container appdocker run -dti --volumes-from data-container --name web-container appsdocker run -dti --volumes-from data-container --name web2-container apps# -v 宿主机目录:容器目录

37.容器卷管理

容器卷 主机卷docker镜像通过docker build -t . 执行 dockerfile文件制作FROM centos:7RUN yum install -y epel-release && \    yum install -y nginx && \    yum clean allEXPOSE 80 443CMD ["nginx", "-g", "daemon off;"]容器卷FROM centos:7RUN yum install -y epel-release && \    yum install -y nginx && \    yum clean allEXPOSE 80 443VOLUME ["/usr/share/nginx/html"]CMD ["nginx", "-g", "daemon off;"]删除带容器卷的容器docker rm -f -v 容器ID

38.一次性删除所有的容器

docker rm $(docker ps -q -a) 

39.一次性删除所有的镜像

docker rmi $(docker images -q) 

40.删除停止的容器

docker rm $(docker ps -a -q -f status=exited)

41.删除没有标签的镜像

docker rmi -f $(docker images |grep "" | awk "{print \$3}")

42.配置docker-enter管理docker容器

在环境变量内添加cat >> /root/.bashrc << EOF# set docker-enteralias docker-pid="sudo docker inspect --format '{{.State.Pid}}'"alias docker-ip="sudo docker inspect --format '{{ .NetworkSettings.IPAddress }}'"function docker-enter() {if cpid=`docker-pid $1`;thensudo nsenter --target $cpid --mount --uts --ipc --net --pidfi}EOFsource  /root/.bashrc

43.主机卷

docker run -dti -p 80:80 --name app -v /web-data:/tmp appdocker run -dit -p 8080:80 --name apps -v /web-data:/tmp apps

44.备份数据

docker run --rm --volumes-from dbdata -v $(pwd):/backup centos tar cvf /backup/backup.tar /dbdata

45.数据恢复

docker run --rm --volumes-from dbdata2 -v $(pwd):/backup centos bash -c "cd /dbdata && tar xvf  /backup/backup.tar --strip 1"

46.container-none网络模式

docker run -dit --name busybox1 busybox:latest
docker run -dti --name busybox2 --net=container:busybox1 busybox sh

47. 连接容器

docker run -dti --name db mongo
docker run -dit --name web -p 80:80 --link db:db nginx

容器 镜像 文件 命令 运行 主机 目录 端口 位置 名称 标签 信息 宿主 宿主机 输入 一次性 参数 后台 数据 星级 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 精品咖啡豆 互联网新科技 互联网和科技创新 互联网金融与金融科技 互联网金融 科技创新 互联网科技的未来发展 互联网科技视频素材 左右互联网络科技 科技伦理 互联网公司 成都仁贤领冠互联网科技有限公司 福州新华互联网科技学校 知乎 现代互联网科技股 湖北码尼互联网科技有限公司电话 河南猎农互联网科技有限公司 广州燕处互联网科技有限公司 湖北辰鑫科技互联网 北京军民互联网科技公司 广西泛欧互联网科技有限公司 宁波允成互联网科技有限公司 科技发展第三阶段互联网时代 上海卓越科技互联网 互联网金融与金融科技 互联网科技英文 小马过河互联网科技 荆州市昕露互联网络科技有限公司 互联网方面的科技前沿 南通创西澳互联网科技有限公司 互联网科技年终奖 九思连强互联网电子科技有限公司 陕西九四连强互联网科技有限公司
0