前言
主要讲解得是jenkins打包后,制作镜像,上传到harbor中可视化管理,docker自带的私有仓库没有可视化,管理起来不方便
环境
主机中已经部署过了jenkins,docker等,部署方式附上链接Centos7 部署Jenkins
部署主机ip 192.168.10.159
部署流程
- 使用pip方式部署
#如果没有pip,请下载 yum install python-pip -y
yum install epel-release -y
yum install python3 -y
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
pip3 install -U -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose
- 下载harbor
githup 源码地址
wget https://download.yzuu.cf/goharbor/harbor/releases/download/v2.6.0/harbor-offline-installer-v2.6.0.tgz
tar zxvf harbor-offline-installer-v2.6.0.tgz -C /data/
- 修改配置文件
只需修改以下几点就可以了
vim /data/harbor/harbor.yml
#主机地址,要写绝对ip,不能是localhoust,或127.0.0.1之类的
hostname: 192.168.10.159
#要开放的端口
port: 5000
#------------这部分注释--------------不用外网
#https:
# port: 443
# certificate: /your/certificate/path
# private_key: /your/private/key/path
# 启动Harbor后,web管理员的密码,默认是:Harbor12345
harbor_admin_password: admin
# Harbor 内置数据库配置
# 默认密码为:root123
password: root
# 数据存储目录
data_volume: /data/harbor/data/
# 日志信息配置
log:
level: info
local:
rotate_count: 50
rotate_size: 200M
# 指定日志存储目录
location: /data/harbor/harbor.log
- 添加私有仓库地址
因为我这里已经添加过了docker的国内镜像地址,在这基础上在添加个私有仓库地址
vim /etc/docker/daemon.json
#注意添加多条地址,使用逗号结尾,192.168.10.159:5000就是我的私有仓库地址
{
"registry-mirrors": ["https://mpmmtjzh.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.10.159:5000"]
}
systemctl restart docker
- 根据新配置文件重新生成docker-compose文件及harbor镜像
cd /data/harbor/
./prepare
./install.sh
- harbor的基础操作
#停止
docker-compose stop
#运行
docker-compose start
#开放端口
firewall-cmd --zone=public --add-port=5000/tcp --permanent
firewall-cmd --reload
systemctl 托管
vim /usr/lib/systemd/system/harbor.service
[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor
[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/docker-compose -f /data/harbor/docker-compose.yml up
ExecStop =/usr/local/bin/docker-compose -f /data/harbor/docker-compose.yml down
[Install]
WantedBy=multi-user.target
systemctl enable harbor.service
systemctl stop harbor.service
systemctl start harbor.service
systemctl status harbor.service
结言
现在就可以访问harbor web了,http://192.168.10.159:5000/
注意要点
如果在另一台服务器要访问harbor的时候,需要添加harbor私有地址,vim /etc/docker/daemon.json
vim /etc/docker/daemon.json
#注意添加多条地址,使用逗号结尾,192.168.10.159:5000就是我的私有仓库地址
{
"registry-mirrors": ["https://mpmmtjzh.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.10.159:5000"]
}
systemctl restart docker
使用基础命令
首先在web中创建一个test项目,意思上传的镜像,可以放到这个项目中,好区分,比如说开发环境啊,测试环境啊等等
- 制作符合harbor仓库的镜像
- 上传镜像
上传前需要先登入harbor,后再上传镜像
docker login -u admin -p admin 192.168.10.159:5000
docker push 192.168.10.159:5000/test/java:007
- 下载镜像
docker pull 192.168.10.159:5000/test/java:007
本章到此结束,web可以很方便的管理镜像增删操作,后续继续更新关于jenkins文章