Skip to content

容器 (Docker) 服务器

集成到 RoqueOS 中的 Docker 容器可视化管理器。通过原生集成替换 Portainer/Yacht/CasaOS: 应用直接在 RoqueOS 桌面打开,无需切换标签页,无需手动配置反向代理。

RoqueOS 上的 Docker App Store

为什么存在

传统的自托管有 3 个慢性问题:

  1. 安装很烦 — 您阅读 30 步骤的教程,粘贴 docker-compose.yml,调整卷,调整防火墙
  2. 更新是手动的 — 您几个月忘记 docker pull,使用易受攻击的版本
  3. 访问令人困惑 — 每个应用都有自己的 URL,每个公开的端口变成不同的屏幕

RoqueOS 解决了 3 个:

  • ✅ 从目录中 一键安装 任何应用(155+ 个精选应用)
  • 可选的自动更新 或通过 UI 批量手动
  • 应用在 RoqueOS 内打开 作为桌面窗口(反向代理自动配置)

App Store Docker — 精选目录

155+ 个 Docker 应用 的目录,准备好一键安装:

类别流行应用
媒体Plex、Jellyfin、Emby、Navidrome、Audiobookshelf
下载qBittorrent、Sonarr、Radarr、Lidarr、Bazarr、Prowlarr、Jackett
智能家居Home Assistant、Node-RED、ESPHome、Zigbee2MQTT
个人云Nextcloud、Seafile、Syncthing、FileBrowser
密码 / 笔记Bitwarden、Vaultwarden、Joplin Server、Memos
监控Grafana、Prometheus、Uptime Kuma、Glances、Netdata
开发Gitea、Drone CI、Verdaccio、Portainer、Code Server
通信Mattermost、Rocket.Chat、Matrix Synapse、Jitsi Meet
生产力Vikunja、Wekan、AppFlowy、Trilium、BookStack
可视化Photoview、Immich、PiGallery2、Lychee
广告拦截 / DNSPi-hole、AdGuard Home、NextDNS
VPNWireGuard、OpenVPN、Tailscale
数据库PostgreSQL、MySQL、Redis、MongoDB、MinIO、InfluxDB

完整目录 →

一键安装

  1. 在 Launchpad 打开 Containers
  2. App Store 选项卡 → 按类别搜索或浏览
  3. 在应用卡片上单击"安装"
  4. 模态: 调整端口(自动建议无冲突)、RAM、卷
  5. 确认 → 容器下载、启动、配置代理
  6. ~30-90s 后,应用出现在 Launchpad 中准备使用

应用安装模态

导入现有的 docker-compose

您已经在服务器上有不来自目录的 Docker 堆栈?导入:

通过 UI("导入"选项卡):

  • 直接粘贴 docker run -d ...
  • 或粘贴整个 docker-compose.yml

解析器检测 image、ports、volumes、env vars、networks、depends_on — 转换为内部模型 + 启动容器。它们与其他任何东西一样出现在"已安装"列表中。

通过 CLIroqueos-cli):

bash
# 在终端内
docker run -d --name my-app -p 9000:9000 myimage:latest
# ~5s 后自动出现在"已安装"中(UI 进行轮询)

管理容器

已安装 选项卡列出所有具有实时信息的容器:

已安装容器列表

每行:

  • 🟢 / 🔴 状态(running / stopped / error)
  • 📊 实时 CPU + RAM(每 5s 更新)
  • 🔗 映射的端口 + "Open"链接以在 Roque Browser 中打开
  • 📅 启动多久 / 上次更新时间
  • ⚙️ 操作菜单: Start/Stop/Restart、Logs、Terminal、Update、Remove

生命周期操作

操作它做什么
Start启动已停止的容器
Stop停止而不删除(卷保留)
RestartStop + Start(解决 80% 的挂起)
Updatedocker pull + 重新创建(保留卷)
Reinstall删除容器 + 从目录重新安装(保留数据)
RemoveStop + 删除。确认模态 要求选择是否保留卷

实时日志

单击"Logs" → 带有 docker logs -f 的窗口。按级别过滤(info/warn/error)、文本搜索、自动滚动、复制。

容器使用监控器

容器内的终端

单击"Terminal" → 容器内的 bash(或 sh)shell。用于调试、更改配置、临时安装依赖项。

bash
# 示例: 调查 Plex 配置
plex# cat /config/Library/Application\ Support/Plex/Preferences.xml

安装后的配置

每个容器都有 ⚙️"设置":

  • 🏷️ 友好的名称(在 Launchpad 中显示)
  • 🖼️ 自定义图标
  • 🌐 公开的端口(无需重新创建即可更改)
  • 💾 映射的卷(查看/编辑/添加)
  • 🔐 环境变量(敏感的隐藏)
  • 🚀 重启策略(unless-stoppedalwayson-failureno
  • 📡 网络桥

自动反向代理

当您安装一个公开端口的容器时,RoqueOS 自动:

  1. 检测内部端口(例如: Plex 在 32400 上侦听)
  2. 映射到可用的外部端口(例如: 32400 或下一个空闲)
  3. roqueos-server 上配置反向代理 /proxy/apps/<containerId>
  4. 应用作为 <server>/proxy/apps/<id> 的桌面窗口可用

结果: 您打开 Plex 作为 RoqueOS 应用,无需调整 DNS / Cloudflare / nginx。

要公开公开(从任何地方访问),只需与 Cloudflare Tunnel 结合即可 — tunnel 获取反向代理并通过自动 HTTPS 公开。

App Manager — 在一个地方管理一切

App Manager 选项卡:

  • 📊 仪表板: 容器总和使用的 CPU/RAM/磁盘
  • 🔄 批量更新: 标记多个容器 + 1 键"更新所有"
  • 🧹 清理: 通过 UI 控制的 docker system prune(在不影响活动容器的情况下释放空间)
  • 🚦 健康检查: 列出在最近 24 小时内未通过健康检查的容器

Mount-shared(在应用之间共享文件夹)

某些应用需要读/写同一文件夹 — 经典示例:

  • Sonarr/Radarr 通过 qBittorrent 下载文件 → /downloads 文件夹
  • Plex/Jellyfin 读取相同的 /downloads 文件夹(在整理后)

RoqueOS 知道这一点。当您安装一个清单中具有 MOUNT_SHARED_APPS 的应用时,/data/roqueos/shared/<category> 卷会自动出现。多个应用挂载它。

技术详细信息: 卷和备份

限制

  • 需要 GPU passthrough 的应用(带 Coral USB 的 Frigate 等) — 工作,但需要通过 UI 手动配置(传递 --device=/dev/X
  • 需要访问 Docker socket 的 Docker 容器(Portainer、Watchtower) — 可通过 UI 配置但带有安全警告(您实际上是给予 root)
  • 非常大的图像(>5GB) — 第一次安装很慢。考虑通过 Terminal 提前 docker pull

另请参阅