本文软件得到网友 冷心 的推荐;
什么是 homepage ?
homepage 是现代、安全、高度可定制的应用程序仪表板,集成了超过 25 种服务和超过 15 种语言的翻译。可通过 YAML 文件轻松配置(或通过 docker 标签发现)。
安装ghcr.io 镜像下载
官方的镜像没有发布在 docker hub,而是在 ghcr.io,所以直接用命令行来安装。
在 SSH 客户端中依次执行下面的命令
#?下载镜像 docker?pull?ghcr.io/benphelps/homepage:latest
如果没有科学上网,很可能会拉不动,可以试试 docker 代理网站:,但是会多几个步骤
#?如果拉不动的话加个代理 docker?pull?ghcr.dockerproxy.com/benphelps/homepage:latest
#?重命名镜像(如果是通过代理下载的) docker?tag?ghcr.dockerproxy.com/benphelps/homepage:latest?ghcr.io/benphelps/homepage:latest
#?删除代理镜像(如果是通过代理下载的) docker?rmi?ghcr.dockerproxy.com/benphelps/homepage:latest
当然代理网站也不是什么时候都好使,有时候也会报错,例如下面这样的
Error response from daemon: received unexpected HTTP status: 500 Internal Server Error
所以有一个稳定的科学上网环境还是很重要的
Docker API 说明
与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainer、watchtower,Glances,Netdata 、lazydocker 等。
什么是 /var/run/docker.sock ?
/var/run/docker.sock 是 Docker API 的主要入口,简单地说制作应用程序,它是 Docker 守护进程(Docker daemon)默认监听的 Unix 域套接字(Unix domain socket),容器中的进程可以通过它与 Docker 守护进程进行通信。

title
图片来自:
这里只要通过 /var/run/docker.sock 与 Docker 集成
Docker Cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
#?新建文件夹?homepage?和?子目录 mkdir?-p?/volume2/docker/homepage/{config,icons}
#?进入?homepage?目录 cd?/volume2/docker/homepage
#?修改目录权限 chmod?-R?777?config/
#?运行容器 docker?run?-d?\ ???--name?homepage?\ ???-p?3344:3000?\ ???-v?$(pwd)/config:/app/config?\ ???-v?$(pwd)/icons:/app/public/icons?\ ???-v?/var/run/docker.sock:/var/run/docker.sock?\ ???ghcr.io/benphelps/homepage:latest
docker-compose 安装
将下面的内容保存为 docker-compose.yml 文件
version:?"3.3"
services: ??homepage: ????image:?ghcr.io/benphelps/homepage:latest ????container_name:?homepage ????ports: ??????-?3344:3000 ????volumes: ??????-?./config:/app/config ??????-?./icons:/app/public/icons ??????-?/var/run/docker.sock:/var/run/docker.sock
然后执行下面的命令
#?新建文件夹?homepage?和?子目录 mkdir?-p?/volume2/docker/homepage/config
#?进入?homepage?目录 cd?/volume2/docker/homepage
#?修改目录权限 chmod?-R?777?config/
#?将?docker-compose.yml?放入当前目录
#?一键启动 docker-compose?up?-d
运行
在浏览器中输入 群晖IP:3344 就能看到主界面

回到 File Station,你会在 config 目录中发现一些 yaml 文件

yaml 文件,最好都保存为 utf-8 编码格式,避免中文出现乱码,当然纯英文的无所谓;
老苏随便试了下,先上张整体的效果图

图标
所用到的 png图标,均可在这个开源项目中找到:
settings.yaml
settings.yaml 就一句话
language:?zh-CN
其实还可以设置背景图片等等;
widgets.yaml
widgets.yaml 控制的是最上面的一排,官方称为信息小部件
-?greeting: ????text_size:?xl ????text:?老苏的导航
-?resources: ????label:?系统 ????cpu:?true ????memory:?true ???? -?resources: ????label:?存储?? ????expanded:?true ????disk: ??????-?/
-?datetime: ????text_size:?xl ????format: ??????dateStyle:?long ??????timeStyle:?long ??????hour12:?false
-?weatherapi: ????label:?杨浦 ????latitude:?31.305873 ????longitude:?121.522311 ????units:?metric? ????apiKey:?<你的?weatherapi?的?API?Key> ????cache:?5 ???? -?search: ????provider:?baidu ????focus:?true ????target:?_blank
关于 Weather API 的申请和使用,请参考老苏之前写的 『 个人仪表板软件Flame 』
docker.yaml
这个文件的设置,在界面上不会显示,但是 services.yaml 会引用到
my-docker: ??socket:?/var/run/docker.sock
services.yaml
services.yaml 显示在第二排,其中部分服务还支持服务小部件,比如常用的 Jellyfin 和 Portainer 等
--- ????#?For?configuration?options?and?examples,?please?see: ????#?https://github.com/benphelps/homepage/wiki/Services ???? ????-?音影: ????????-?Jellyfin: ????????????icon:?jellyfin.png ????????????href:?"http://192.168.0.197:8096/" ????????????description:?媒体服务器 ????????????server:?my-docker ????????????container:?jellyfin ????????????widget: ????????????????type:?jellyfin ????????????????url:?http://192.168.0.197:8096 ????????????????key:?<你的?token?api?key>????? ???? ????-?运维: ????????-?Portainer: ????????????icon:?portainer.png ????????????href:?"http://192.168.0.197:9000/" ????????????description:?容器管理服务器 ????????????server:?my-docker ????????????container:?portainer ????????????widget: ????????????????type:?portainer ????????????????url:?http://192.168.0.197:9000 ????????????????env:?2 ????????????????key:?<你的?portainer?的?access?key> ???? ????-?开发: ????????-?Adminer: ????????????icon:?adminer.png ????????????href:?"http://192.168.0.197:8989/" ????????????description:?数据库连接服务器 ????????????server:?my-docker ????????????container:?adminer1
bookmarks.yaml
bookmarks.yaml 显示在第三排,也就是最下面
-?群晖: ????-?管理主页: ????????-?abbr:?HP ??????????href:?http://192.168.0.197:5000/
-?博客: ????-?老苏的博客: ????????-?abbr:?LS ??????????href:?https://laosu.ml/ ????-?CSDN: ????????-?abbr:?CS ??????????href:?https://blog.csdn.net/wbsu2004/
-?网盘: ????-?天翼云盘: ????????-?abbr:?TY ??????????href:?https://cloud.189.cn/ ????-?阿里云盘: ????????-?abbr:?AL ??????????href:?https://www.aliyundrive.com/
注意事项因为用到了中文,所以 yaml 文件要选择 utf-8 格式保存,否则中文会乱码;yaml 文件对缩进有严格要求,建议用代码编辑器,老苏一般用 vscode,否则容易出现下面这样的报错;

其他更详细的配置和说明可以去看官方文档:
参考文档
benphelps/homepage: A homepage (or startpage) for my local network.
地址:
I've created a new self-hosted dashboard. : selfhosted
地址:
@所有人:写文不易,如果你都看到了这里,请点个赞和在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。
(编辑:晋中站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|