用Yacht管理docker容器
今天是六一儿童节,祝大小朋友们节日快乐!
从今天开始起,防范区的上海市民可以自由出入小区了。始于愚人节,终于儿童节,整整两个月时间,终于迎来了期盼已久的自由和正常。
周一上午的的核酸可能是我们最后一次集体核酸,因为当天下午已经把棚子都撤掉了,但抗原还是一天两次的做着,周二、周三都是。
周二发了最后一拨物资,同时也接到了公司通知,6 月 6 日上班,这么吉利的开工日期,希望未来的日子从此都是坦途,让我们全力以“复”。
什么是 Yacht ?
Yacht 是一个用于管理 docker 容器的 Web 界面,重点是提供一键式部署的模板。可以把它想象成一个分散的服务器应用商店,任何人都可以为其制作软件包。
安装
与容器相关的应用,都需要绑定挂载 /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 守护进程进行通信。
图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd
但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装
命令行安装还是比较简单的,用 SSH 客户端连上群晖,执行下面的命令
老苏常用的 SSH 客户端主要是 Finalshell 和 PuTTY
# 在 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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
或者你可以用 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
1
2
3
4
5
6
7
8
9
10
11
执行下面的命令
# 在 docker 中新建目录 yacht 和子目录 config
mkdir -p /volume2/docker/yacht/config
# 进入目录
cd /volume2/docker/yacht
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d
1
2
3
4
5
6
7
8
9
10
也可以将 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/
————————————————
版权声明:本文为CSDN博主「杨浦老苏」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wbsu2004/article/details/125078037
用Yacht管理docker容器的更多相关文章
- [docker] 管理docker容器中的数据
之前我们介绍了Docker的基本概念(前面的没翻译...),了解了如何使用Docker镜像进行工作,并且学习了网 络和容器之间的链接.这一节我们将讨论如何管理容器中及容器之间的数据. 我们将查看下面两 ...
- 无需安装 vsftpd , 直接使用 FTP 来管理 docker 容器中的文件
无图无真相,先放个效果图: 背景 使用 docker 来跑一些服务很方便,但是有的时候想管理容器里面的文件却很麻烦 -- 一般常规做法有3种: 通过数据卷或数据卷容器的方式 启动容器的时候时候 ...
- Docker容器管理——Docker容器常用命令
1.查看所有的容器 docker ps 2.查看运行的容器 docker ps -a 3.启动.停止.重启docker容器 docker start ... docker stop ... docke ...
- docker-compose批量管理docker容器
# docker-compose编排工具 #批量管理(构建.启动容器) #centos7环境准备#安装docker-ce #安装docker-compose v1. sudo curl -o /usr ...
- Docker系列四: 使用UI管理docker容器
一.什么是Portainer? Portainer是Docker的图形化管理工具,提供状态显示面板.应用模板快速部署.容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作).事件日志显示.容 ...
- 管理docker容器
如果在容器中启动sshd,存在开销和攻击面增大的问题.同时也违反了Docker所倡导的一个容器一个进程的原则. docker attach 37d61466c69e \\注意:如果在stdin中exi ...
- 拾遗:使用 systemd-journald 管理 Docker 容器日志
在 docker.service 文件中的 ExecStart 字段中,添加(或:docker run --log-driver=journald): --log-driver=journald \ ...
- [CoreOS 转载] CoreOS实践指南(七):Docker容器管理服务
转载:http://www.csdn.net/article/2015-02-11/2823925 摘要:当Docker还名不见经传的时候,CoreOS创始人Alex就预见了这个项目的价值,并将其做为 ...
- Docker 容器管理:rancher
Rancher:https://www.cnrancher.com/ 是一个开源的企业级全栈化容器部署及管理平台. 定位上和 K8s 比较接近,都是通过 web 界面赋予完全的 docker 服务编排 ...
- 【docker专栏8】使用IDEA远程管理docker镜像及容器服务
使用命令行的方式管理服务器镜像及容器是运维人员最常用的方式,但是有的时候我们不得不远程操作docker或者是面向对docker并不熟悉的技术人员提供能力(配置管理员.测试人员),这种情况下图形界面就有 ...
随机推荐
- HarmonyOS—使用Web组件加载页面
页面加载是Web组件的基本功能.根据页面加载数据来源可以分为三种常用场景,包括加载网络页面.加载本地页面.加载HTML格式的富文本数据. 页面加载过程中,若涉及网络资源获取,需要配置ohos.pe ...
- HDC2021技术分论坛:跨端分布式计算技术初探
作者:zhengkai,分布式通信首席技术专家 当今的移动应用都向着智能化和多样化方向发展,例如AI辅助,VR/AR应用,沉浸式游戏等.然而现实中的移动设备,因为便携性要求受限于尺寸.电池容量以及温控 ...
- 本周三晚19:00Hello HarmonyOS应用篇第7课—分布式应用开发
6月15日19:00 Hello HarmonyOS系列应用篇迎来的本系列直播课的最后一课,将会有怎样的精彩呈现呢? 万物互联的时代已经来临,如果你想运用过往的技术,开发一个有"跨设备操 ...
- Vim 安装与基础操作指南
0x00 链接 Vim 官网 Vim GitHub Vim 中文文档 0x01 准备 (1)下载与安装 在官网地址找到 Download 标签,在其中根据操作系统选择相应的版本,以下以 Windows ...
- 重新点亮linux 命令树————screen 命令和系统日志[二十四]
前言 简单介绍一下screen 正文 因为我们终端关闭后,终端就消失了,故而希望有终端保持. 1.yum install screen 进行安装. 2.使用screen 进行进入 3.然后打开tail ...
- 第四章:if else switch使用
/* * @Issue: 输入整数a和b,若a²+b²大于100,则输出a²+b²之和的百位以上的数字,否则直接输出a²+b²的和 * @Author: 一届书生 * @LastEditTime : ...
- Windows家庭版开启远程桌面的方法
一.背景介绍 Windows家庭版提示不支持远程桌面,如下图Windows11家庭版: 本文将介绍一种Windows家庭版开启远程桌面的方法,分为开启远程桌面设置.配置问题排查及解决: 安装远程桌面补 ...
- uniapp小程序页面实现元素与胶囊进行居中对齐
无论是否为uni,关键在于获取胶囊中点的位置,如果是原生小程序根据小程序文档获取,其余逻辑处理是一致的 代码语法都只是技术选择,重点是逻辑处理,对于技术的运用,代码技术好比是积木,好的程序就是好的组合 ...
- HL7消息类型
HL7消息有很多不同的类型,每种都有其自己的独特用途和消息内容.以下是常见的HL7消息类型的列表. Message Type Description HL7 ADT Admit, Discharge ...
- 力扣378(java&python)-有序矩阵中第 K 小的元素(中等)
题目: 给你一个 n x n 矩阵 matrix ,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素.请注意,它是 排序后 的第 k 小元素,而不是第 k 个 不同 的元素. 你必须找到一个 ...