centos 安装 harbor

机器: centos 7.8

Harbor是镜像仓库,镜像的存储harbor使用的是官方的docker registry服务去完成,至于registry是用本地存储或者s3都是可以的,harbor的功能是在此之上提供用户权限管理、镜像复制等功能,提高使用的registry的效率。

镜像的复制,harbor不是直接复制,harbor采用通过docker registry 的API去拷贝,这不是省事,这种做法屏蔽了繁琐的底层文件操作、不仅可以利用现有docker registry功能不必重复造轮子,而且可以解决冲突和一致性的问题。

1. 安装docker 

[root@ilaus harbor]# curl -sSL https://get.daocloud.io/docker | sh

安装 Docker Engine-Community 

# Docker 设置仓库
[root@ilaus harbor]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 设置稳定的仓库
[root@ilaus harbor]# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装 Docker Engine-Community
[root@ilaus harbor]# sudo yum install docker-ce docker-ce-cli containerd.io

# 启动 Docker
[root@ilaus harbor]# sudo systemctl start docker

# Docker Compose 安装
[root@ilaus harbor]# sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# github 安装太慢, 换成 daocloud
[root@ilaus harbor]# sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

# 给 docker-compose 修改权限
[root@ilaus harbor]# sudo chmod +x /usr/local/bin/docker-compose

2. 安装harbor

下载 harbor


# 新建下载目录
[root@ilaus ~]# mkdir harbor
[root@ilaus ~]# ls
harbor
[root@ilaus ~]# cd harbor

# 下载 harbor 离线安装包
[root@ilaus harbor]# wget https://storage.googleapis.com/harbor-releases/release-1.8.0/harbor-offline-installer-v1.8.0.tgz

# 解压harbor
[root@ilaus harbor]# tar xvf harbor-offline-installer-v1.8.0.tgz

# 进入 harbor 目录
[root@ilaus harbor]# cd harbor/

配置文件修改

# harbor.yml


hostname: tencent.ilaus.com
port: 9010
harbor_admin_password: QWERTyuiopxdr123@
location: /var/log/harbor

执行安装

[root@ilaus harbor]# ./install.sh

配置本机hosts 查看harbor

http://tencent.ilaus.com:9010

 

启动/停止

docker-compose start/stop

 

本地登录docker 出错:

# 本地登录 docker
C:\Users\ilaus>docker login tencent.ilaus.com:9010
Username: haoyuan.wang
Password:
Error response from daemon: Get https://tencent.ilaus.com:9010/v2/: http: server gave HTTP response to HTTPS client

C:\Users\ilaus>

原因是 仓库和启动的有http和https 的区别。

解决方法:

查找 docker.service 所在目录
[root@ilaus ~]# find / -name docker.service -type f
/usr/lib/systemd/system/docker.service

# ExecStart 中增加 --insecure-registry tencent.ilaus.com:9010
[root@ilaus ~]# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry tencent.ilaus.com:9010

# 重启:
[root@ilaus ~]# systemctl daemon-reload
[root@ilaus ~]# systemctl restart docker

再次登录, 成功。

你可能感兴趣的:(运维,docker,harbor,容器,docker,centos)