前言:搭建私有docker仓库,方便部署扩展我们服务...
⚠️必须安装docker(1.10+)和docker-compose(1.6+)
⚠️示例Harbor版本(1.6.0 online)
1.安装harbor
2.推送、下载镜像
1.安装Harbor
1.1下载软件包
# 下载
[root@iZwz data]#wget https://storage.googleapis.com/harbor-releases/release-1.6.0/harbor-online-installer-v1.6.0.tgz
# 解压
[root@iZwz data]#tar -C ./ -zxvf harbor-online-installer-v1.6.0.tgz
1.2 修改配置文件
1.2.1 修改docker-compose.yml
- 1.将所有目录挂载在当前目录(在前面加.即可,这里只有一个示例,其他的注意加上!)
- 2.修改80端口(由于主机80、443端口被占用,必须修改)
....
proxy:
image: goharbor/nginx-photon:v1.6.0
container_name: nginx
restart: always
volumes:
- ./common/config/nginx:/etc/nginx:z
networks:
- harbor
ports:
- 1180:80
- 11443:443
- 4443:4443
...
1.2.2 修改harbor.cfg
- 目标主机的主机名(修改为服务器ip即可,由于服务器80端口被占用,这里需要加端口)
# 只修改这一个
hostname = 120.79.10.51:1180
1.2.3 执行安装脚本
[root@iZwz harbor]#./install.sh
1.2.4 浏览器访问
地址:120.79.10.51:1180
账户密码:admin / Harbor123456 (在harbor.cfg中配置)
2.推送、下载镜像
2.1 在Harbor创建用户
这里创建了一个开发用户
2.2 创建测试仓库,并将开发用户pb加入其中
2.3 修改本地docker配置Daemon
由于docker 默认采用https,所以必须修改,应用并重启⚠️
2.4 对本地镜像打标签
# 本地已有golang镜像这里直接示例用
➜ docker tag golang:1.8 120.79.10.51:1180/test/golang:1.8
# 标签语法
# docker tag IMAGE[:TAG] [REGISTRY_HOST[:REGISTRY_PORT]/]REPOSITORY[:TAG]
2.5 推送到Harbor
# 使用开发用户账户登录
➜ docker login 120.79.10.51:1180
Username: pb
Password:
Login Succeeded
# 推送镜像到仓库
➜ docker push 120.79.10.51:1180/test/golang
The push refers to repository [120.79.10.51:1180/test/golang]
c90f249b07ff: Pushed
dcb909b41c27: Pushed
594ac8d42d93: Pushed
dba9965601d1: Pushed
d6335a641f5e: Pushed
5c33df241050: Pushed
ffc4c11463ee: Pushed
1.8: digest: sha256:89438d7037c6e6f16e323ef306903c74bdd667c60ec3c8113ef3fd244c6b09f2 size: 1793
2.6 查看Harbor镜像仓库
2.7 下载Harbor的镜像
➜ docker pull 120.79.10.51:1180/test/golang:1.8
总结
为下一步应用自动化打下基础,大家加油!