目录
1 前置动作
1.1 安装 Docker 服务并配置阿里云加速器
1.1.1 安装基础软件包
1.1.2 配置 YUM 镜像仓库
1.1.3 安装 Docker 服务
1.1.4 修改 deamon.json 配置docker阿里云镜像加速器
1.2 安装docker-compose服务
1.2.1 下载
1.2.2 添加执行权限
1.2.3 查看版本
2 部署harbor
2.1 下载
2.2 解压
2.3 修改harbor.yml配置文件
2.4 启动服务
3 使用harbor平台
3.1 访问地址和账号
3.2 主要面板
上一篇,我们已经准备好机器了,接下来就是对着机器进行一阵的操作。
首先需要了解,harbor依赖docker和docker-compose,因此我们需要安装这两个服务。
1 前置动作
1.1 安装 Docker 服务并配置阿里云加速器
1.1.1 安装基础软件包
yum -y install yum-utils device-mapper-persistent-data lvm2
1.1.2 配置 YUM 镜像仓库
yum-config-manager --add-repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
1.1.3 安装 Docker 服务
# 查询docker版本
yum list docker-ce --showduplicates|sort -r
# 安装指定版本,根据生产环境自行选择 我安装的是18.09.8版本
yum -y install docker-ce-18.09.8
1.1.4 修改 deamon.json 配置docker阿里云镜像加速器
我自己因为并没有阿里云镜像加速器,所以只能暂时先用网友的:
运行下面命令就会自动完成配置(运行命令之后会生成/etc/docker/daemon.json):
(下面命令全部复制,并一次性粘贴到terminal里头,就会立马自动运行,并最终停在最后一行命令上,再回车,就全部执行完毕)
mkdir -p /etc/docker
cat << EOF > /etc/docker/daemon.json
{
"registry-mirrors": ["https://k1ktap5m.mirror.aliyuncs.com"]
}
EOF
mkdir -p /etc/systemd/system/docker.service.d
systemctl daemon-reload
systemctl restart docker && systemctl enable docker
1.2 安装docker-compose服务
官方地址:
Releases · docker/compose · GitHubhttps://github.com/docker/compose/releases
1.2.1 下载
登入 GitHub ,找到对应版本下载(下面命令,是作者安装1.27.4版本的docker-compose),并将下载后的文件放到 /usr/local/bin 目录下
curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
1.2.2 添加执行权限
chmod +x /usr/local/bin/docker-compose
1.2.3 查看版本
docker-compose -version
2 部署harbor
2.1 下载
登入官方地址下载对应版本: https://github.com/goharbor/harbor/releaseshttps://github.com/goharbor/harbor/releases
我下载2.1.1版本的命令如下:
wget https://github.com/goharbor/harbor/releases/download/v2.1.1/harbor-offline-installer-v2.1.1.tgz
2.2 解压
将 harbor 服务加压到 /home 目录下,以下所有操作均以解压后目录为当前目录
tar xvf harbor-offline-installer-v2.1.1.tgz -C /home/ && cd /home/harbor/
2.3 修改harbor.yml配置文件
默认解压下来的只有一个harbor.yml.tmpl,这个是harbor.yml的模板
基于这个创建一个harbor.yml的模板:
cp harbor.yml.tmpl harbor.yml
正常,harbor.yml是提供https访问的,所以大家可以配置https,但是我觉得本地化的一个镜像仓库,没必要折腾这么多,所以我采用的是http的访问方式,下面的配置是针对http的访问方式的配置,如果想要https访问方式,在后面我会附上参考链接。
[root@localhost harbor]# vi harbor.yml
.....
.....
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: 192.168.211.5 ##########修改域名,因为我不设置域名,所以就设置本机的ip
http: # port for http, default is 80. If https enabled, this port will redirect to https port
port: 80
# https related config
# https:#########注释掉
# # https port for harbor, default is 443
# port: 443 #########注释掉
# # The path of cert and key files for nginx
# certificate: /home/harbor/certs/harbor.crt #########注释掉
# private_key: /home/harbor/certs/harbor.key #########注释掉
.....
.....
# Remember Change the admin password from UI after launching Harbor.
harbor_admin_password: admin ######### admin用户登入密码
# Harbor DB configuration
database:
# The password for the root user of Harbor DB. Change this before any production use.
password: root ######### 数据库密码
# The default data volume
data_volume: /data #########目录自己创建,根据实际情况填写,作者保持不动
2.4 启动服务
./install.sh
成功日志:
3 使用harbor平台
3.1 访问地址和账号
访问地址就是harbor部署的机器的ip,端口号就是我们harbor.yml里头指定的端口号。默认账号是admin,密码也是在配置文件,我们指定的。
比如我的是:
账号:admin/admin
3.2 主要面板
登录进来:
点击项目library进入到项目详情:
下面的推送命令,在http协议下是不能直接使用的,因为默认采用的是https协议来推送,所以只写192.168.211.5不写端口的话,默认访问的443端口。下面命令只是一个参考,下一篇,我会分享正确的http协议的推送命令写法。
下一篇,推送镜像到harbor