1.1 安装Docker
$ wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
$ yum -y install docker-ce-18.06.1.ce-3.el7
$ systemctl enable docker && systemctl start docker
$ docker --version
Docker version 18.06.1-ce, build e68fc7a
配置Docker加速器
# cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF
1.2 安装docker-componse
$ curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
$ ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
$ docker-compose --version
docker-compose version 1.24.1, build 1110ad01
1.3 安装harbor
$ wget -c https://storage.googleapis.com/harbor-releases/release-1.8.0/harbor-offline-installer-v1.8.2-rc1.tgz
$ tar zxvf harbor-offline-installer-v1.8.2-rc1.tgz
$ cd harbor
配置harbor.yml
$ vim harbor.yml
hostname: #IP地址或域名
http:
port: 80
https:
port: 443
certificate: xxx
private_key: xxx
harbor_admin_password: xxxxx # Web端admin用户密码
database:
password: xxxx
data_volumn: /data
安装harbor
$ ./install.sh
1.4 访问harbor登录界面
1.5 harbor使用
Harbor启停:
方式一:
关闭harbor服务:docker-compose down -v
修改配置文件:vim harbor.yml
重新生成配置文件:./prepare或者或者bash prepare
启动Harbor服务:docker-compose up -d
方式二:
修改配置文件:vim harbor.yml
重新生成配置文件:./prepare或者或者bash prepare
重启harbor:docker-compose down -v && docker-compose up -d
注意:如果更改了harbor.yml文件,必须要重新执行install脚本,或者执行./prepare脚本,生成新的配置文件;
常用debug方式:
docker info查看docker程序的配置信息
docker-compose ps:查看harbor相关的容器信息
Harbor测试:
登录仓库:docker login 127.0.0.1
用户:test01 / ******; admin/Harbor12345
镜像推送:docker push 192.168.1.8/library/IMAGE[:TAG]
Docker Registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误。为了解决这个问题需要在启动docke时增加启动参数为默认使用http访问。这个是在客户机的docker配置文件里添加的(即上传镜像到私有仓库里或从私有仓库下载镜像的客户机)。
[root@docker ~]# sed -i '/ExecStart/s/$/ --insecure-registry 192.168.1.8/' /usr/lib/systemd/system/docker.service
[root@docker ~]# systemctl daemon-reload && systemctl enable docker && systemctl start docker