zoukankan      html  css  js  c++  java
  • docker搭建私有仓库

    registry私有仓库

    下载docker-distribution软件包

    yum install epel-release
    yum install docker-distribution

    查看docker-distribution配置文件

    [root@localhost registry]# vim /etc/docker-distribution/registry/config.yml 
    version: 0.1                      #版本
    log:
      fields:
        service: registry                #服务名称
    storage:
        cache:
            layerinfo: inmemory
        filesystem:
            rootdirectory: /var/lib/registry      #镜像目录
    http:
        addr: :5000                    #docker-distribution监听的端口

    启动服务

    [root@localhost registry]# systemctl restart docker-distribution

    查看5000端口是否启动

    [root@localhost registry]# ss -tnl
    State       Recv-Q Send-Q              Local Address:Port                             Peer Address:Port              
    LISTEN      0      128                             *:111                                         *:*                  
    LISTEN      0      5                   192.168.122.1:53                                          *:*                  
    LISTEN      0      128                             *:22                                          *:*                  
    LISTEN      0      100                     127.0.0.1:25                                          *:*                  
    LISTEN      0      128                            :::5000                                       :::*                  
    LISTEN      0      128                            :::111                                        :::*                  
    LISTEN      0      128                            :::22                                         :::*                  
    LISTEN      0      100                           ::1:25                                         :::*   

    查看本地镜像

    [root@localhost registry]# docker images 
    REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE
    myos                         latest              c14c79e9da64        4 weeks ago         466MB
    centos                       latest              9f38484d220f        6 months ago        202MB

    现在我们把centos这个镜像打上标签并且推送到registry中

    [root@localhost registry]# docker tag centos 192.168.254.11:5000/centos:latest

    [root@localhost registry]# docker push
    192.168.254.11:5000/centos The push refers to repository [192.168.254.11:5000/centos] d69483a6face: Pushed latest: digest: sha256:ca58fe458b8d94bc6e3072f1cfbd334855858e05e1fd633aa07cf7f82b048e66 size: 529

    查看registry服务器

    [root@localhost repositories]# ls -ltr /var/lib/registry/docker/registry/v2/repositories
    total 0
    drwxr-xr-x. 5 root root 55 Sep 13 10:28 centos
    drwxr-xr-x. 5 root root 55 Sep 13 10:48 mysql

    镜像已经上传上来了,OK

    客户端

    如果客户端向拉取镜像需要在客户端编辑/etc/docker/daemon.json文件添加

    [root@slave yum.repos.d]# cat /etc/docker/daemon.json 
    {
        "registry-mirrors": ["https://l10nt4hq.mirror.aliyuncs.com"],
        "insecure-registries":["192.168.254.17:5000"]#写入register服务器的ip和端口号
    }

    然后在拉取镜像

    [root@slave yum.repos.d]# docker images 
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    [root@slave yum.repos.d]# docker pull 192.168.254.17:5000/busybox:latest 
    latest: Pulling from busybox
    bdbbaa22dec6: Pull complete 
    Digest: sha256:edafc0a0fb057813850d1ba44014914ca02d671ae247107ca70c94db686e7de6
    Status: Downloaded newer image for 192.168.254.17:5000/busybox:latest
    192.168.254.17:5000/busybox:latest
    [root@slave yum.repos.d]# docker images 
    REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
    192.168.254.17:5000/busybox   latest              6d5fcfe5ff17        6 weeks ago         1.22MB

    harbor私有仓库

    下载harbor包

    wget https://storage.googleapis.com/harbor-releases/release-1.4.0/harbor-offline-installer-v1.4.0.tgz

    解压包并进入目录

    tar -zxvf harbor-offline-installer-v1.4.0.tgz -C /usr/local/
    cd /usr/local/harbor

    编辑配置文件

    vim harbor.cfg 
       hostname = 192.168.254.13             #对外访问地址
       ui_url_protocol = http                #访问方式
       max_job_workers = 3                   #最大处理进程数
       customize_crt = on                    #是否要启动自定义证书,如果ui_url_protocol = http不生效,如果是https才会生效
      harbor_admin_password = Harbor12345 #admin用户的密码

    执行文件

    [root@master harbor]# ./install.sh
    note:容器名字不能有registry这个名字,否则脚本执行失败

    浏览器访问http://server_ip

    创建项目

     创建仓库

    修改访问地址

    [root@master harbor]# vim /etc/docker/daemon.json 
    {
        "registry-mirrors": ["https://l10nt4hq.mirror.aliyuncs.com"],
        "insecure-registries":["192.168.254.13"]
    }

    重启docker服务

    [root@master harbor]# service docker restart
    Redirecting to /bin/systemctl restart docker.service

    在linux下登录harbor

     查看现有的镜像

    [root@master harbor]# docker images 
    REPOSITORY                                                        TAG                 IMAGE ID            CREATED             SIZE
    registry.aliyuncs.com/google_containers/kube-proxy                v1.15.3             232b5c793146        3 weeks ago         82.4 MB
    registry.aliyuncs.com/google_containers/kube-apiserver            v1.15.3             5eb2d3fc7a44        3 weeks ago         207 MB
    registry.aliyuncs.com/google_containers/kube-scheduler            v1.15.3             703f9c69a5d5        3 weeks ago         81.1 MB
    registry.aliyuncs.com/google_containers/kube-controller-manager   v1.15.3             e77c31de5547        3 weeks ago         159 MB
    docker.io/mariadb                                                 latest              99c1098d5884        4 weeks ago         355 MB
    docker.io/mysql                                                   latest              62a9f311b99c        4 weeks ago         445 MB
    quay.io/coreos/flannel                                            v0.11.0-amd64       ff281650a721        7 months ago        52.6 MB
    registry.aliyuncs.com/google_containers/coredns                   1.3.1               eb516548c180        8 months ago        40.3 MB
    registry.aliyuncs.com/google_containers/etcd                      3.3.10              2c4adeb21b4f        9 months ago        258 MB
    vmware/clair-photon                                               v2.0.1-v1.4.0       a1df3526fe43        19 months ago       300 MB
    vmware/notary-server-photon                                       v0.5.1-v1.4.0       3edfddb8ece2        19 months ago       211 MB
    vmware/notary-signer-photon                                       v0.5.1-v1.4.0       cc70a05cdb6a        19 months ago       209 MB
    vmware/registry-photon                                            v2.6.2-v1.4.0       8920f621ddd1        19 months ago       198 MB
    vmware/nginx-photon                                               v1.4.0              20c8a01ac6ab        19 months ago       135 MB
    vmware/harbor-log                                                 v1.4.0              9e818c7a27ab        19 months ago       200 MB
    vmware/harbor-jobservice                                          v1.4.0              29c14d91b043        19 months ago       191 MB
    vmware/harbor-ui                                                  v1.4.0              6cb4318eda6a        19 months ago       210 MB
    vmware/harbor-adminserver                                         v1.4.0              8145970fa013        19 months ago       182 MB
    vmware/harbor-db                                                  v1.4.0              c38da34727f0        19 months ago       521 MB
    vmware/mariadb-photon                                             v1.4.0              8457013cf6e3        19 months ago       521 MB
    vmware/postgresql-photon                                          v1.4.0              59aa61520094        19 months ago       221 MB
    vmware/harbor-db-migrator                                         1.4                 7a4d871b612e        20 months ago       1.15 GB
    vmware/photon                                                     1.0                 9b411d78ad9e        20 months ago       130 MB
    registry.aliyuncs.com/google_containers/pause                     3.1                 da86e6ba6ca1        21 months ago       742 kB

    给要上传的包打标签

    [root@master harbor]# docker tag docker.io/mysql:latest 192.168.254.13/databases/mysql:v1

    上传镜像

    [root@master harbor]# docker push 192.168.254.13/databases/mysql:v1
    The push refers to a repository [192.168.254.13/databases/mysql]
    647229410363: Pushed 
    5b96d5043191: Pushed 
    79a46f1eb9d0: Pushed 
    bdebd19e878f: Pushed 
    995fa4bb8afe: Pushed 
    bb1ef34119b2: Pushed 
    65430c57aee2: Pushed 
    1dd5f3e365cf: Pushed 
    7f33ce1066af: Pushed 
    9f77b78f01a7: Pushed 
    f5741d086b76: Pushed 
    8fa655db5360: Pushed 
    v1: digest: sha256:f0392b61ae096aef93b25f4b88206d774d2de1a7e43a7780a59a0c319c540b79 size: 2828

    浏览器查看harbor

     已经上传成功,ok

    补充

    开启或关闭harbor:

    docker-compose up -d
    docker-compose stop
  • 相关阅读:
    第二十九天- socketserver模块 ftp上传
    第二十八天- tcp下的粘包和解决方案
    记录每次更新到仓库
    Python在自动化运维时经常会用到的方法
    运维新手们,别再问需不需要学PYTHON了!!!
    nagios监控系统搭建!!
    Nagios:企业级系统监控方案
    打造自己的Cacti模板
    Cacti插件
    Cacti脚本及模板
  • 原文地址:https://www.cnblogs.com/fengzi7314/p/11516468.html
Copyright © 2011-2022 走看看