APP下载 微博 微信

Hao4K影音


[经验心得] docker固定ip,抛弃端口映射? 教你通过搭建gitlab

[复制链接]

发表于 2019年11月27日 17:37 55518 1 来源:媒体存储> 经验心得 回帖奖励 |正序浏览 |

ShaPoLang 帖主

2019-11-27 17:37

docker固定ip,抛弃端口映射? 教你通过搭建gitlab

什么是docker
抛开win和mac外,在linux系统下(包括群辉),docker是容器,方便部署和资源隔离、限制。
通过docker部署程序和普通直接部署程序相比较,仅仅会多占用一些磁盘空间。所以大家可以放心大胆的使用docker。
注册表: 相当于应用商城,可以选择下载不同的应用。
镜像: 就是下载的应用、软件包,大家下载的都是绿色软件,几乎不需要安装的,可能需要我们简单配置下。
容器: 相当于我们安装好的软件,同一个镜像可以启动多次,创建多个一样的容器。
很多套件是我们安装的是一些服务,比如数据库、gitlab、homeassistant等。群辉上的docker套件,每次重启容器的ip会发生变化,通过端口映射的方式来找到对应的服务。开始我也是采用这种方式,后面发现容器一多,端口就乱78遭的。
那么就得想个办法固定ip,这样直接通过ip+端口的形式访问服务,没有必要进行端口映射了。
本文内容需要开启ssh,使用终端进行。
1. 创建网络
原有的网络不支持固定ip,只能新建一个了:
默认的网段是172.17.0.0/16,我们使用相邻的,具体的随意即可。fixbridge 是网络的名称,后续需要通过这个名字指定网络。


创建的网络
创建的网络也可以通过界面查看

2. 创建容器
我们不能直接通过群辉的界面创建,只能通过终端创建容器。 创建的容器,界面也可以看到和操作。我们以&39;为例子,创建一个gitlab服务。
2.1 创建redis容器
https://hub.docker.com/r/sameersbn/redis/
提供的命令是多行的,后面的表示该条命令没有结束。直接复制到终端即可。
--name 容器的名称, 我起的名字里面带ip,方便查看
--net 我们创建的网络名称,写你的网络名字哦
--ip 指定的ip。除了该参数界面无法配置外,其他参数界面均可配置。
--restart always 不当关机时,会尝试重启
--volume 指定路径映射, :前面是宿主的路径,该路径你需要在群辉里面创建的。 :后面是映射到容器内部的路径。
--env 环境变量
sameersbn/redis:latest 下载的镜像和版本,和自己下载的镜像对应哦。



我们选择镜像--启动---高级设置
--env 就是环境选项卡,全部拷贝到命令行里面,这些参数目的是让我们改的,一般默认就行
--volume 对应的是卷,哪些路径需要映射呢? 基本都是env指定的。
如果不知道怎么填写可以启动一下,看看默认是什么内容。或者通过介绍页面查看帮助。
2.2 postgresql容器
https://hub.docker.com/r/sameersbn/postgresql
postgresql这个数据库,和mysql一样出名,gitlab支持较好。使用mysql也不错,但是gitlab无法使用子group,
注释的三行表示创建个数据库以及用户给gitlab使用。
2.3 gitlab容器
https://hub.docker.com/r/sameersbn/gitlab进行注释说明
GITLAB_HOST,GITLAB_SSH_HOST,GITLAB_SSH_PORT 这三个参数使用见下图



这个容器内部包括一个nginx,我们后面做映射的使用没有使用nginx的端口,可以将nginx剔除掉。


3. 映射域名3.1 群辉反向代理
控制面板 --- 应用程序门户 --- 反向代理设置 --- 新增



按图填写即可:
名字:随便起个
来源:协议选择http或者https,有条件上https, 主机名填写你需要的域名,端口使用443或者80
目的地:即我们的gitlab应用,协议http,主机名 172.18.0.103,端口8181。
3.2 路由端口映射
此处不再展开, 需要把群辉映射出去。
3.3 ddns
将域名绑定到ip上,也可以使用通配符



本人使用通配符,这样就方便随时配置域名。
4. 总结
volume 参数的目的是让程序的数据能够保留到我们的群辉中,即使升级版本也能保留。不信你删除掉容器,重新run一个出来看看是不是完全一样的。大家可以百度下“稳定版白群晖升级数据丢失,官方回复说与他们无关”,本人不对事件做任何评论,大家珍惜自己的数据。特别是小公司,一定要舍得花钱招人,有招兼职的也可以联系我哦。
env参数的作用,是让我们对容器的程序进行定制,目的就是让我们能够按照我们的口味用着顺心。


回复

使用道具 举报

全部回复1

chuanjun78 2

2019-11-27 22:49

学习啦,不错的教程!感谢~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

返回列表 本版积分规则



绑定微信 + 关注公众号,第一时间获得消息通知!
:
新手玩家
:
介绍未填写

主题

帖子

积分13

图文推荐

  • 小量的影视、音频存储方案之我见

    最近,一块使用了近十年的4T移动硬盘挂了(曾被摔

  • 极空间挂载阿里云、115、百度、夸克等20个

    理论上使用如下教实现程极空间可以挂载阿里云网盘

  • 红米AC2100刷Padavan固件超全详细教程

    刷机全过程图解 准备工作这部分,网上教程几乎都

  • 科普:什么是硬盘MTBF?那MTTF、MTTD、MTTR

    买固态硬盘,我们会比较关注颗粒寿命,机械硬盘虽

  • 群辉加USB3.0千兆网卡成功,教程分享

    具体安装替换参考此贴https://www.hao4k.cn/threa

  • 机械硬盘该怎么选?教你最全机械硬盘选购指

    机械硬盘该怎么选?教你最全机械硬盘选购指南

  • 搭建私有云—华芸AS6404T NAS+华硕 AC68U体

    帮朋友搭建私有云—华芸AS6404T NAS+华硕 AC68U体

  • 分享蜗牛星际A\B\C\D款机箱和功能分别有

    历经一个月研究:蜗牛星际ABCD款机箱和功能分

  • NAS都有哪些品牌?带你了解几大NAS名牌介绍

    NAS都有哪些品牌?带你了解几大NAS名牌介绍 前

  • 利用NAS建立DNS缓存服务器Pi-hole

    在家用环境中利用NAS建立DNS缓存服务器 1 前

  • Hao4K影音app客户端下载