+-
群晖DS218+部署Harbor(1.10.3)
首页 专栏 云计算 文章详情
0

群晖DS218+部署Harbor(1.10.3)

程序员欣宸 发布于 今天 00:28

欢迎访问我的GitHub

https://github.com/zq2599/blog_demos

内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

起因是懒

最近在家折腾docker,需要一个私有镜像仓库harbor,通常做法是打开电脑,启动harbor,用完再关闭电脑,总觉得这些操作挺麻烦(您想骂我懒么?您骂得对.....)

群晖解决烦恼

家里有台群晖DS218+,从不关机,为全家提供稳定的图片和视频服务,之前已在上面部署了maven私服、MySQL,运行得很稳定,今天就把harbor也部署在上面吧,今后可以随时想用就用,算得上懒人救星了。 下图是DS218+刚买来的样子,两块NAS硬盘,一直在稳定服务:

下图是网购的内存条,现在一共2+8=10G内存,内存充足才是敢折腾的底气:

前文链接

之前折腾群晖的记录:

群晖DS218+部署mysql 群晖DS218+部署kafka 群晖DS218+做maven私服(nexus3) K8S使用群晖DS218+的NFS

思路

其实操作很简单:harbor的部署是基于docker-compose的,群晖已带有docker-compose了,按照官方的部署指南操作即可,以下几处是要注意的地方:

部署脚本中需要管理员权限,所以不在网页上操作了,而是SSH登录后台进行操作; 自己在家使用,就不用https了,直接用http即可;

环境信息

群晖系统:DSM 6.2.2-24922 Update 4 harbor:1.10.3

允许SSH登录

先要设置允许SSH后台登录:

如下图红框的操作:

如下图,勾选启用SSH功能,端口就用22:

现在用SSH终端即可登录群晖了,我这里是在windows电脑上用Xshell6登录的,您可以选用任意SSH终端工具,账号密码就是能登录群晖的账号密码,如下图,登录后,就可以使用日常的linux命令了:

注意上图的红框,登录账号的home目录是<font color="blue">/var/services/homes/zq2599</font>

部署harbor

执行以下脚本,创建必要目录并且下载和解压harbor安装包:
mkdir ~/harbor-1.10.3 \
&& mkdir ~/harbor-1.10.3/log \
&& mkdir ~/harbor-1.10.3/data \
&& mkdir ~/harbor-1.10.3/data/secret \
&& cd ~/harbor-1.10.3 \
&& wget https://github.com/goharbor/harbor/releases/download/v1.10.3/harbor-online-installer-v1.10.3.tgz \
&& tar -zxvf harbor-online-installer-v1.10.3.tgz \
&& mkdir -p ~/harbor-1.10.3/harbor/common/config
打开文件<font color="blue">~/harbor-1.10.3/harbor/harbor.yml</font>,有以下几处需要修改; 修改<font color="blue">hostname</font>,如果有域名就用域名,否则改成IP地址:

选一个没有占用的端口作为http端口,这里我用的是<font color="blue">5888</font>

如果不打算使用https,就要注释所有https的配置:

修改存储数据的位置,注意<font color="blue">/var/services/homes/zq2599</font>是当前账号的home目录:

修改日志存储路径,这个文件夹之前就创建好了:

修改配置完毕,保存;

执行准备命令:

cd ~/harbor-1.10.3/harbor \
&& sudo ./prepare

10. 开始安装:

cd ~/harbor-1.10.3/harbor \
&& sudo ./install.sh

11. 操作成功的控制台输出如下:
![在这里插入图片描述](/img/bVcOjf9)
### 浏览器登录harbor
1. 打开浏览器,访问地址<font color="blue">http://192.168.50.43:5888</font> ,账号<font color="red">admin</font>,密码<font color="red">Harbor12345</font>
![在这里插入图片描述](/img/bVcOjga)
2. 登录成功如下图,群晖空间还是很充裕的:
![在这里插入图片描述](/img/bVcOjgb)
### 使用harbor
1. 接下来的操作是从另一台Linux电脑(下面称之为A电脑)远程推送镜像到harbor机器;
2. 如果要从A电脑连接harbor服务器,那么要对A电脑做设置,我这里A电脑是Linux操作系统;
3. 编辑A电脑的<font color="blue">/etc/docker/daemon.json</font>文件(如果不存在就新建),增加下图红框中的内容,<font color="red">192.168.50.43</font>是harbor服务器的IP地址,<font color="red">5888</font>是前面配置的http端口:
![在这里插入图片描述](/img/bVcOjgc)
4. 重启docker服务使配置生效:

systemctl daemon-reload \
&& systemctl restart docker

5. 再次提醒:<font color="red">这里修改是远程连接Harbor服务的机器的配置,而不是Harbor服务器的配置</font>;
6. 在A电脑上,有个nginx镜像,id是<font color="blue">2622e6cca7eb</font>,如下图所示:
![在这里插入图片描述](/img/bVcOjgd)
7. 按照dockr镜像仓库规则给镜像打tag:

docker tag 2622e6cca7eb 192.168.50.43:5888/library/nginx:latest


8. 现在是同一个ID的镜像,但是有两个tag:
![在这里插入图片描述](/img/bVcOjge)
9. 登录harbor:

docker login 192.168.50.43:5888 -u admin -p Harbor12345


10. 推送镜像到harbor:

docker push 192.168.50.43:5888/library/nginx:latest


11. 操作成功:
![在这里插入图片描述](/img/bVcOjgf)
12. 推送成功后,在浏览器页面可见此镜像:
![在这里插入图片描述](/img/bVcOjgg)
13. 新建仓库的操作如下所示:
![在这里插入图片描述](/img/bVcOjgh)
14. 创建成功:
![在这里插入图片描述](/img/bVcOjgi)
### 卸载harbor
1. 如果您不需要harbor了,执行以下命令即可:

cd ~/harbor-1.10.3/harbor \
&& sudo docker-compose down

2. 再删除整个~/harbor-1.10.3目录即可,注意<font color="red">所有数据都会清除掉</font>;

至此,群晖DS218+部署和验证harbor的操作就完成了,希望能带给您一些参考;

### 你不孤单,欣宸原创一路相伴
1. [Java系列](https://xinchen.blog.csdn.net/article/details/105068742)
2. [Spring系列](https://xinchen.blog.csdn.net/article/details/105086498)
3. [Docker系列](https://xinchen.blog.csdn.net/article/details/105086732)
4. [kubernetes系列](https://xinchen.blog.csdn.net/article/details/105086794)
5. [数据库+中间件系列](https://xinchen.blog.csdn.net/article/details/105086850)
6. [DevOps系列](https://xinchen.blog.csdn.net/article/details/105086920)

### 欢迎关注公众号:程序员欣宸
> 微信搜索「程序员欣宸」,我是欣宸,期待与您一同畅游Java世界...
云计算
阅读 45 发布于 今天 00:28
收藏
分享
本作品系原创, 采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
avatar
程序员欣宸

热爱Java和Docker

75 声望
6 粉丝
关注作者
0 条评论
得票 时间
提交评论
avatar
程序员欣宸

热爱Java和Docker

75 声望
6 粉丝
关注作者
宣传栏
目录

欢迎访问我的GitHub

https://github.com/zq2599/blog_demos

内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

起因是懒

最近在家折腾docker,需要一个私有镜像仓库harbor,通常做法是打开电脑,启动harbor,用完再关闭电脑,总觉得这些操作挺麻烦(您想骂我懒么?您骂得对.....)

群晖解决烦恼

家里有台群晖DS218+,从不关机,为全家提供稳定的图片和视频服务,之前已在上面部署了maven私服、MySQL,运行得很稳定,今天就把harbor也部署在上面吧,今后可以随时想用就用,算得上懒人救星了。 下图是DS218+刚买来的样子,两块NAS硬盘,一直在稳定服务:

下图是网购的内存条,现在一共2+8=10G内存,内存充足才是敢折腾的底气:

前文链接

之前折腾群晖的记录:

群晖DS218+部署mysql 群晖DS218+部署kafka 群晖DS218+做maven私服(nexus3) K8S使用群晖DS218+的NFS

思路

其实操作很简单:harbor的部署是基于docker-compose的,群晖已带有docker-compose了,按照官方的部署指南操作即可,以下几处是要注意的地方:

部署脚本中需要管理员权限,所以不在网页上操作了,而是SSH登录后台进行操作; 自己在家使用,就不用https了,直接用http即可;

环境信息

群晖系统:DSM 6.2.2-24922 Update 4 harbor:1.10.3

允许SSH登录

先要设置允许SSH后台登录:

如下图红框的操作:

如下图,勾选启用SSH功能,端口就用22:

现在用SSH终端即可登录群晖了,我这里是在windows电脑上用Xshell6登录的,您可以选用任意SSH终端工具,账号密码就是能登录群晖的账号密码,如下图,登录后,就可以使用日常的linux命令了:

注意上图的红框,登录账号的home目录是<font color="blue">/var/services/homes/zq2599</font>

部署harbor

执行以下脚本,创建必要目录并且下载和解压harbor安装包:
mkdir ~/harbor-1.10.3 \
&& mkdir ~/harbor-1.10.3/log \
&& mkdir ~/harbor-1.10.3/data \
&& mkdir ~/harbor-1.10.3/data/secret \
&& cd ~/harbor-1.10.3 \
&& wget https://github.com/goharbor/harbor/releases/download/v1.10.3/harbor-online-installer-v1.10.3.tgz \
&& tar -zxvf harbor-online-installer-v1.10.3.tgz \
&& mkdir -p ~/harbor-1.10.3/harbor/common/config
打开文件<font color="blue">~/harbor-1.10.3/harbor/harbor.yml</font>,有以下几处需要修改; 修改<font color="blue">hostname</font>,如果有域名就用域名,否则改成IP地址:

选一个没有占用的端口作为http端口,这里我用的是<font color="blue">5888</font>

如果不打算使用https,就要注释所有https的配置:

修改存储数据的位置,注意<font color="blue">/var/services/homes/zq2599</font>是当前账号的home目录:

修改日志存储路径,这个文件夹之前就创建好了:

修改配置完毕,保存;

执行准备命令:

cd ~/harbor-1.10.3/harbor \
&& sudo ./prepare

10. 开始安装:

cd ~/harbor-1.10.3/harbor \
&& sudo ./install.sh

11. 操作成功的控制台输出如下:
![在这里插入图片描述](/img/bVcOjf9)
### 浏览器登录harbor
1. 打开浏览器,访问地址<font color="blue">http://192.168.50.43:5888</font> ,账号<font color="red">admin</font>,密码<font color="red">Harbor12345</font>
![在这里插入图片描述](/img/bVcOjga)
2. 登录成功如下图,群晖空间还是很充裕的:
![在这里插入图片描述](/img/bVcOjgb)
### 使用harbor
1. 接下来的操作是从另一台Linux电脑(下面称之为A电脑)远程推送镜像到harbor机器;
2. 如果要从A电脑连接harbor服务器,那么要对A电脑做设置,我这里A电脑是Linux操作系统;
3. 编辑A电脑的<font color="blue">/etc/docker/daemon.json</font>文件(如果不存在就新建),增加下图红框中的内容,<font color="red">192.168.50.43</font>是harbor服务器的IP地址,<font color="red">5888</font>是前面配置的http端口:
![在这里插入图片描述](/img/bVcOjgc)
4. 重启docker服务使配置生效:

systemctl daemon-reload \
&& systemctl restart docker

5. 再次提醒:<font color="red">这里修改是远程连接Harbor服务的机器的配置,而不是Harbor服务器的配置</font>;
6. 在A电脑上,有个nginx镜像,id是<font color="blue">2622e6cca7eb</font>,如下图所示:
![在这里插入图片描述](/img/bVcOjgd)
7. 按照dockr镜像仓库规则给镜像打tag:

docker tag 2622e6cca7eb 192.168.50.43:5888/library/nginx:latest


8. 现在是同一个ID的镜像,但是有两个tag:
![在这里插入图片描述](/img/bVcOjge)
9. 登录harbor:

docker login 192.168.50.43:5888 -u admin -p Harbor12345


10. 推送镜像到harbor:

docker push 192.168.50.43:5888/library/nginx:latest


11. 操作成功:
![在这里插入图片描述](/img/bVcOjgf)
12. 推送成功后,在浏览器页面可见此镜像:
![在这里插入图片描述](/img/bVcOjgg)
13. 新建仓库的操作如下所示:
![在这里插入图片描述](/img/bVcOjgh)
14. 创建成功:
![在这里插入图片描述](/img/bVcOjgi)
### 卸载harbor
1. 如果您不需要harbor了,执行以下命令即可:

cd ~/harbor-1.10.3/harbor \
&& sudo docker-compose down

2. 再删除整个~/harbor-1.10.3目录即可,注意<font color="red">所有数据都会清除掉</font>;

至此,群晖DS218+部署和验证harbor的操作就完成了,希望能带给您一些参考;

### 你不孤单,欣宸原创一路相伴
1. [Java系列](https://xinchen.blog.csdn.net/article/details/105068742)
2. [Spring系列](https://xinchen.blog.csdn.net/article/details/105086498)
3. [Docker系列](https://xinchen.blog.csdn.net/article/details/105086732)
4. [kubernetes系列](https://xinchen.blog.csdn.net/article/details/105086794)
5. [数据库+中间件系列](https://xinchen.blog.csdn.net/article/details/105086850)
6. [DevOps系列](https://xinchen.blog.csdn.net/article/details/105086920)

### 欢迎关注公众号:程序员欣宸
> 微信搜索「程序员欣宸」,我是欣宸,期待与您一同畅游Java世界...