用Yacht管理docker容器

在这里插入图片描述

今天是六一儿童节,祝大小朋友们节日快乐!

从今天开始起,防范区的上海市民可以自由出入小区了。始于愚人节,终于儿童节,整整两个月时间,终于迎来了期盼已久的自由和正常。

周一上午的的核酸可能是我们最后一次集体核酸,因为当天下午已经把棚子都撤掉了,但抗原还是一天两次的做着,周二、周三都是。

周二发了最后一拨物资,同时也接到了公司通知,6 月 6 日上班,这么吉利的开工日期,希望未来的日子从此都是坦途,让我们全力以“复”。


什么是 Yacht ?

Yacht 是一个用于管理 docker 容器的 Web 界面,重点是提供一键式部署的模板。可以把它想象成一个分散的服务器应用商店,任何人都可以为其制作软件包。

在这里插入图片描述
在这里插入图片描述

安装

与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainerwatchtowerGlancesNetdatalazydocker 等。

什么是 /var/run/docker.sock ?

/var/run/docker.sockDocker API 的主要入口,简单地说,它是 Docker 守护进程(Docker daemon)默认监听的 Unix 域套接字(Unix domain socket),容器中的进程可以通过它与 Docker 守护进程进行通信。

在这里插入图片描述

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd

但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装

命令行安装还是比较简单的,用 SSH 客户端连上群晖,执行下面👇的命令

老苏常用的 SSH 客户端主要是 FinalshellPuTTY

# 在 docker 中新建目录 yacht 和子目录 config
mkdir -p /volume2/docker/yacht/config

# 进入 yacht
cd /volume2/docker/yacht

# 启动容器
docker run -d \
   --name yacht \
   -p 8181:8000 \
   -v /var/run/docker.sock:/var/run/docker.sock \
   -v /volume2/docker/yacht/config:/config \
   --restart unless-stopped \
   selfhostedpro/yacht

在这里插入图片描述

或者你可以用 docker-compose,将下面的内容保存为 docker-compose.yml

version: "3"
services:
  yacht:
    image: selfhostedpro/yacht
    container_name: yacht
    ports:
      - 8181:8000
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /volume2/docker/yacht/config:/config
    restart: unless-stopped

执行下面的命令

# 在 docker 中新建目录 yacht 和子目录 config
mkdir -p /volume2/docker/yacht/config

# 进入目录
cd /volume2/docker/yacht

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

也可以将 docker-compose.yml 的内容放到 portainer 中执行

环境变量

Yacht 中可以使用下面的环境变量。这些变量是可选项,不是强制性的,可以根据自己的需要添加

可变
PUID设置容器将运行的 userid
PGID设置容器将运行的 groupid
SECRET_KEY将此设置为随机字符串可确保您在 Yacht 重新启动之间不会被注销
ADMIN_EMAIL这将设置默认 Yacht 用户的电子邮件
DISABLE_AUTH这将禁用 Yacht 后端的身份验证。除非您使用 Authelia 之类的东西来管理身份验证,否则不建议这样做。
DATABASE_URL如果您想让 Yacht 使用 SQL 之类的数据库而不是内置的 sqlite,您可以将这些信息按以下格式放在此处:postgresql://user:password@postgresserver/db
COMPOSE_DIR这是容器内的路径,其中包含具有 docker compose 项目的文件夹。

使用

在浏览器中输入 http://群晖IP:8181 就能看到主界面

默认登录名是 admin@yacht.local,密码是 pass

在这里插入图片描述

登录成功后就能看到主界面

在这里插入图片描述

记得修改邮件和密码

在这里插入图片描述

小结

界面看着比 portainer 要好看一些,但是比较卡。

功能上来说该有的都有,但感觉还是比较早期,期待会越来越好吧

在这里插入图片描述

参考文档

SelfhostedPro/Yacht: A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments. Think of it like a decentralized app store for servers that anyone can make packages for.
地址:https://github.com/SelfhostedPro/Yacht

Install Yacht | Yacht
地址:https://yacht.sh/docs/Installation/Install/

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值