轻量高颜值Docker面板Yacht,解决容器管理繁琐

前言

在自托管、NAS以及服务器运维场景中,Docker已经成为部署各类服务的主流方案。但容器数量多了之后,管理就会变得十分棘手:纯命令行操作需要记忆大量参数,频繁敲docker psdocker logsdocker volume等命令,上手门槛高,排查问题效率低下;而大家熟知的Portainer虽然功能完备,但界面风格老旧,部分功能层级深,整体偏重,长时间使用体验并不清爽。

很多运维爱好者都希望找到一款兼顾轻量、颜值、实用性的可视化面板,不用复杂部署,打开网页就能直观管控全部Docker资源。Yacht就是这样一款开源Docker管理面板,它摒弃了臃肿的设计,采用现代简约UI,体积小巧,资源占用低。

它完整覆盖容器启停、日志查看、环境变量修改、镜像管理、网络与存储卷维护等日常运维核心能力,同时对普通用户十分友好,无论是Linux服务器,还是飞牛fnOS、极空间这类NAS设备,都可以快速部署。不用深挖Docker底层命令,图形化点点鼠标就可以完成绝大多数日常维护工作,大幅降低容器管理的繁琐程度。

不过初次使用Yacht时,很多人会踩坑,比如默认账号密码、登录失败、权限配置、外部访问等问题。本文将从部署命令、初始登录排错、基础功能实操、安全加固等维度完整讲解,带你从零上手Yacht,替换传统Docker管理工具。

image-20260818115227177

1.什么是Yacht?

Yacht是一款开源、轻量、高颜值的Docker可视化Web管理面板,可以看作Portainer的现代化平替工具,专门用来简化Docker的日常运维工作。

传统操作Docker,需要熟练记忆大量docker命令,查看容器、修改环境变量、查看日志、管理镜像卷都要在终端敲指令,容器多的时候效率很低。虽然Portainer是老牌主流面板,但UI设计老旧,部分操作层级繁琐。Yacht就在这个背景下诞生,主打现代简洁界面,资源占用更小。

✨核心特点

  1. 界面现代美观UI风格清爽,深色模式原生支持,布局直观,对比Portainer视觉体验提升明显,适合服务器、NAS(飞牛fnOS、极空间等)环境使用。
  2. 核心Docker能力全覆盖 网页端可视化完成绝大多数运维操作:容器启停 / 重启 / 删除、查看实时容器日志、编辑环境变量、端口映射;管理镜像、网络、数据卷;查看容器资源占用状态。日常 90% 的操作,不用再登录SSH敲命令。
  3. 部署极其简单 本身就是一个Docker容器,一条docker run或者docker‑compose即可完成部署,不需要额外安装依赖,几分钟就能跑起来。默认内置账号 admin@yacht.local,默认密码 pass,登录后务必修改密码保障安全。
  4. 轻量化资源消耗 占用内存CPU很低,低配小服务器、性能有限的NAS设备也能流畅运行。

📌适合什么人用

  • 自托管爱好者,平时经常部署各类Docker服务
  • NAS 用户,不想频繁SSH登录设备管理容器
  • 不想死记大量docker命令,希望网页点一点管理容器
  • 厌倦Portainer老旧界面,想要换现代化管理面板

⚠️局限性

Yacht主打日常基础容器管理,对比Portainer,高级功能会更少,不支持复杂的栈编排高级编辑等场景,更适合个人、家庭自用,不太适合大型生产环境。

2.前提条件

2.1ssh远程连接到极空间

  • 开启【SSH 服务】
  • 使用终端(Windows PowerShell / Mac Terminal)登录:
ssh root@IP

没有ssh的小伙伴可以参考这篇文章:

连接成功:极空间别再吃灰了!开启SSH,秒变全能服务器! – cpolar 极点云官网

image-20260522154032880

2.2验证docker是否开启

使用命令:

docker -v 
systemctl status -v

没有docker的小伙伴可以参考这篇文章:极空间开箱实录:从拆箱到远程访问保姆级教程,30分钟上手! – cpolar 极点云官网

image-20251017103712618

3.部署Yacht

在开始部署之前,确保你的系统已经安装了Docker。可以通过以下命令检查 Docker 是否已安装:

docker --version

image-20260507155742946

首先创建一下安装的目录并进入到该目录:

mkdir -p /docker/Yacht
chmod -R 777 /Yacht

fcd4fa4742b3e4a5d4811cef142853ed

创建并编辑 docker-compose.yml文件:

vi 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
      - ./config:/config
    restart: unless-stopped

4c2984095f3ab03c5e6beeccc3a6f5c3

启动容器:

docker-compose up -d

7f59308c66bc65942915e9a195165c1a

验证docker容器是否启动成功:

docker ps

f4d8f551aeaa5aa2f6c1085c2975ddaa

部署完成后,在浏览器中输入 http://极空间IP:8181 就能看到Yacht的界面:

9e6438a409ebae77ae9a2a0f4809812d

4.使用Yacht

使用默认账号密码登录:默认内置账号 admin@yacht.local,默认密码 pass,登录后务必修改密码保障安全。

647881f1ad1f2e3b8b333e84b5c80fd4

登录后我们就可以看到容器信息:

Dashboard主页面板界面,深色主题搭配绿色标题栏,集中展示本机全部Docker容器运行状态,直观呈现每个容器的CPU、内存占用情况。页面中可以看到blinko‑postgres、blinko‑website、linkding、noco、outline、outline‑postgres、outline‑redis、yacht共8个容器

image-20260818105809381

Apps应用列表页面,采用黑绿配色界面,以表格形式统一管理所有Docker容器,展示容器名称、所属项目、运行状态、镜像、映射端口以及创建时间,页面顶部提供新增应用、检查更新、刷新、列配置和搜索功能;列表中yacht、noco、outline等绝大多数容器处于running运行状态,仅neko为created已创建未启动状态,同时清晰标注各服务对外开放端口与镜像版本,可直观管理、查阅本机全部Docker应用实例。

image-20260818105953648

在这里可以编辑容器起停删除等操作:

image-20260818110325988

Yacht的单个容器详情INFO信息页,针对yacht容器展示完整配置,顶部可切换信息、进程、日志、统计四个标签,提供编辑、启动、停止、重启、强制终止、删除等容器控制按钮;页面展示容器镜像、ID、运行状态,罗列环境变量,同时显示网络端口映射信息,以及存储挂载配置,能完整查看容器端口、挂载卷、环境变量等全部参数,直接在网页界面完成容器管控与配置查阅。

image-20260818112524718

Yacht的用户信息配置页面,从右上角账号下拉菜单进入,支持查看账号信息、修改登录密码,还可以管理API密钥,当前暂无已创建的密钥;在此页面可以完成账号安全相关设置,实现密码更新、生成API调用凭证,用于对接外部程序调用Yacht接口,同时页面也提供登出账号的入口,用来管理当前admin@yacht.local管理员账户。

image-20260818112755598

将Yacht与cpolar内网穿透搭配使用,无需配置公网IP、路由器端口转发,借助cpolar可以把本地的Yacht Docker管理面板暴露到公网环境,随时随地通过外网访问Yacht界面,远程查看容器运行状态、启停服务、调整容器配置,实现异地远程管理家里或者内网服务器上全部Docker容器,cpolar提供安全公网地址,省去复杂网络设置,轻松在外网操作Yacht完成整套容器运维工作。

5.安装cpolar实现随时随地开发

5.1 什么是cpolar?

cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。

5.2 部署cpolar

cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。

❤️以下是安装cpolar步骤:

官网在此:https://www.cpolar.com

使用一键脚本安装命令:

sudo curl https://get.cpolar.sh | sh

image-20250725104019896

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

22e5adfaf290a17fc3384bb296055259

Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

8a6698b1bf26d64ba3645827fbfb1c29

6.配置公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:yacht,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8181
  • 域名类型:随机域名
  • 地区:选择China Top

image-20260818153810869

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。

image-20260818154145022

访问成功。

image-20260818154203777

7.保留固定公网地址

使用cpolar为其配置二级子域名(cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站),该地址为固定地址,不会随机变化。

image-20250918151358733

点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是yacht,大家可以自定义。填写备注信息,点击保留。

image-20260818155648107

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20260818155716667

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20260818155756801

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20260818155837743

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

image-20260818155856430

总结

Yacht是一款界面清爽美观的轻量级Docker可视化管理面板,告别命令行操作容器的繁琐,可视化面板可直观监控容器资源占用、查看全部应用列表,一键完成容器启停、重启、配置查看与修改,还支持账号密码与API密钥管理;搭配cpolar内网穿透,无需公网IP即可把Yacht发布到公网,随时随地远程管理内网环境下所有Docker容器,大幅降低自托管服务的运维门槛。

感谢您对本篇文章的喜爱,有任何问题欢迎留言交流。cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

Share:

发表回复

目录

On Key

推荐文章