系统学习Docker 践行DevOps理念(2.8)

764 阅读1分钟

镜像的分布

docker hub

首先在终端中登陆账号(账号在docker hub里注册):

docker login

然后就是push自己的docker:

方法一:docker hub

Usage:  docker push [OPTIONS] NAME[:TAG]
例如:
docker push ouchaochao/hello-world:latest

这种方法不好的地方就是别人会担心你的docker里有病毒,所以一般使用方法二。

方法二:dockerfile

通过关联github和docker hub,我们只要在github上维护dockerfile就行了,docker hub会根据关联的dockerfile自动build好docker仓库。

下面讲解如何关联github和docker hub:

  1. 打开account setting:

    account setting

  2. 往下找到linked accounts,绑定github

    linked accounts

  3. 在github中新建dockerfile项目

    dockerfile

  4. 在docker hub中绑定github的dockerfile

    绑定

  5. 完成结果

    完成结果

搭建公司/自己的docker hub

docker hub 中搜索registry,linux系统中输入以下代码就完成了部署

docker run -d -p 5000:5000 --restart always --name registry registry:2

怎么push

  1. build的改变,把NAME部分换成ip地址,如
docker build -t 47.94.131.35:5000/hello-world . # 换成自己的ip
  1. 查看image
docker image ls
  1. 修改docker下的daemon.json文件,把服务器添加信任,然后点Apply & Restart

    修改docker下的daemon

  2. 接下来就是push

docker push 47.94.131.35:5000/hello-world
  1. 通过在网页打开以下网站查看是否上传成功
http://47.94.131.35:5000/v2/_catalog

成功的话会有以下输出:
// 20190812013314
// http://47.94.131.35:5000/v2/_catalog

{
  "repositories": [
    "hello-world"
  ]
}

备注

Registry Api 网站