本文作为平时学习记录使用,如有错误,请大佬帮忙指正,谢谢。
简介
Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。
注:1.8之前的版本用起来比较麻烦,还要生成https证书,1.8直接拿过来就用,而且低版本的启动时候有几个容器一直在显示重启中,就先写一个高版本的安装。
流程
1. 安装前提
(1)高版本的docker
(2)安装docker-compose
第一种方式:
curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose
第二种方式:
手动下载上传--->赋权即可
链接:https://pan.baidu.com/s/1Vl9aYfk0MFeoAg8V8GGvZg
提取码:31kd
2.下载压缩包--->上传--->解压:
harbor官网:https://goharbor.io/
链接:https://pan.baidu.com/s/1_yxHqpyJ4Zper3KUxogE7w
提取码:h3no
3.配置harbor.yml
4. 安装
./prepare
./install.sh
如果出现问题:
原因分析:
关闭或者打开防火墙后,需要重启docker
重启docker服务:systemctl restart docker
5. 查看启动情况
docker-compose ps
6. 使用
6.1配置免https
方法一:修改 /etc/docker/daemon.json
# 加上 允许的仓库
{
"insecure-registries":[
"121.36.240.234:8021"
]
}
方法二: 修改 docker.service
cd /usr/lib/systemd/system
vi docker.service
# 修改 ExecStart,添加 --insecure-registry 参数
ExecStart=/usr/bin/dockerd --insecure-registry 192.168.180.105 -
6.2重启docker和harbor
# 重启docker
systemctl daemon-reload
systemctl restart docker.service
# 重启harbor仓库
# cd 到 harbor的安装目录
# 执行命令
docker-compose stop
docker-compose up -d
7. 访问
7.1 输入http://121.36.240.234:8021
7.2 登录
7.3 测试
7.3.1 新建项目
7.3.2 上传镜像到镜像仓库(以手动构建jar包为例)
(1)本地打jar包--->上传jar包
(2)编写Docker文件(同级目录下)
vi Dockerfile
FROM java:8
ADD ./jd-gui-1.4.0.jar project/jd-gui-1.4.0.jar
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/shanghai" >> /etc/timezone
EXPOSE 9001
ENTRYPOINT ["java","-jar","project/jd-gui-1.4.0.jar"]
(3)构建镜像
# jd-gui 镜像名 1.4.0 版本号 注意最后的 .(空格 .)
docker build -t jd-gui:1.4.0 .
#查看打好的镜像
docker images
#打tag包 --->push仓库
#121.36.240.234:8021是Harbor仓库地址,harbor-project-test是Harbor仓库下的项目名称
#jd-gui:1.4.0是推到项目上,该镜像的镜像名
docker tag jd-gui:1.4.0 121.36.240.234:8021/harbor-project-test/jd-gui:1.4.0
docker push 121.36.240.234:8021/harbor-project-test/jd-gui:1.4.0
(5)查看harbor仓库
上传成功。
(6)拉取镜像(直接pull即可)
参考