群晖DS218+部署Harbor(1.10.3)

简介: 家里的群晖用来装上GitLab,可以保存代码,也可以执行GitLab CI

欢迎访问我的GitHub

https://github.com/zq2599/blog_demos
内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

起因是懒

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

群晖解决烦恼

  1. 家里有台群晖DS218+,从不关机,为全家提供稳定的图片和视频服务,之前已在上面部署了maven私服、MySQL,运行得很稳定,今天就把harbor也部署在上面吧,今后可以随时想用就用,算得上懒人救星了。
  2. 下图是DS218+刚买来的样子,两块NAS硬盘,一直在稳定服务:
    在这里插入图片描述
  3. 下图是网购的内存条,现在一共2+8=10G内存,内存充足才是敢折腾的底气:
    在这里插入图片描述

    前文链接

    之前折腾群晖的记录:
  4. 群晖DS218+部署mysql
  5. 群晖DS218+部署kafka
  6. 群晖DS218+做maven私服(nexus3)
  7. K8S使用群晖DS218+的NFS

    思路

    其实操作很简单:harbor的部署是基于docker-compose的,群晖已带有docker-compose了,按照官方的部署指南操作即可,以下几处是要注意的地方:
  8. 部署脚本中需要管理员权限,所以不在网页上操作了,而是SSH登录后台进行操作;
  9. 自己在家使用,就不用https了,直接用http即可;

    环境信息

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

    允许SSH登录

    先要设置允许SSH后台登录:
  12. 如下图红框的操作:
    在这里插入图片描述
  13. 如下图,勾选启用SSH功能,端口就用22:
    在这里插入图片描述
  14. 现在用SSH终端即可登录群晖了,我这里是在windows电脑上用Xshell6登录的,您可以选用任意SSH终端工具,账号密码就是能登录群晖的账号密码,如下图,登录后,就可以使用日常的linux命令了:
    在这里插入图片描述
  15. 注意上图的红框,登录账号的home目录是/var/services/homes/zq2599

    部署harbor

  16. 执行以下脚本,创建必要目录并且下载和解压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
    
  17. 打开文件~/harbor-1.10.3/harbor/harbor.yml,有以下几处需要修改;

  18. 修改hostname,如果有域名就用域名,否则改成IP地址:
    在这里插入图片描述
  19. 选一个没有占用的端口作为http端口,这里我用的是5888
    在这里插入图片描述
  20. 如果不打算使用https,就要注释所有https的配置:
    在这里插入图片描述
  21. 修改存储数据的位置,注意/var/services/homes/zq2599是当前账号的home目录:
    在这里插入图片描述
  22. 修改日志存储路径,这个文件夹之前就创建好了:
    在这里插入图片描述
  23. 修改配置完毕,保存;
  24. 执行准备命令:
    cd ~/harbor-1.10.3/harbor \
    && sudo ./prepare
    
  25. 开始安装:
    cd ~/harbor-1.10.3/harbor \
    && sudo ./install.sh
    
  26. 操作成功的控制台输出如下:
    在这里插入图片描述

    浏览器登录harbor

  27. 打开浏览器,访问地址http://192.168.50.43:5888 ,账号admin,密码Harbor12345
    在这里插入图片描述
  28. 登录成功如下图,群晖空间还是很充裕的:
    在这里插入图片描述

    使用harbor

  29. 接下来的操作是从另一台Linux电脑(下面称之为A电脑)远程推送镜像到harbor机器;
  30. 如果要从A电脑连接harbor服务器,那么要对A电脑做设置,我这里A电脑是Linux操作系统;
  31. 编辑A电脑的/etc/docker/daemon.json文件(如果不存在就新建),增加下图红框中的内容,192.168.50.43是harbor服务器的IP地址,5888是前面配置的http端口:
    在这里插入图片描述
  32. 重启docker服务使配置生效:
    systemctl daemon-reload \
    && systemctl restart docker
    
  33. 再次提醒:这里修改是远程连接Harbor服务的机器的配置,而不是Harbor服务器的配置
  34. 在A电脑上,有个nginx镜像,id是2622e6cca7eb,如下图所示:
    在这里插入图片描述
  35. 按照dockr镜像仓库规则给镜像打tag:

    docker tag 2622e6cca7eb 192.168.50.43:5888/library/nginx:latest
    
  36. 现在是同一个ID的镜像,但是有两个tag:
    在这里插入图片描述

  37. 登录harbor:

    docker login 192.168.50.43:5888 -u admin -p Harbor12345
    
  38. 推送镜像到harbor:

    docker push 192.168.50.43:5888/library/nginx:latest
    
  39. 操作成功:
    在这里插入图片描述

  40. 推送成功后,在浏览器页面可见此镜像:
    在这里插入图片描述
  41. 新建仓库的操作如下所示:
    在这里插入图片描述
  42. 创建成功:
    在这里插入图片描述

    卸载harbor

  43. 如果您不需要harbor了,执行以下命令即可:
    cd ~/harbor-1.10.3/harbor \
    && sudo docker-compose down
    
  44. 再删除整个~/harbor-1.10.3目录即可,注意所有数据都会清除掉

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

欢迎关注阿里云开发者社区:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...

相关文章
|
2月前
|
存储 Linux 数据安全/隐私保护
如何在本地Docker中部署MinIO服务并实现远程访问管理界面
如何在本地Docker中部署MinIO服务并实现远程访问管理界面
457 0
|
10月前
|
网络安全 开发工具 文件存储
在群晖NAS上快速搭建属于自己的Git Server
在群晖NAS上快速搭建属于自己的Git Server
1299 0
|
1月前
|
Ubuntu Docker 容器
迁移harbor
在Ubuntu 22.04 LTS环境中,已安装Docker的Harbor从v2.5.3迁移到v2.9.0,保留原有镜像数据。参考官方文档[v2.9.0](https://goharbor.io/docs/2.9.0/),执行包括数据目录复制、解压新版本、配置harbor.yml和docker-compose.yml、运行安装脚本等步骤。迁移后,通过测试推拉镜像确保功能正常。注意查看潜在的部署问题。
21 0
|
1月前
|
Ubuntu 关系型数据库 PostgreSQL
部署harbor
在Ubuntu 22.04 LTS环境下,部署Harbor私有仓库的步骤包括:确保已安装Docker(版本24.0.6),参考官方v2.5.3安装指南,注意避免在NFS4挂载磁盘上部署以防止PostgreSQL相关问题。首先,生成SSL证书,然后更新Docker配置并重启服务。解压并配置Harbor离线安装包,修改`harbor.yml`,执行`prepare`和`install.sh`脚本,最后将Harbor设置为系统服务。
57 0
|
2月前
|
运维 Kubernetes 监控
本地CentOS安装轻量级容器PaaS平台KubeSphere并实现无公网IP远程访问
本地CentOS安装轻量级容器PaaS平台KubeSphere并实现无公网IP远程访问
34 0
|
2月前
|
存储 安全 文件存储
如何在群辉NAS使用Docker搭建容器魔方并实现无公网ip远程访问
如何在群辉NAS使用Docker搭建容器魔方并实现无公网ip远程访问
101 0
|
2月前
|
数据挖掘 Apache 数据安全/隐私保护
使用Docker部署Apache Superset并实现公网远程访问
使用Docker部署Apache Superset并实现公网远程访问
189 0
|
2月前
|
存储 Kubernetes Cloud Native
Kubernetes学习笔记-Part.07 Harbor搭建
Part.01 Kubernets与docker Part.02 Docker版本 Part.03 Kubernetes原理 Part.04 资源规划 Part.05 基础环境准备 Part.06 Docker安装 Part.07 Harbor搭建 Part.08 K8s环境安装 Part.09 K8s集群构建 Part.10 容器回退
74 0
Kubernetes学习笔记-Part.07 Harbor搭建
|
7月前
|
应用服务中间件 数据安全/隐私保护 nginx
搭建harbor
通过harbor在线包搭建harbor服务
73 1
|
2月前
|
关系型数据库 MySQL 数据库
Docker本地部署Drupal并实现公网访问
Docker本地部署Drupal并实现公网访问