【有趣好玩的Docker项目-Docker Compose部署】Yacht可视化管理docker服务-有应用市场快速部署docker服务【yacht】

🛳️ 使用 Yacht 可视化管理 Docker 服务

Yacht 是一个轻量级的 Web UI,用于管理 Docker 容器和 Compose 项目。它的特色是内置 应用市场(App Store),可以快速部署常见的 Docker 服务(如数据库、媒体服务、开发工具),非常适合个人和小团队使用。

📂 目录结构规划

建议将 Yacht 单独放在 /opt/docker-stack/yacht/ 下:

代码

/opt/docker-stack/yacht/

├─ compose.yaml

└─ data/

   ├─ .env

   └─ README.md

⚙️ 环境变量配置(data/.env)

env

YACHT_PORT=8000

🐳 Docker Compose 配置(compose.yaml)

yaml

name: yacht

networks:

  web_net:               # 与其他服务共用的网络,方便反向代理或互通

    external: true       # 需提前创建:docker network create web_net

services:

  yacht:                 # service name:推荐在反代或其他容器中引用这个名字

    image: selfhostedpro/yacht:latest

    container_name: yacht   # container name:宿主机上唯一标识,便于 docker ps / logs 管理

    restart: unless-stopped

    env_file:

      – ./data/.env

    volumes:

      – /var/run/docker.sock:/var/run/docker.sock   # 必须挂载 Docker socket

      – ./data:/config                             # 保存配置和数据库

    ports:

      – “${YACHT_PORT}:8000”                        # 外部访问端口

      # – “127.0.0.1:${YACHT_PORT}:8000”            # 如果只想本机访问,可取消注释

    networks:

      – web_net

🔑 Service Name vs Container Name

service name (yacht)

在同一个网络中,其他容器(如 Caddy)可以通过 yacht:8000 访问。

推荐在反代配置中使用 service name。

container name (yacht)

宿主机上唯一标识,便于 docker ps、docker logs yacht 管理。

不建议在跨容器访问时使用。

📑 README.md(保存到 data 目录)

markdown

# Yacht 部署文档

## 目录结构

/opt/docker-stack/yacht/ ├─ compose.yaml └─ data/ ├─ .env └─ README.md

代码

## 环境变量 (.env)

– `YACHT_PORT`:宿主机映射端口(默认 8000)

## 网络配置

– 使用自定义网络 `web_net`,需提前创建:

  “`bash

  docker network create web_net

这样可以与其他容器(如 Caddy/Nginx)互通,Caddyfile 可直接写:

代码

yacht.example.xyz {

  reverse_proxy yacht:8000

}

启动与停止

bash

cd /opt/docker-stack/yacht

docker compose up -d      # 启动

docker compose down       # 停止并删除容器

docker compose restart    # 重启

升级与回滚

升级:

bash

docker compose pull && docker compose up -d

回滚: 修改 compose.yaml 中镜像标签为上一个版本或 digest,然后:

bash

docker compose up -d

验证

浏览器访问 http://服务器IP:8000 → 验证直连

如果有反代(Caddy/Nginx),访问 https://yacht.example.xyz

使用说明

默认账号:admin@yacht.local / pass

登录后即可看到 应用市场(App Store),可以一键部署常见服务。

Yacht 会自动识别 /var/run/docker.sock 挂载的容器,支持启动、停止、查看日志。

配置文件和数据库保存在 ./data,迁移时只需打包整个目录。

注意事项

Yacht 必须挂载 /var/run/docker.sock,否则无法管理容器。

建议通过反代启用 HTTPS,保证管理界面的安全性。

service name 用于容器间互通,推荐在反代配置里使用。

container name 用于宿主机管理,便于查看日志和状态。

代码

## 🚀 总结  

– Yacht 提供了一个可视化界面,支持 **应用市场快速部署**,比 Dockge 更适合新手和轻量化场景。  

– 通过 `web_net` 网络,可以与反向代理(Caddy/Nginx)互通,实现统一的 HTTPS 管理。  

– 目录结构清晰,迁移时只需打包整个 `/opt/docker-stack/yacht/` 目录即可。  

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇