配置 docker 使用 harbor 仓库上传下载镜像:
- 编辑 docker 配置文件:
注意:如果我们配置的是 https 的话,本地 docker 就不需要有任何操作就可以访问 harbor 了
vim /lib/systemd/system/docker.service
在ExecStart
追加
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.99.22
其中 192.168.99.22 是我们部署 Harbor 的地址,即 hostname 配置项值。配置完后需要重启 docker 服务。
- 重启 docker 服务:
systemctl daemon-reload
systemctl restart docker
- 验证能否登录 harbor:
docker login 192.168.99.22
如果这里突然遇到密码错误(确认不是忘记了密码),试试重启docker-compose
docker-compose stop
docker-compose start
- 导入镜像(可选)
docker load < /root/alpine.tar.gz
- 验证镜像导入成功(至少要有个镜像,没有的话按照上面导入)
docker images
- 镜像打 tag:
修改 images 的名称,不修改成指定格式无法将镜像上传到 harbor 仓库,格式为: HarborIP/项目名/image 名字:版本号:
docker tag alpine:latest 192.168.99.22/alpine/alpine:v1
- 查看镜像
docker images
-
在 harbor 管理界面创建项目(需要先创建项目再上传镜像)
-
将镜像 push 到 harbor:
格式为: docker push 镜像名:版本
docker push 192.168.99.22/alpine/alpine:v1
-
push 完成
-
harbor 界面验证镜像上传成功
-
验证镜像信息
从 harbor 下载镜像并启动容器:
- 更改 docker 配置文件:
目前凡是需要从 harbor 镜像服务器下载 image 的 docker 服务都要更改,不更改的话无法下载:
sudo vim /lib/systemd/system/docker.service
在ExecStart
追加
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.99.22
其中 192.168.99.22 是我们部署 Harbor 的地址,即 hostname 配置项值。配置完后需要重启 docker 服务。
- 重启 docker:
systemctl daemon-reload
systemctl restart docker
-
查看下载命令:
-
执行下载:
docker pull 192.168.99.22/alpine/alpine:v1
- 验证镜像下载完成
docker images
- 启动容器:
docker run -it 192.168.99.22/alpine/alpine:v1 sh
- 成功启动