docker镜像私服部署—Docker Registry和Harbor
docker的私服
·
搭建 Docker 私有镜像仓库(私服)可以有效地管理和分发公司内部的 Docker 镜像,提升构建和部署效率。以下是搭建私有镜像仓库的步骤:
选择私有仓库工具(我选择的是Docker Registry和Harbor)
常见的 Docker 私有仓库工具包括:
-
Docker Registry:Docker 官方提供的基础镜像仓库,适用于简单的私有仓库需求。
-
Harbor:由 VMware 开发的企业级 Docker 镜像仓库,是在Docker Registry上进行了相应拓展,提供了安全、可信赖的镜像存储和管理功能,支持角色访问控制、镜像复制、镜像签名、漏洞扫描、AD/LDAP集成以及审计日志等特性。
-
Nexus Repository Manager:主要用于构建和管理 Java 组件,但也可以用作 Docker 私有仓库,具有强大的存储管理和权限控制功能。点击查看部署教程
一、Docker Registry 部署安装步骤
1.定义持久化数据卷
mkdir -p /usr/local/docker/registry/data
cd /usr/local/docker/registry
touch docker-compose.yml
2.编辑docker-compose.yml
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=<你的ip>
- ENV_DOCKER_REGISTRY_PORT=5000
3.启动容器
docker-compose down && docker-compose up -d
4.浏览器打开私服registry
- 通过api打开:http://你的ip:5000/v2/nginx/tags/list
- 通过frontend的web打开:http://你的ip:8080/tag/
5.配置 Docker 客户端
为了让 Docker 客户端能够与私有仓库通信,需要在客户端配置仓库地址:
1.编辑 Docker 配置文件:
-
方法一:在
/etc/docker/daemon.json
中添加私有仓库地址:{ "insecure-registries": ["<私有仓库地址>: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
-
重启 Docker 服务:
systemctl restart docker(service docker restart)
-
检测一下是否配置成功
docker info
2.镜像操作
- 标记镜像:
docker tag <本地镜像>:<标签> <私有仓库地址>:5000/<镜像名>:<标签>
-
推送镜像:
docker push <私有仓库地址>:5000/<镜像名>:<标签>
-
拉取镜像:
docker pull <私有仓库地址>:5000/<镜像名>:<标签>
二、Harbor私服部署安装步骤
1:Harbor组件介绍
组件 功能
harbor-adminserver 配置管理中心
harbor-db MySQL数据库
harbor-jobservice 负责镜像复制
harbor-log 记录操作日志
harbor-UI Web管理页面和API
nginx 前端代理, 负责前端页面和镜像的上传/下载/转发
redis 会话
registry 镜像
2:下载 Harbor 安装包:
wget https://github.com/goharbor/harbor/releases/download/v2.1.0/harbor-offline-installer-v2.1.0.tgz
mkdir -p /home/harbor/
tar xf harbor-offline-installer-v2.1.0.tgz -C /home/
cd /home/harbor/
cp harbor.yml.tmpl harbor.yml
3:配置 Harbor(目录/home/harbor/):
编辑 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。
4:安装
[root@localhost harbor]# ./prepare
[root@localhost harbor]# ./install.sh
5:服务管理
[root@localhost harbor]# docker-compose up -d 启动
[root@localhost harbor]# docker-compose stop 停止
[root@localhost harbor]# docker-compose restart 重新启动
6:访问web页面
浏览器输入 http://IP
用户名:admin
密码(默认):Harbor12345
7:Harbor使用
- 创建用户
- 创建项目
- 创建仓库
- 创建复制规则
8:配置docker客户端(和上面的Docker Registry一样,这里就不写了)
9:镜像操作(和上面的Docker Registry一样,这里就不写了),下面给个执行完的界面试例
总结
提示:根据实际需求安装对应的仓库
更多推荐
所有评论(0)