千家信息网

Docker镜像仓库Harbor怎么用

发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,小编给大家分享一下Docker镜像仓库Harbor怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1 安装Docker
千家信息网最后更新 2025年02月04日Docker镜像仓库Harbor怎么用

小编给大家分享一下Docker镜像仓库Harbor怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1 安装Docker

cd /etc/yum.repos.dwget https://download.docker.com/linux/centos/docker-ce.repoyum install docker-ce -ysystemctl start dockersystemctl enable docker

2 安装 docker-compose

curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-composedocker-compose version

3 下载 Harbor 安装包

离线地址wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.4.tgz在线地址wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-online-installer-v1.7.4.tgz

解压:(使用离线包)

tar xf harbor-offline-installer-v1.7.4.tgz

4 自签证书

cd harbormkdir ssl  && cd ssl #存放证书使用openssl genrsa -out ca.key 4096openssl req -x509 -new -nodes -sha512 -days 3650 \    -subj "/C=CN/ST=PK/L=PK/O=example/OU=Personal/CN=fuck1899.com" \    -key ca.key \    -out ca.crtopenssl genrsa -out fuck1899.com.key 4096openssl req -sha512 -new \   -subj "/C=CN/ST=PK/L=PK/O=example/OU=Personal/CN=fuck1899.com" \   -key fuck1899.com.key \   -out fuck1899.com.csr cat > v3.ext <<-EOFauthorityKeyIdentifier=keyid,issuerbasicConstraints=CA:FALSEkeyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEnciphermentextendedKeyUsage = serverAuth subjectAltName = @alt_names[alt_names]DNS.1=fuck1899.comDNS.2=fuck1899.comDNS.3=hellozzEOFopenssl x509 -req -sha512 -days 3650 \   -extfile v3.ext \   -CA ca.crt -CAkey ca.key -CAcreateserial \   -in fuck1899.com.csr \   -out fuck1899.com.crtopenssl x509 -inform PEM -in fuck1899.com.crt -out fuck1899.com.cert修改配置文件vim harbor.cfg修改一下行hostname = fuck1899.comui_url_protocol = httpsssl_cert = ./ssl/fuck1899.com.crtssl_cert_key = ./ssl/fuck1899.com.key主意:如果不需要做自签证的证书只需要修改一下两个配置customize_crt = offhostname = fuck1899.com保存退出将证书文件拷贝到docker目录下使我们可以通过命令行提交镜像不受自签证书认证影响mkdir /etc/docker/certs.d/fuck1899.com -pcp ./ssl/fuck1899.com.cert /etc/docker/certs.d/fuck1899.com/cp ./ssl/fuck1899.com.key /etc/docker/certs.d/fuck1899.com/cp ./ssl/ca.crt /etc/docker/certs.d/fuck1899.com/如果是其他主机命令行提交或者登陆到这个harbor服务器,那么也需要将这个证书文件拷贝到自己主机/etc/docker/certs.d/fuck1899.com下 没有这个目录可以手动创建是配置生效./prepare

5 安装

./install.sh
[Step 3]: checking existing instance of Harbor ...Creating registry ... doneCreating harbor-core ... done[Step 4]: starting Harbor ...Creating harbor-portal ... doneCreating nginx ... doneCreating redis ... Creating harbor-adminserver ... Creating harbor-db ... Creating registryctl ... Creating registry ... Creating harbor-core ... Creating harbor-portal ... Creating harbor-jobservice ... Creating nginx ... ✔ ----Harbor has been installed and started successfully.----Now you should be able to visit the admin portal at https://fuck1899.com. For more details, please visit https://github.com/goharbor/harbor .

说明已经安装成功

通过docker-compose查看都运行了一些什么镜像

docker-compose ps       Name                     Command               State                       Ports                    -----------------------------------------------------------------------------------------------------------harbor-adminserver   /harbor/start.sh                 Up                                                   harbor-core          /harbor/start.sh                 Up                                                   harbor-db            /entrypoint.sh postgres          Up      5432/tcp                                     harbor-jobservice    /harbor/start.sh                 Up                                                   harbor-log           /bin/sh -c /usr/local/bin/ ...   Up      127.0.0.1:1514->10514/tcp                    harbor-portal        nginx -g daemon off;             Up      80/tcp                                       nginx                nginx -g daemon off;             Up      0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp,                                                              0.0.0.0:80->80/tcp                           redis                docker-entrypoint.sh redis ...   Up      6379/tcp                                     registry             /entrypoint.sh /etc/regist ...   Up      5000/tcp                                     registryctl          /harbor/start.sh                 Up

6 浏览器访问测试

访问签需要添加本机 host 文件,因为这个域名是不真实的

linux 添加hosts 文件

47.244.163.105  fuck1899.com

windows添加 hosts 文件

C:\Windows\System32\drivers\etc

编辑hosts 添加:

服务器IP   fuck1899.com

但是显示是不安全的

查看证书是否有我们颁发

上图显示证书有我们颁发

官方解释

请注意,即使我们通过自签名CA签署证书并将CA部署到上述位置,某些浏览器仍可能出于安全原因显示有关证书颁发机构(CA)未知的警告。这是因为自签名CA本质上不是受信任的第三方CA. 您可以自己将CA导入浏览器以解决警告。

7 登陆

默认密码为admin  Harbor12345如果你没有修改过的话

linux 端登陆使用

docker login yourdomain.com

windows直接打开地址

8 创建项目等

创建项目      1  公开      2 不公开创建用户用户关联项目      1 添加成员      2 角色授权

9 harbor 上传下载镜像

第一步登陆 输入用户名和密码

docker login fuck1899.com面交互方式登陆:docker login -u用户名 -p密码 镜像服务器

第二步 给镜像打tag

docker tag oddrationale/docker-shadowsocks fuck1899.com/sundezhao/ss:v1#oddrationale/docker-shadowsocks 需要大tag的镜像  #fuck1899.com  harbor服务器#sundezhao     项目名称#ss:v1         tag

第三步 push镜像

docker push fuck1899.com/sundezhao/ss:v1

第四步 查看已经push的镜像

第五步 pull 镜像

docker pull fuck1899.com/sundezhao/ss:v1

10 harbor自带的镜像扫描

1) 安装镜像扫描工具

# ./install.sh --with-clair

2)使用

3)后期维护

sudo docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml down -vvim harbor.cfgsudo prepare --with-clairsudo docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml up -d

以上是"Docker镜像仓库Harbor怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0