二、Docker Image

1. Docker Image 概述

1.1. 什么是 Image

  • 文件和meta data的集合(root filesystem)
  • 分层的,并且每一层都可以添加改变删除文件,成为一个新的 image
  • 不同的image可以共享相同的layer
  • Image本身是read-only的

2. Image 的获取

  • Build from Dockerfile
  • Pull from Registry

3. Image 的发布

需要在 docker hub 上注册账号

3.1. 直接发布镜像

  • image 的名字 account_id/image_name
$ docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: 
Password: 
Login Succeeded
$ docker push ${image_name}:tag

3.2. 通过 Github/Bitbucket 发布

3.3. 搭建本地镜像仓库并发布

  • image 的名字 registry_host:port/image_name
$ docker run -d -p 5000:5000 --restart always --name registry registry:2
$ docker push ${image_name}:tag

tips: push 的时候报 registry 不可信任

  1. 将 registry 地址写入 daemon.json
$ echo "{ \"insecure-registries\": [\"registry_host:port\"] }" >/etc/docker/daemon.json
  1. 将添加 daemon.json 到 docker 的 runtime 中
$ vi /lib/systemd/system/docker.service

[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
Requires=docker-cleanup.timer
[Service]
Type=notify
NotifyAccess=main
EnvironmentFile=-/etc/docker/daemon.json
EnvironmentFile=-/run/containers/registries.conf
EnvironmentFile=-/etc/sysconfig/docker
… …

  1. 重启 docker 服务
$ systemctl restart docker

4. Image 相关命令

4.1. 查看 Images

$ docker image ls
$ docker images

4.2. 移除 Image

$ docker image rm ${image_id}
$ docker rmi ${image_id}

4.3. 查看 Image 分层

$ docker history ${image_id}

参考文档:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker Image的制作方法有以下两种:使用Docker Container Commit和使用Docker Image Build和Dockerfile制作。 如果使用Docker Image Build和Dockerfile制作Docker Image,可以按照以下步骤进行操作: 1. 首先,需要在hub.docker.com或cloud.docker.com注册一个账号,并使用`docker login`命令进行登录。 2. 然后,使用`docker image build`命令来构建Image文件。可以使用`-t`参数为Image文件标注用户名、仓库和版本号。例如:`docker image build -t [username]/[repository]:[tag] .`。这样,就会在本地构建一个带有指定用户名、仓库和版本号的Image文件。 3. 最后,使用`docker image push`命令将构建好的Image文件发布到仓库中,供其他人使用。例如:`docker image push [username]/[repository]:[tag]`。 另外,你还可以从Docker官方仓库(https://hub.docker.com/)中抓取Image文件到本地,使用`docker image pull`命令。例如:`docker image pull library/hello-world`。 运行Image文件时,可以使用`docker container run`命令来生成一个正在运行的容器实例。例如:`docker container run hello-world`。注意,运行完后,容器会自动停止,如果想要手动终止不会自动终止的容器,可以使用`docker container kill`命令。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Docker Image Build 和 Dockerfile 进行 Docker Image 制作详解(制作 Docker Image 方法之)、...](https://blog.csdn.net/weixin_44983653/article/details/103306038)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [docker的使用](https://blog.csdn.net/gghgrqw/article/details/109448394)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值