欢送拜访我的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. 操作胜利的控制台输入如下:### 浏览器登录harbor1. 关上浏览器,拜访地址<font color="blue">http://192.168.50.43:5888</font> ,账号<font color="red">admin</font>,明码<font color="red">Harbor12345</font>2. 登录胜利如下图,群晖空间还是很富余的:### 应用harbor1. 接下来的操作是从另一台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端口:4. 重启docker服务使配置失效:
systemctl daemon-reload \
&& systemctl restart docker
5. 再次揭示:<font color="red">这里批改是近程连贯Harbor服务的机器的配置,而不是Harbor服务器的配置</font>;6. 在A电脑上,有个nginx镜像,id是<font color="blue">2622e6cca7eb</font>,如下图所示:7. 依照dockr镜像仓库规定给镜像打tag:
docker tag 2622e6cca7eb 192.168.50.43:5888/library/nginx:latest
8. 当初是同一个ID的镜像,然而有两个tag: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. 操作胜利:12. 推送胜利后,在浏览器页面可见此镜像:13. 新建仓库的操作如下所示:14. 创立胜利:### 卸载harbor1. 如果您不须要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世界...