docker image/registry


  • docker build
    • 基于Dockerfile,creates a Docker image
    • 使用-t选项,为新创建的image,添加一个tag,作为句柄来引用
    • Where is your built image?
      •  It’s in your machine’s local Docker image registry
      • 使用docker images查看
  • docker run
    • 指定image name,启动Container
    • port map(端口映射)
      • 使用-p os_port:container_port  选项map a port of container to a port of OS
        • 当使用 EXPOSE port within the Dockerfile,才需要
  • docker container stop
    • 关闭Container


  • 注意:官网例子 运行出错。。问题可能出来python和pip的版本上。
    • 所以修改Dockerfile,将python:2.7-slim 修改为python:3.4,问题解决



  • DockerHub机制
    • 类似GitHub机制,实现push image 、pull  image
    • 从而可以像git可以get code anywhere一样,让已定制好的app 可以 run anywhere
  • A registry is a collection of repositories, 
    • and a repository is a collection of images
    • —sort of like a GitHub repository,
  • 使用国内 registry-mirror 
    • 鉴于DockerHub服务位于国外,以及GFW的原因,
      • 必须使用Docker国内的Registry服务
    • 使用网易云 Docker Registry 
      • 类似于git.oschina.net的代码托管服务。
      • 网易云Docker Registry,提供镜像托管服务。
      • 可以直接搜索使用公有镜像,也可以自定义私有镜像,并push托管。
      • 登录网易云Docker Registry
        • docker login -u {你的网易云邮箱账号或手机号码} -p {你的网易云密码} hub.c.163.com
      • 注意: 使用加速器将会提升您在国内获取Docker官方镜像的速度!
        • 但是使用网易云的Docker Registry,就不需要了
  • 推送本地镜像到远程Docker Registry
    • 登录远程Docker Registry
      • docker login
    • 标记本地镜像
      • docker tag    {镜像名或ID}    [registry_server]/{repository名}[:tag]
      • 使用tag,常用于,将本地镜像命名为特定远程镜像名,从而发布出去(Publish/push)
    • 推送至远程Docker Registry
      • docker push  [registry_server]/{repository名}[:tag]

  • 完整镜像名  [registry_server]/{repository名}[:tag]
    • 多个镜像名可以指向一个物理镜像(Image ID)
    • registry_server缺省,则默认是Docker Public Registry Server(docker.io)
      • 猜测端口应该是约定的
    • 如果repository路径只有一级,例如hello-world,则默认补全为library/hello-world
      • 通常repository由两级构成【username/repository】
    • tag缺省,默认为latest
      • 远程Registry中,相应tag不存在则新建,存在则覆盖
    • 在本地运行docker命令,指定镜像名时,
      • 如果没有,会补全为完整镜像名,去远程获取

  • 删除镜像:
    • docker rmi 或者docker image rm
    • 指定镜像名并且其Image ID下还存在其他镜像名时
      • 仅仅untagged 该镜像名。。实际的物理镜像并未删除


  • 通常,一个image,专用于一个app的构建
    • 一个repository,专用于一个app的不同版本的构建(tag代表版本)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值