Docker使用Harbor的API

注: Harbor镜像仓库地址:192.168.1.136

获取项目信息

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/projects/2"

获取所有项目信息

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/projects?"

搜索镜像

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/search?q=asset"

删除项目

curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "http://192.168.1.136/api/projects/3"

创建项目

curl -u "admin:Harbor12345" -X POST -H "Content-Type: application/json" "http://192.168.1.136/api/projects" -d @createproject.json

createproject.json为文件名,文件内容参考createproject.json

#### 0为私有

{

    "project_name": "项目名",

    "public": 0

}

创建用户

curl -u "admin:Harbor12345" -X POST -H "Content-Type: application/json" "http://192.168.1.136/api/users" -d @user.json

文件内容参考user.json

{

    "user_id": 5,

    "username": "test",

    "email": "test@qq.com",

    "password": "Harbor12345",

    "realname": "test",

    "role_id": 0

}

获取用户信息

除admin外

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/users"

查看当前用户信息

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/users/current"

删除用户,3是用户user_id

curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "http://192.168.1.136/api/users/34"

修改用户密码

curl -u "admin:Harbor12345" -X PUT -H "Content-Type: application/json" "http://192.168.1.136/api/users/4/password" -d @uppwd.json

查看项目相关角色

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/projects/2/members/"

项目添加角色

curl -u "jaymarco:Harbor123456" -X POST -H "Content-Type: application/json" "http://192.168.1.136/api/projects/2/members/" -d @role.json

查看镜像

curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/repositories?project_id=2&q=镜像名"

删除镜像

curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "http://192.168.1.136/api/repositories/marktrace%2Fasset/tags/latest"

获取镜像标签

curl -s -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "http://192.168.1.136/api/repositories/marktrace%2Fasset/tags/" |grep "digest" -C 2 |grep ""name""

Last updated