Docker镜像仓库自建仓库的必要性
- 默认第三方提供的镜像仓库在海外,例如https://hub.docker.com/
- 第三方镜像仓库一般不允许有太多的私有镜像
Harbor镜像仓库的搭建
- 需要安装docker ,参考链接https://www.cnblogs.com/faberbeta/p/12853704.html
- 需要有docker-compose ,参考链接https://www.cnblogs.com/faberbeta/p/12853753.html
Harbor离线版安装下载地址
- https://github.com/goharbor/harbor/releases
- 下载离线安装的版本,上传到服务器,解压
安装命令
- tar -zxf harbor-offline-installer-v1.8.0.tgz
- mv harbor /usr/local/
- harbor的配置文件是/usr/local/harbor/harbor.yml
harbor.yml上的主要内容
- hostname: reg.mydomain.com 默认主机名是reg.mydomain.com ,先修改主机名为自己的hostname或者域名
-
port: 80 默认端口是80,请根据自己的情况做修改
- harbor_admin_password: Harbor12345 #初始密码是Harbor12345,请把这个密码修改为你个人的
-
data_volume: /data #默认数据保存在/data目录
-
database: password: root123 #harbor的database的默认密码是root123,需要修改才可以在正式环境上线
- log 目录 /var/log/harbor
- hostname的证书,需要申请SSL证书,并且把证书放在某个目录
安装之前请确保,已经修改了harbor.yml
#安装Harbor,并验证
- ./install.sh
- docker-compose ps
- 用80端口访问服务器IP,也就是访问Harbor,默认用户名admin
Harbor的重启
- docker-compose down
- docker-compose up -d
登录镜像仓库
- 为了安全,建议关闭注册
Docker配置使用自建仓库
- 默认docker只允许访问https的仓库
- 需要自己额外配置开启http的仓库
配置允许访问http仓库/etc/docker/daemon.json
{ "registry-mirrors": ["http://hub-mirror.c.163.com/","http://192.168.237.50/"], "insecure-registries":["http://192.168.237.50"] }
推送镜像到自建仓库
- Harbor上创建一个项目centos7:nginx
- 需要先登录到Harbor: docker login 192.168.237.50
- docker tag shijiange:nginx 192.168.237.50/shijiange/shijiange:nginx
- docker push 172.18.119.61/shijiange/shijiange:nginx
从自建仓库中拉取镜像
- docker pull 192.168.237.50/shijiange/shijiange:nginx
- 拉取私有镜像需要先登录
- 例如docker login https://harbor.zhufunin.com/
Harbor重启镜像不会丢失
- docker-compose down
- docker-compose up -d