搭建Docker私有仓库Harbor安装
1. 官方仓库
# 拉取仓库镜像
docker pull registry
# 启动 挂载到指定目录 端口为5000
docker run -d -v /home/jack/docker/registry:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest
验证:
http://192.168.50.136:5000/v2/
2. Harbor 搭建
Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,harbor使用的是官方的docker registry(v2命名是distribution)服务去完成。harbor在docker distribution的基础上增加了一些安全、访问控制、管理的功能以满足企业对于镜像仓库的需求。
Harbor官方GitHub地址: https://github.com/goharbor/harbor/releases注意官方和Harbor不能同时使用
要求: docker(17.06.0+)
docker-compose(1.18.0+)
CentOS7安装Docker最新版本Docker Compose 安装使用教程
下载比较慢
迅雷云盘下载链接:https://pan.xunlei.com/s/VMYDvt-eONNav7-eabPPlt7fA1 提取码:upbm
# 解压
tar -xvf harbor-offline-installer-v2.2.1.tgz
# 进入解压的文件夹
cd harbor
# 修改配置名
mv harbor.yml.tmpl harbor.yml
vim harbor.yml
配置:
hostname 域名或IP
http
port 端口
https:没有的话需要注释掉,不然会启动报错
harbor_admin_password 后台密码
database
password 数据库密码
data_volume 数据所在目录
# 安装运行
./install.sh
# 停止harbor
docker-compose down -v
# 修改yml文件后需要重新加载
./prepare
# 重启harbor
docker-compose up -d
成功之后会加载一会…
3. Harbor界面操作
http://192.168.50.136:9090/ 用户名: admin
密码: 设置文件里面
# 登录远程仓库
docker login -u admin -p 密码 127.0.0.1:端口
# 从远程仓库拉取nginx镜像
docker pull nginx
# 添加标志
docker tag nginx:latest 127.0.0.1:端口/library/nginx:latest
# 上传到远程仓库
docker push 127.0.0.1:端口/library/nginx:latest
/home/jack/docker/data/registry/docker/registry/v2/repositories/
在你设置的数据所在目录可以看到对应的仓库
4. Harbor启动出错
✖ Need to install docker-compose(1.18.0+) by yourself first and run this script again.
需要安装docker-compose
ERROR: for registry Cannot create container for service registry: Conflict. The container name "/registry" is already in use by container "0d32ab64c757f53ef4efe16f0c1a4768b5c47a99a6397ecbd8b3d974d5918738". You have to remove (or rename) that container to be able to reuse that name.
unable to remove repository reference “registry” (must force) - container 0d32ab64c757 is using its referenced image ee34aa9d8ab2
# 列出所有镜像
docker images
# 停止容器
docker stop registry