搭建好 Harbor 私有仓库后下面分享一下怎么使用。

1. 创建项目
Harbor的项目分为公开和私有的:
公开项目:所有用户都可以访问,通常存放公共的镜像,默认有一个library公开项目。
私有项目:只有授权用户才可以访问,通常存放项目本身的镜像。
我们可以为微服务项目创建一个新的项目:
2. 创建用户
3. 给私有项目分配用户
进入刚创建的项目->成员
角色
权限说明
访客
对于指定项目拥有只读权限
开发人员
对于指定项目拥有读写权限
维护人员
对于指定项目拥有读写权限,创建 Webhooks
项目管理员
除了读写权限,同时拥有用户管理/镜像扫描等管理权限
4. 以新用户登录Harbor
5. 制作并把镜像上传到Harbor
这里以一个Eureka服务为例
1. 上传Eureka的微服务jar包到linux
2. 编写Dockerfile
#FROM java:11
FROM openjdk:11-jdk
ARG JAR_FILE
COPY ${JAR_FILE} app.jar
EXPOSE 10086
ENTRYPOINT ["java","-jar","/app.jar"]
3. 把Harbor地址加入到Docker信任列表
vi /etc/docker/daemon.json
将Harbor地址加入到Docker信任列表
{
    "registry-mirrors": [" https://zydiol88.mirror.aliyuncs.com "],
    "insecure-registries": ["192.168.1.247:443"]
}
重启Docker
systemctl restart docker
4. 构建镜像
docker build --build-arg JAR_FILE=tensquare_eureka_server-1.0-SNAPSHOT.jar -t eureka:v1 
5. 查看镜像是否创建成功
docker images
6. 给镜像打上标签
docker tag eureka:v1 192.168.1.247:443 /tensquare/eureka:v1
这里harbor服务器地址是192.168.1.247端口为443
7. 登录 Harbor
docker login -u 用户名 -p 密码 192.168.1.247:443
8. 执行上传tag打包后的镜像命令
docker push    REPOSITORY    ###   push 格式
docker push     192.168.1.247:443/tensquare/eureka:v1
6.远程机器使用Harbor下载镜像
1. 远程机器也需安装Docker,并启动
systemctl status docker
2. 把Harbor地址加入到Docker信任列表
vi /etc/docker/daemon.json
写入如下配置
{
    "registry-mirrors": [" https://zydiol88.mirror.aliyuncs.com "],
    "insecure-registries": ["192.168.1.247:443"]
}
重启docker
systemctl restart docker
3. 先登录,再从Harbor下载镜像
docker login -u 用户名 -p 密码 192.168.1.247:443
docker pull  仓库地址和镜像仓库里面的名称
192.168.1.247:443( 仓库地址 )   /tensquare/eureka:v1( 镜像仓库里面的名称
docker pull 192.168.1.247:443/tensquare/eureka:v1
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐