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. 構建鏡像
docker build --build-arg JAR_FILE=tensquare_eureka_server-1.0-SNAPSHOT.jar -t eureka:v1 .

4. 查看鏡像是否創建成功
docker images

5. 給鏡像打上標簽
docker tag eureka:v1 192.168.2.6:85/tensquare/eureka:v1
這里
harbor服務器地址是192.168.2.6和端口改為85
6. 把Harbor地址加入到Docker信任列表
vi /etc/docker/daemon.json
將Harbor地址加入到Docker信任列表
{
"registry-mirrors": ["https://zydiol88.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.2.6:85"]
}
重啟Docker
systemctl restart docker
7. 登錄 Harbor
docker login -u 用戶名 -p 密碼 192.168.2.6:85

8. 執行推送命令
docker push 192.168.2.6:85/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.2.6:85"]
}
重啟docker
systemctl restart docker
3. 先登錄,再從Harbor下載鏡像
docker login -u 用戶名 -p 密碼 192.168.2.6:85
docker pull 192.168.2.6:85/tensquare/eureka:v1


