一:Registry私服(docker官方在Docker hub上提供了registry的镜像)

1:在需要部署私服的liunx上编写docker-compose.yml文件(docker的私服名为registry)

  • version: '3'
    services:
      registry:
        image: registry
        restart: always
        container_name: registry
        ports:
          - '5000:5000'
        volumes:
          - /usr/local/docker/registry/data:/var/lib/registry
        #配置web查看器视图显示docker的registry私服
      frontend:
        image: konradkleine/docker-registry-frontend:v2
        restart: always
        ports:
          - '8080:80'
        environment:
          - ENV_DOCKER_REGISTRY_HOST=192.168.31.147
          - ENV_DOCKER_REGISTRY_PORT=5000

2:打开私服registry

通过api打开

 通过frontend的web打开

3:配置在需要上传镜像到私服的服务器

方法一:在需要上传镜像到私服的的服务器上的 /etc/docker/daemon.json  文件中加入上传私服的配置文件

  • "insecure-registries": [
  •       "私服IP:5000"
  •   ]

方法二:修改docker启动文件 /etc/systemd/system/multi-user.target.wants/docker.service

  • 找到ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
  • 修改成ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 私服IP:5000 --containerd=/run/containerd/containerd.sock

4:重启一下docker

  • systemctl restart docker(service docker restart

5:检测一下是否配置成功

  • docker info

 6:上传镜像

  • 先从官方下拉镜像:docekr pull nginx
  • 为镜像定义标签(tag):docker tag nginx 192.168.31.147:5000/nginx:521
  • 上传镜像:docker push 192.168.31.147:5000/nginx:521

一:Harbor私服(Harbor仓库是VMware公司开源的容器镜像仓库, Harbor是在Docker Registry上进行了相应拓展, 而此得到更广泛的应用,。添加的拓展包括:WebGUI页面、RABC角色访问控制、AD/LDAP集成以及审计日志,足以满足基本企业需求)

 1:Harbor组件

    组件                      功能                      
harbor-adminserver         配置管理中心                  
harbor-db                  MySQL数据库                
harbor-jobservice          负责镜像复制                  
harbor-log                 记录操作日志                  
harbor-UI                  Web管理页面和API             
nginx                      前端代理, 负责前端页面和镜像的上传/下载/转发
redis                      会话                      
registry                   镜像             

2:安装最新harbor

[root@harbor ~]# wget https://github.com/goharbor/harbor/releases/download/v2.1.0/harbor-offline-installer-v2.1.0.tgz
[root@harbor ~]# tar xf harbor-offline-installer-v2.1.0.tgz -C /home/
修改配置文件,将hostname改为ip地址,关闭https功能
[root@harbor ~]# cd /home/harbor/
[root@harbor harbor]# cp harbor.yml.tmpl harbor.yml
[root@harbor harbor]# vi harbor.yml
修改harbor.yml,修改的内容:

hostname:改成主机ip

http.port:默认将占用80端口。 https:如果要启动https还需要配置ssl证书。

harbor_admin_password:harbor管理员密码。默认harbor_admin_password: Harbor12345。

database.password:数据库密码,默认password: root123。

data_volume:数据存放目录,默认/data。

3:安装

[root@localhost harbor]#  ./prepare
[root@localhost harbor]#  ./install.sh

 4:服务管理

[root@localhost harbor]#  docker-compose up -d 启动
[root@localhost harbor]#  docker-compose stop 停止
[root@localhost harbor]#  docker-compose restart 重新启动

5:访问web页面

浏览器输入 http://IP
用户名:admin
密码:Harbor12345

 6:Harbor使用

方法二:修改docker启动文件 /etc/systemd/system/multi-user.target.wants/docker.service

  • 创建用户
  • 创建项目
  • 创建仓库
  • 创建复制规则
  • 配置在需要上传镜像到私服的服务器

    方法一:在需要上传镜像到私服的的服务器上的 /etc/docker/daemon.json  文件中加入上传私服的配置文件

  • "insecure-registries": [
  •       "私服IP:端口号"
  •   ]

       方法二:修改docker启动文件 /etc/systemd/system/multi-user.target.wants/docker.service

  • 找到ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
  • 修改成ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 私服IP:端口号 --containerd=/run/containerd/containerd.sock

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐