当前位置:网站首页>家庭服务器门户Easy-Gate
家庭服务器门户Easy-Gate
2022-06-25 06:49:00 【杨浦老苏】

周一做的核酸一直没有结果,中途收到了一次短信

算上全员筛查,这周做了4次核酸,分别是周六上午、周一下午、周二下午、周四下午
昨晚已经接到通知,本周末继续全员核酸筛查,想睡懒觉那是不可能滴
什么是 Easy-Gate ?
Easy Gate是一个使用Go和React构建的简单Web应用程序,它充当您自托管基础设施的主页。服务和注释从JSON文件中实时解析(无需重新启动应用程序)。可以将服务和注释分配给一个或多个组,以仅向特定用户显示项目(基于他们的IP地址)。
准备
Easy-Gate 需通过 easy-gate.json 文件进行配置。所以要创建 easy-gate.json 文件,可以复制粘贴,也可以另存为。
文件地址: https://raw.githubusercontent.com/r7wx/easy-gate/master/easy-gate.json
虽然官方宣称修改了
easy-gate.json文件无需重新启动应用程序,但老苏发现似乎还是要重启的,或者重启了会刷新缓存?
groups
通过提供用户子网(subnet),用于定义哪些用户可以查看哪些项目
关于组功能,老苏没测试,有兴趣的可以自己试试
"groups": [
{
"name": "internal",
"subnet": "192.168.1.1/24"
},
{
"name": "vpn",
"subnet": "10.8.1.1/24"
}
]
上例中,用户分为两个组,分别是 internal 组和 vpn 组。
services
services 条目用于定义基础设施中可用的服务。每个服务(services)都有一个名称(name)、一个地址(url)、一个图标(icon)和可以看到它的组( 在 groups 部分中定义)。如果未提供组,则所有用户都可以看到该项目
icon 可以到下面网站查找:
{
"icon": "fa-brands fa-git-square",
"name": "Git",
"url": "https://git.example.vpn",
"groups": [
"vpn"
]
},
{
"icon": "fa-brands fa-docker",
"name": "Portainer",
"url": "https://portainer.example.internal",
"groups": []
}
上例中,Git 只能 vpn 组看到,Portainer 则 internal 组和 vpn 组都能看到。
notes
notes 条目用于定义具有标题和内容的简单文本注释。每条笔记(notes) 都有一个名称(name)、笔记内容(text)和可以看到它的组( 在 groups 部分中定义)。如果未提供组,则所有用户都可以看到该项目:
{
"name": "Simple note",
"text": "This is a simple note for vpn users",
"groups": [
"vpn"
]
},
{
"name": "Global note",
"text": "This note will be visible to everyone",
"groups": []
}
上例中,Simple note 只能 vpn 组看到,Global note 则 internal 组和 vpn 组都能看到。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 easy-gate ,选择第一个 r7wx/easy-gate,版本选择 latest。

卷
- 在
docker文件夹中,创建一个新文件夹,并将其命名为easy-gate - 将
easy-gate.json文件放入到easy-gate目录
| 文件夹 | 装载路径 | 说明 |
|---|---|---|
docker/easy-gate/easy-gate.json | /etc/easy-gate/easy-gate.json | 设置文件 |

端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
| 本地端口 | 容器端口 |
|---|---|
8082 | 8080 |
默认是暴露的 80

容器端口需要修改为 8080,本地端口不冲突就可以

命令行安装
如果你熟悉命令行,可能用 docker cli 更快捷
# 新建文件夹 easy-gate
mkdir -p /volume2/docker/easy-gate
# 进入 easy-gate 目录
cd /volume2/docker/easy-gate
# 将 easy-gate.json 放入当前目录
# 运行容器
docker run -d \
--restart unless-stopped \
--name easy-gate \
-p 8082:8080 \
-v $(pwd)/easy-gate.json:/etc/easy-gate/easy-gate.json \
r7wx/easy-gate
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose 文件
version: '3'
services:
easy-gate:
image: r7wx/easy-gate
container_name: easy-gate
expose:
- 8080
ports:
- 8082:8080
volumes:
- /volume2/docker/easy-gate/easy-gate.json:/etc/easy-gate/easy-gate.json
然后执行下面的命令
# 新建文件夹 easy-gate
mkdir -p /volume2/docker/easy-gate
# 进入目录
cd /volume2/docker/easy-gate
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d
运行
在浏览器中输入 http://群晖IP:8082 就能看到主界面

老苏试验了中文,支持良好

手机上的效果


参考文档
r7wx/easy-gate: A gate to your self hosted infrastructure
地址:https://github.com/r7wx/easy-gate
边栏推荐
- Stm32cubemx learning (5) input capture experiment
- 洛谷P2486 [SDOI2011]染色(树链+线段树 + 树上区间合并 )
- [supplementary question] 2021 Niuke summer multi school training camp 1-3
- Can bus working condition and signal quality "physical examination"
- Introduction to the main functions of the can & canfd comprehensive test and analysis software lkmaster of the new usbcan card can analyzer
- Deep learning series 45: overview of image restoration
- c#磁盘驱动器及文件夹还有文件类的操作
- 【补题】2021牛客暑期多校训练营4-n
- RMQ interval maximum subscript query, interval maximum
- Anaconda based module installation and precautions
猜你喜欢

Electronics: Lesson 014 - Experiment 15: intrusion alarm (Part I)

TCP与UDP

Drawing of clock dial

Use the frame statistics function of the message and waveform recording analyzer royalscope to troubleshoot the accidental faults of the CAN bus

Opencv daily function structure analysis and shape descriptor (8) Fitline function fitting line

电子学:第011课——实验 10:晶体管开关

Mining microbial dark matter -- a new idea

五分钟快速搭建一个实时人脸口罩检测系统(OpenCV+PaddleHub 含源码)

DNS协议及其DNS完整的查询过程

FM信号、调制信号和载波
随机推荐
The first game of 2021 ICPC online game
Electronics: Lesson 009 - Experiment 7: study relays
电子学:第012课——实验 13:烧烤 LED
深度学习系列45:图像恢复综述
Deep learning series 45: overview of image restoration
【补题】2021牛客暑期多校训练营9-n
TCP stuff
自制坡道,可是真的很香
Mining microbial dark matter -- a new idea
Sword finger offer (simple level)
DNS协议及其DNS完整的查询过程
Mr. Tang's lecture on operational amplifier (Lecture 7) -- Application of operational amplifier
电子学:第014课——实验 15:防入侵报警器(第一部分)
C examples of using colordialog to change text color and fontdialog to change text font
Startup, shutdown and restart of Oracle and MySQL on Linux
php数组函数大全
Electronics: Lesson 010 - Experiment 8: relay oscillator
Electronics: Lesson 012 - Experiment 11: light and sound
[thesis study] vqmivc
电子学:第010课——实验 8:继电振荡器