Semaphore UI 主机
Semaphore UI 是一个用于 Ansible、Terraform、OpenTofu 和 PowerShell 作业的网络控制台,可从浏览器使用,而不需要安装 tower。
- 一键 部署
- 15 GB 所需磁盘空间
- 1 GB 内存 所需内存
- 来自 2 € 价格
您在 AvaHost 上获得的服务
一键部署、自定义域名、免费HTTPS、自动应用更新和定期备份是每个云应用的标准配置。您可以在一台服务器上运行多个应用,并且包括终端访问。
此模板不包含数据库容器。

技术
- Docker 镜像
- semaphoreui/semaphore:latest
- 默认端口
- 0

Semaphore UI 的工作原理
Semaphore UI 是 semaphoreui 项目的网络应用程序。操作员登录、存储清单和密钥材料(应用程序会加密),并从模板启动 Ansible、Terraform、OpenTofu 或 PowerShell 任务。Docker 镜像是 semaphoreui/semaphore。文档支持的环境包括 MySQL、PostgreSQL 或 SQLite。此基础配置使用 SQLite,因此不需要单独的数据库容器。如果您的需求增长,可以稍后迁移到 MySQL 或 PostgreSQL。
服务器可以自己运行任务,也可以将任务交给使用令牌注册的 Semaphore Runner 进程。Runner 是此目录中的单独 AvaHost 应用程序,因为它们是不同的容器 semaphoreui/runner,不提供网站服务。UI 镜像可以从挂载到配置目录的需求文件中安装额外的 Python 包。该文件由您提供。
Semaphore UI 的主要功能
您可以在浏览器中获得项目、模板、计划和任务日志。LDAP 是可选的,可指向您已有的目录。管理员账户在首次启动时从环境变量创建。访问密钥加密密钥必须由您设置并保存,因为它保护存储的密钥。丢失它是应用程序恢复问题,不是平台备份可以在您未保存的情况下重新生成的问题。
AvaHost 自动更新 UI 并按计划备份其数据。Playbook 仍然来自您附加的 Git 存储库。这些远程存储库和任务接触的任何云账户都不在托管价格范围内。Semaphore UI 不包括应用程序邮件。
Semaphore UI 与 Ansible AWX 的对比
Semaphore UI
Semaphore UI 是用于同一系列自动化作业的较小控制台。Ansible AWX 是与 Ansible Tower 产品一致的上游项目,具有自己的安装规模和发布周期。当您需要该特定项目时选择 AWX。当您想要更轻量级的网络应用程序且需要外部 Runner 时选择 Semaphore UI。
Ansible AWX
它们都可以启动 Ansible。但它们的数据库布局和升级路径不同。
谁使用 Semaphore UI
从工作站运行 playbook 的团队使用 Semaphore UI。它也适合需要任务历史记录的家庭实验室。如果您的标准是 AWX,或者您只需要 Runner 而已在其他地方有 UI,则可以跳过它。在这种情况下,请查看 Semaphore Runner 应用程序。

自托管 Semaphore UI:要求和成本
基础配置为 1024 MB RAM 和半个 CPU 核心,镜像为 semaphoreui/semaphore,磁盘上使用 SQLite。在 AvaHost 上,Semaphore UI 的推荐最低配置是 Plan 1,价格为 €2。Semaphore UI 套餐包括一键部署、主机名、自动 HTTPS、自动更新和定期备份。Semaphore UI 不需要专用公网 IP。Runner、外部数据库和您的 playbook 配置的机器是分开的。
F.A.Q
Semaphore UI 在计划 1 上起价 €2。这包括网络控制台和 SQLite 文件,不包括一组运行器,也不包括您的 playbook 更改的服务器。如果您更喜欢,可以在上游使用 MySQL 或 PostgreSQL,这将是额外容量。在任务内使用的云账户仍然保留在这些提供商的账单上。
是的。将 DNS 指向部署,自动化 HTTPS 覆盖浏览器控制台。您稍后添加的运行器必须能够访问该 URL 以进行注册。您管理区域、管理员账户和存储密钥的加密密钥。
AvaHost 自动更新 Semaphore UI,并按计划备份应用数据,包括在使用 SQLite 数据库时的备份。加密密钥和 Git 远程仓库需要由您自行恢复。更新后,打开一个过去的任务并运行一个无害的模板,然后再信任生产 playbook。
并非每个安装都需要。Semaphore UI 可以在自己的容器中执行任务。当您希望任务在另一台主机、另一个网络或远离 Web 进程的地方运行时,请添加 Semaphore Runner。Runner 是一个独立的应用程序和独立的容器。它没有自己的访问者网站。

