【镜像制作】docker命令的参数解释及用法

news/2024/6/26 20:58:16

文章目录

      • 简介
      • 一.docker参数详解
        • 1.1 用法:docker[OPTIONS]COMMAND
        • 1.2 管理命令:
        • 1.3 Swarm命令:
        • 1.4 命令:
        • 1.5全局选项:
      • 二.容器操作相关
        • 2.1.查看容器列表
        • 2.2.启动容器
        • 2.3.停止容器
        • 2.4.强制停止容器
        • 2.5.重启容器
        • 2.6.查看容器内进程
        • 2.7.查看容器内细节
        • 2.8.创建容器
        • 2.9.删除容器
        • 2.10.在容器中执行命令
        • 2.11.进入容器终端
        • 2.12.查看容器日志
        • 2.13.从容器中拷贝文件出来
        • 2.14.启动时端口映射
        • 2.15.启动时目录映射
      • 三.镜像类操作
        • 3.1.查看镜像列表
        • 3.2.登录镜像仓库
        • 3.3.拉取镜像
        • 3.4.删除镜像
        • 3.5.重命名镜像名称
        • 3.6.构件镜像
        • 3.7.推送镜像
        • 3.8.文件打包成镜像
        • 3.9.将容器打包为镜像
        • 3.10.导出容器为tar文件
      • 四.docker容器网络模式
        • 4.1.列出网络
        • 4.2.创建网络
        • 4.3.删除网络
        • 4.4.列出网络
      • 五.数据卷操作
        • 5.1.创建数据卷
        • 5.1.查看数据卷列表
        • 5.1.查看数据卷信息
        • 5.1.删除数据卷
        • 数据卷的用法

简介

该文详细介绍了docker命令的一系列用法,对命中的各种参数进行解释,并通过一些实践来进行说明该命令的用法,可以复制对应的命令在docker环境下进行执行来辅助理解。

一.docker参数详解

1.1 用法:docker[OPTIONS]COMMAND

容器的自给自足的运行时
常用命令:

  • run: 从映像创建并运行新容器
  • exec: 在运行的容器中执行命令
  • ps: 列出容器
  • build: 从Dockerfile构建映像
  • pull: 从注册表下载图像
  • push: 将图像上载到注册表
  • images: 列出图像
  • login: 登录到注册表
  • logout: 从注册表注销
  • search: 搜索Docker Hub以获取图像
  • version: 显示Docker版本信息
  • info: 显示系统范围的信息
1.2 管理命令:
  • buider: 管理生成
  • buildx*: Docker buildx(Docker股份有限公司,版本0.11.2)
  • compose*: Docker compose(Docker股份有限公司v2.21.0)
  • container: 管理容器
  • context: 管理上下文
  • image: 管理图像
  • manifest: 管理Docker映像清单和清单列表
  • network: 管理网络
  • plugin: 管理插件
  • system: 管理Docker
  • trust: 对Docker映像的信任
  • volume: 管理卷
1.3 Swarm命令:
  • swarm: 管理swarm
1.4 命令:
  • attach: 将本地标准输入、输出和错误流附加到正在运行的容器
  • commit: 根据容器的更改创建新映像
  • cp: 在容器和本地文件系统之间复制文件/文件夹
  • create: 创建一个新容器
  • diff: 检查对容器文件系统上的文件或目录的更改
  • events: 从服务器获取实时事件
  • export: 将容器的文件系统导出为tar存档
  • history: 显示图像的历史记录
  • import: 从tarball导入内容以创建文件系统映像
  • inspect: 返回Docker对象的低级信息
  • kill: 杀死一个或多个正在运行的容器
  • load: 从tar存档或STDIN加载图像
  • logs: 获取容器的日志
  • pause: 暂停一个或多个容器中的所有进程
  • port: 列出容器的端口映射或特定映射
  • rename: 重命名容器
  • restart: 重新启动一个或多个容器
  • rm: 移除一个或多个容器
  • rmi: 删除一个或多个图像
  • save: 将一个或多个图像保存到tar存档(默认情况下流式传输到STDOUT)
  • start: 启动一个或多个停止的容器
  • stats: 显示容器资源使用情况统计信息的实时流
  • stop: 停止一个或多个正在运行的容器
  • tag: 创建引用SOURCE_IMAGE的标记TARGET_IMAGE
  • top: 显示容器的运行进程
  • unpause: 取消暂停一个或多个容器中的所有进程
  • update: 更新一个或多个容器的配置
  • wait: 阻止,直到一个或多个容器停止,然后打印它们的退出代码
1.5全局选项:
  • –config string: 客户端配置文件的位置(默认为“/root/.docker”)
  • -c、 --context string: 用于连接到守护进程的上下文的名称(覆盖DOCKER_HOST env var和使用“DOCKER context use”设置的默认上下文)
  • -D、 --debug: 启用调试模式
  • -H、 --host list: 要连接到的主机列表守护程序套接字
  • -l、 --log-level string: 设置日志级别(“debug”、“info”、“warn”、“error”、“fatal”)(默认为“info”)
  • –tls: 使用tls;由–tlsverify暗示
  • –tlscacert string: 仅由该CA签名的信任证书(默认为“/root/.docker/CA.pem”)
  • –tlscert string: TLS证书文件的路径(默认为“/root/.docker/cert.pem”)
  • –tlskey string: TLS密钥文件的路径(默认为“/root/.docker/key.pem”)
  • –tlsverify: 使用TLS并验证远程
  • -v、 --version: 打印版本信息并退出
    有关命令的详细信息,请运行“docker COMMAND–help”。
    有关如何使用Docker的更多帮助,请访问https://docs.docker.com/go/guides/

二.容器操作相关

将docker常规的操作命令及用法进行讲解

2.1.查看容器列表

docker ps -a
执行结果:

CONTAINER ID   IMAGE          COMMAND                   CREATED        STATUS                      PORTS      NAMES
839f9bd5740a   43c8f6906b1b   "/bin/sh"                 9 days ago     Exited (0) 9 days ago                  happy_lichterman
4dac51122f21   43c8f6906b1b   "/bin/sh"                 9 days ago     Exited (0) 9 days ago                  sleepy_bhabha
720c5afa8248   43c8f6906b1b   "-it /bin/sh"             9 days ago     Created                                admiring_ritchie
d0c00dd30afc   8820935a464f   "/bin/sh"                 2 weeks ago    Exited (0) 2 weeks ago                 jovial_moser
2.2.启动容器

docker start id 其中id是列表中的第一列的CONTAINER ID

2.3.停止容器

docker stop id

2.4.强制停止容器

docker kill id

2.5.重启容器

docker restart id

2.6.查看容器内进程

docker top id

2.7.查看容器内细节

docker inspect id

2.8.创建容器

启动容器镜像id为imageId的镜像 docker run -it imageId /bin/sh

2.9.删除容器

docker delete id 其中id是列表中的第一列的CONTAINER ID

2.10.在容器中执行命令

docker exec id ls / 进入容器执行命令,其中id是列表中的第一列的CONTAINER ID

2.11.进入容器终端

docker exec -it id /bin/sh

2.12.查看容器日志

docker logs id

2.13.从容器中拷贝文件出来

docker cp id:/data/run.sh . 将容器中的/data/run.sh 拷贝到宿主机的当前目录
执行结:

Successfully copied 4.1kB to /data/temp/.
2.14.启动时端口映射

docker run -p <宿主机端口>:<容器端口> <镜像名>
例如:docker run -p 8080:80 nginxdocker run -p 8080:80 imageId 指定镜像的id

2.15.启动时目录映射

docker run -v <宿主机路径>:<容器内路径> <镜像名>
例如:docker run -v /data/mydocker:/home/docker nginx:latest

三.镜像类操作

3.1.查看镜像列表

docker images
执行结果:

REPOSITORY                                                                             TAG                         IMAGE ID       CREATED         SIZE
trafficserver-centos7-9.2.4                                                            latest                      76d191993f97   7 weeks ago     325MB
dokken/centos-stream-9                                                                 latest                      e26a4cdff267   7 weeks ago     308MB
<none>                                                                                 <none>                      4b2e08a52e68   7 weeks ago     264MB
<none>                                                                                 <none>                      f1fd2d2c8aa2   7 weeks ago     264MB
curlimages/curl                                                                        latest                      79009b90fb07   2 months ago    17.3MB
nginx                                                                                  latest                      92b11f67642b   4 months ago    187MB
alpine                                                                                 latest                      05455a08881e   4 months ago    7.38MB
<none>                                                                                 <none>                      de8caae3faba   5 months ago    77.5MB
memcached                                                                              latest                      4c07fb6d4e0a   5 months ago    106MB
3.2.登录镜像仓库

以阿里云镜像仓库为例:sudo docker login --username=ops-admin@xxx pcxxx-registry.cn-shenzhen.cr.aliyuncs.com,然后再输入ops-admin帐号的密码。

3.3.拉取镜像

docker pull nginx:latest

3.4.删除镜像

docker rmi IMAGEID IMAGEID 为镜像的ID可以从docker images中的第一列获取

3.5.重命名镜像名称

docker tag 《源镜像ID》 《新的镜像名称:tag》
例如:docker tag 9901b5599ad2 node:latest

3.6.构件镜像

docker build -t pcxxx-registry.cn-shenzhen.cr.aliyuncs.com/public/nginx:latest . 注意后边有一个点,表示当前目录

3.7.推送镜像

docker push pcxxx-registry.cn-shenzhen.cr.aliyuncs.com/public/nginx:latest 将构建好的镜像推送到镜像仓库

3.8.文件打包成镜像

docker import /path/to/yourimage.tar my-image:tag 将/path/to/yourimage.tar的导入成my-image:tag的镜像

3.9.将容器打包为镜像

docker commit b111630b6567 pcxxx-registry.cn-shenzhen.cr.aliyuncs.com/public/nginx:latest 将容器ID:b111630b6567 打包成镜像

3.10.导出容器为tar文件

docker save -o myimage.tar <image-id> 将镜像导出为tar包

四.docker容器网络模式

4.1.列出网络

docker network ls

4.2.创建网络

docker network create --subnet "172.100.0.0/16" milvus 创建一个网络名称为milvus 并划分网段是172.100.0.0/16

4.3.删除网络

docker network rm milvus 删除网络milvus

4.4.列出网络

docker network ls

五.数据卷操作

5.1.创建数据卷

docker volume create mytest

5.1.查看数据卷列表

docker volume ls

5.1.查看数据卷信息

docker volume inspect mytest
执行结果:

[
    {
        "CreatedAt": "2024-06-17T14:29:18+08:00",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/data/docker/volumes/mytest/_data",
        "Name": "mytest",
        "Options": null,
        "Scope": "local"
    }
]
5.1.删除数据卷

docker volume rm mytest

数据卷的用法

将创建的volume 故障到容器内
docker run -v mytest:/path/in/container imageId


http://lihuaxi.xjx100.cn/news/2218153.html

相关文章

cuda c programming guide - 编程接口

cuda c是对c的扩充&#xff0c;具体参考C Language Extensions。 cuda c编写的kernel需要使用nvcc进行编译。 运行时库需要使用cuda runtime&#xff0c;其提供了在host上执行的c/c函数&#xff0c;可用于allocate/deallcote device memory&#xff0c;transfer data between…

PLSQL、Oracle以及客户端远程连接服务器笔记(仅供参考)

1.PLSQL参考链接&#xff1a; 全网最全最细的PLSQL下载、安装、配置、使用指南、问题解答&#xff0c;相关问题已汇总-CSDN博客文章浏览阅读2.9w次&#xff0c;点赞98次&#xff0c;收藏447次。双击之后&#xff0c;这里选择安装目录&#xff0c;你安装目录选的哪里&#xff0…

如何利用被动DNS(Passive DNS)加强网络安全

通过收集和分析被动DNS数据&#xff0c;可以帮助识别恶意站点&#xff0c;打击钓鱼和恶意软件&#xff0c;本文将介绍如何利用被动DNS&#xff08;Passive DNS&#xff09;加强网络安全。 在过去的一些年里&#xff0c;我们目睹了对DNS基础设施的攻击日益增多&#xff1a;对权…

吴恩达2022机器学习专项课程C2W3:2.26 机器学习发展历程

目录 开发机器学习系统的过程开发机器学习案例1.问题描述2.创建监督学习算法3.解决问题4.小结 误差分析1.概述2.误差分析解决之前的问题3.小结 增加数据1.简述2.增加数据案例一3.增加数据案例二4.添加数据的技巧5.空白创建数据6.小结 迁移学习1.简述2.为什么迁移学习有作用3.小…

2024中国应急(消防)品牌巡展成都站成功召开!

汇聚品牌力量&#xff0c;共同相聚成都。6月14日&#xff0c;由中国安全产业协会指导&#xff0c;中国安全产业协会应急创新分会、应急救援产业网联合主办&#xff0c;四川省消防协会协办的“一切为了安全”2024年中国应急(消防)品牌巡展-成都站成功举办。该巡展旨在展示中国应…

ssm宠物网站系统-计算机毕业设计源码07183

摘 要 在信息飞速发展的今天&#xff0c;网络已成为人们重要的信息交流平台。宠物网站每天都有大量的信息需要通过网络发布&#xff0c;为此&#xff0c;本人开发了一个基于B/S&#xff08;浏览器/服务器&#xff09;模式的宠物网站系统。 该系统以JJava编程语言、MySQL和SSM框…

RedHat9 | Web服务配置与管理(Apache)

一、实验环境 1、Apache服务介绍 Apache服务&#xff0c;也称为Apache HTTP Server&#xff0c;是一个功能强大且广泛使用的Web服务器软件。 起源和背景 Apache起源于NCSA httpd服务器&#xff0c;经过多次修改和发展&#xff0c;逐渐成为世界上最流行的Web服务器软件之一。…

如何用Xcode创建你的第一个项目?学起来

前言 上一期&#xff0c;咱们已经有安装XCode的教程了。有小伙伴说建议跳过&#xff0c;嗯。。。如果你对开发很熟悉&#xff0c;那可以。但如果不熟悉&#xff0c;建议还是按照教程一步步来哦&#xff01; 毕竟统一了开发工具&#xff0c;咱们后续讲的内容学习起来也会简单一…