chore: format

This commit is contained in:
Sun-ZhenXing
2026-01-01 17:18:52 +08:00
parent 1c33225b70
commit 9c25970445
36 changed files with 450 additions and 300 deletions

View File

@@ -14,13 +14,18 @@ x-defaults: &defaults
services: services:
service-name: service-name:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}image:${VERSION:-latest} #! Use ${GLOBAL_REGISTRY} for a global registry prefix if defined
#! If not pulls from Docker Hub by default, use ${GHCR_REGISTRY} for GitHub Container Registry, etc.
#! e.g. ${GLOBAL_REGISTRY:-}httpd:${APACHE_VERSION:-2.4.62-alpine3.20}
#! Use ${SERVICE_NAME_VERSION} to specify the image version, e.g., 3.2.1
image: ${GLOBAL_REGISTRY:-}service-image:${SERVICE_NAME_VERSION:-3.2.1}
#! Do not add container_name to allow scaling and avoid name conflicts
ports: ports:
- "${PORT_OVERRIDE:-8080}:8080" - "${SERVICE_NAME_PORT_OVERRIDE:-8080}:8080"
volumes: volumes:
- service_data:/data - service_name_data:/data
environment: environment:
- TZ=${TZ:-UTC} - TZ=${TZ:-UTC} #! Set timezone, default to UTC
- ENV_VAR=${ENV_VAR:-default_value} - ENV_VAR=${ENV_VAR:-default_value}
healthcheck: healthcheck:
test: ["CMD", "command", "to", "check", "health"] test: ["CMD", "command", "to", "check", "health"]
@@ -38,4 +43,4 @@ services:
memory: ${SERVICE_NAME_MEMORY_RESERVATION:-128M} memory: ${SERVICE_NAME_MEMORY_RESERVATION:-128M}
volumes: volumes:
service_data: service_name_data:

View File

@@ -1,7 +1,11 @@
--- ---
applyTo: '**' applyTo: '**'
--- ---
Compose Anything helps users quickly deploy various services by providing a set of high-quality Docker Compose configuration files. These configurations constrain resource usage, can be easily migrated to systems like K8S, and are easy to understand and modify. Compose Anything represents a collection of high-quality, production-ready, and portable Docker Compose configuration files. The primary objective is to allow users to deploy services "out-of-the-box" with minimal configuration while maintaining industry best practices.
The architecture focuses on modularity, security, and orchestrator compatibility (e.g., easy migration to Kubernetes). The technical challenge lies in balancing simplicity (zero-config startup) with robustness (resource limits, health checks, multi-arch support, and security baselines).
## Constraints
1. Out-of-the-box 1. Out-of-the-box
- Configurations should work out-of-the-box with no extra steps (at most, provide a `.env` file). - Configurations should work out-of-the-box with no extra steps (at most, provide a `.env` file).
@@ -42,7 +46,7 @@ Compose Anything helps users quickly deploy various services by providing a set
- Least privilege: `cap_drop: ["ALL"]`, add back only whats needed via `cap_add`; - Least privilege: `cap_drop: ["ALL"]`, add back only whats needed via `cap_add`;
- Avoid `container_name` (hurts scaling and reusable network aliases); - Avoid `container_name` (hurts scaling and reusable network aliases);
- If exposing Docker socket or other high-risk mounts, clearly document risks and alternatives. - If exposing Docker socket or other high-risk mounts, clearly document risks and alternatives.
11. Documentation & discoverability 11. Documentation & Discoverability
- Provide clear docs and examples (include admin/initialization notes, and security/license notes when relevant); - Provide clear docs and examples (include admin/initialization notes, and security/license notes when relevant);
- Keep docs LLM-friendly; - Keep docs LLM-friendly;
- List primary env vars and default ports in the README, and link to `README.md` / `README.zh.md`. - List primary env vars and default ports in the README, and link to `README.md` / `README.zh.md`.
@@ -51,8 +55,15 @@ Reference template: [`compose-template.yaml`](../../.compose-template.yaml) in t
If you want to find image tags, try fetch url like `https://hub.docker.com/v2/repositories/library/nginx/tags?page_size=1&ordering=last_updated`. If you want to find image tags, try fetch url like `https://hub.docker.com/v2/repositories/library/nginx/tags?page_size=1&ordering=last_updated`.
Every service must have `.env.example`.
After update all of the services, please update `/README.md` & `/README.zh.md` to reflect the changes. After update all of the services, please update `/README.md` & `/README.zh.md` to reflect the changes.
## Final Checklist
1. Is .env.example present and fully commented in English?
2. Are CPU/Memory limits applied?
3. Is container_name removed?
4. Are healthcheck and service_healthy conditions correctly implemented?
5. Are the Chinese docs correctly punctuated with spaces between languages?
6. Have the root repository README files been updated to include the new service?
**注意**:所有中文的文档都使用中文的标点符号,如 “,”、“()” 等,中文和英文之间要留有空格。对于 Docker Compose 文件和 `.env.example` 文件中的注释部分,请使用英语而不是中文。请为每个服务提供英文说明 README.md 和中文说明 `README.zh.md` **注意**:所有中文的文档都使用中文的标点符号,如 “,”、“()” 等,中文和英文之间要留有空格。对于 Docker Compose 文件和 `.env.example` 文件中的注释部分,请使用英语而不是中文。请为每个服务提供英文说明 README.md 和中文说明 `README.zh.md`

222
README.md
View File

@@ -4,117 +4,117 @@ Compose Anything helps users quickly deploy various services by providing a set
## Supported Services ## Supported Services
| Service | Version | | Service | Version |
| ------------------------------------------------------------- | ---------------------------- | | ------------------------------------------------------------- | ------------------- |
| [Apache APISIX](./src/apisix) | 3.13.0 | | [Apache APISIX](./src/apisix) | 3.13.0 |
| [Apache Cassandra](./src/cassandra) | 5.0.2 | | [Apache Cassandra](./src/cassandra) | 5.0.2 |
| [Apache Flink](./src/flink) | 1.20.0 | | [Apache Flink](./src/flink) | 1.20.0 |
| [Apache HBase](./src/hbase) | 2.6 | | [Apache HBase](./src/hbase) | 2.6 |
| [Apache HTTP Server](./src/apache) | 2.4.62 | | [Apache HTTP Server](./src/apache) | 2.4.62 |
| [Apache Kafka](./src/kafka) | 7.8.0 | | [Apache Kafka](./src/kafka) | 7.8.0 |
| [Apache Pulsar](./src/pulsar) | 4.0.7 | | [Apache Pulsar](./src/pulsar) | 4.0.7 |
| [Apache RocketMQ](./src/rocketmq) | 5.3.1 | | [Apache RocketMQ](./src/rocketmq) | 5.3.1 |
| [Bifrost Gateway](./src/bifrost-gateway) | v1.3.54 | | [Bifrost Gateway](./src/bifrost-gateway) | v1.3.54 |
| [Bolt.diy](./src/bolt-diy) | latest | | [Bolt.diy](./src/bolt-diy) | latest |
| [Budibase](./src/budibase) | 3.23.0 | | [Budibase](./src/budibase) | 3.23.0 |
| [Bytebot](./src/bytebot) | edge | | [Bytebot](./src/bytebot) | edge |
| [Clash](./src/clash) | 1.18.0 | | [Clash](./src/clash) | 1.18.0 |
| [ClickHouse](./src/clickhouse) | 24.11.1 | | [ClickHouse](./src/clickhouse) | 24.11.1 |
| [Conductor](./src/conductor) | latest | | [Conductor](./src/conductor) | latest |
| [Dify](./src/dify) | 0.18.2 | | [Dify](./apps/dify) | 0.18.2 |
| [DNSMasq](./src/dnsmasq) | 2.91 | | [DNSMasq](./src/dnsmasq) | 2.91 |
| [Dockge](./src/dockge) | 1 | | [Dockge](./src/dockge) | 1 |
| [Docker Registry](./src/docker-registry) | 3.0.0 | | [Docker Registry](./src/docker-registry) | 3.0.0 |
| [DuckDB](./src/duckdb) | v1.1.3 | | [DuckDB](./src/duckdb) | v1.1.3 |
| [Easy Dataset](./src/easy-dataset) | 1.5.1 | | [Easy Dataset](./src/easy-dataset) | 1.5.1 |
| [Elasticsearch](./src/elasticsearch) | 8.16.1 | | [Elasticsearch](./src/elasticsearch) | 8.16.1 |
| [etcd](./src/etcd) | 3.6.0 | | [etcd](./src/etcd) | 3.6.0 |
| [Firecrawl](./src/firecrawl) | latest | | [Firecrawl](./src/firecrawl) | latest |
| [frpc](./src/frpc) | 0.64.0 | | [frpc](./src/frpc) | 0.64.0 |
| [frps](./src/frps) | 0.64.0 | | [frps](./src/frps) | 0.64.0 |
| [Gitea Runner](./src/gitea-runner) | 0.2.13 | | [Gitea Runner](./src/gitea-runner) | 0.2.13 |
| [Gitea](./src/gitea) | 1.24.6 | | [Gitea](./src/gitea) | 1.24.6 |
| [GitLab Runner](./src/gitlab-runner) | 17.10.1 | | [GitLab Runner](./src/gitlab-runner) | 17.10.1 |
| [GitLab](./src/gitlab) | 17.10.4-ce.0 | | [GitLab](./src/gitlab) | 17.10.4-ce.0 |
| [GPUStack](./src/gpustack) | v0.5.3 | | [GPUStack](./src/gpustack) | v0.5.3 |
| [Grafana](./src/grafana) | 12.1.1 | | [Grafana](./src/grafana) | 12.1.1 |
| [Halo](./src/halo) | 2.21.9 | | [Halo](./src/halo) | 2.21.9 |
| [Harbor](./src/harbor) | v2.12.0 | | [Harbor](./src/harbor) | v2.12.0 |
| [HashiCorp Consul](./src/consul) | 1.20.3 | | [HashiCorp Consul](./src/consul) | 1.20.3 |
| [IOPaint](./builds/io-paint) | latest | | [IOPaint](./builds/io-paint) | latest |
| [Jenkins](./src/jenkins) | 2.486-lts | | [Jenkins](./src/jenkins) | 2.486-lts |
| [JODConverter](./src/jodconverter) | latest | | [JODConverter](./src/jodconverter) | latest |
| [Kestra](./src/kestra) | latest-full | | [Kestra](./src/kestra) | latest-full |
| [Kibana](./src/kibana) | 8.16.1 | | [Kibana](./src/kibana) | 8.16.1 |
| [Kodbox](./src/kodbox) | 1.62 | | [Kodbox](./src/kodbox) | 1.62 |
| [Kong](./src/kong) | 3.8.0 | | [Kong](./src/kong) | 3.8.0 |
| [Langflow](./apps/langflow) | latest | | [Langflow](./apps/langflow) | latest |
| [Langfuse](./apps/langfuse) | 3.115.0 | | [Langfuse](./apps/langfuse) | 3.115.0 |
| [LibreOffice](./src/libreoffice) | latest | | [LibreOffice](./src/libreoffice) | latest |
| [libSQL Server](./src/libsql) | latest | | [libSQL Server](./src/libsql) | latest |
| [LiteLLM](./src/litellm) | main-stable | | [LiteLLM](./src/litellm) | main-stable |
| [Logstash](./src/logstash) | 8.16.1 | | [Logstash](./src/logstash) | 8.16.1 |
| [MariaDB Galera Cluster](./src/mariadb-galera) | 11.7.2 | | [MariaDB Galera Cluster](./src/mariadb-galera) | 11.7.2 |
| [Milvus Standalone Embed](./src/milvus-standalone-embed) | v2.6.7 | | [Milvus Standalone Embed](./src/milvus-standalone-embed) | v2.6.7 |
| [Milvus Standalone](./src/milvus-standalone) | v2.6.7 | | [Milvus Standalone](./src/milvus-standalone) | v2.6.7 |
| [Minecraft Bedrock Server](./src/minecraft-bedrock-server) | latest | | [Minecraft Bedrock Server](./src/minecraft-bedrock-server) | latest |
| [MinerU SGLang](./src/mineru-sglang) | 2.2.2 | | [MinerU SGLang](./src/mineru-sglang) | 2.2.2 |
| [MinerU vLLM](./builds/mineru-vllm) | 2.6.4 | | [MinerU vLLM](./builds/mineru-vllm) | 2.6.4 |
| [MinIO](./src/minio) | RELEASE.2025-09-07T16-13-09Z | | [MinIO](./src/minio) | 0.20251015 |
| [MLflow](./src/mlflow) | v2.20.2 | | [MLflow](./src/mlflow) | v2.20.2 |
| [MongoDB ReplicaSet Single](./src/mongodb-replicaset-single) | 8.2.3 | | [MongoDB ReplicaSet Single](./src/mongodb-replicaset-single) | 8.2.3 |
| [MongoDB ReplicaSet](./src/mongodb-replicaset) | 8.2.3 | | [MongoDB ReplicaSet](./src/mongodb-replicaset) | 8.2.3 |
| [MongoDB Standalone](./src/mongodb-standalone) | 8.2.3 | | [MongoDB Standalone](./src/mongodb-standalone) | 8.2.3 |
| [MySQL](./src/mysql) | 9.4.0 | | [MySQL](./src/mysql) | 9.4.0 |
| [n8n](./src/n8n) | 1.114.0 | | [n8n](./src/n8n) | 1.114.0 |
| [Nacos](./src/nacos) | v3.1.0 | | [Nacos](./src/nacos) | v3.1.0 |
| [NebulaGraph](./src/nebulagraph) | v3.8.0 | | [NebulaGraph](./src/nebulagraph) | v3.8.0 |
| [NexaSDK](./src/nexa-sdk) | v0.2.62 | | [NexaSDK](./src/nexa-sdk) | v0.2.62 |
| [Neo4j](./src/neo4j) | 5.27.4 | | [Neo4j](./src/neo4j) | 5.27.4 |
| [Netdata](./src/netdata) | latest | | [Netdata](./src/netdata) | latest |
| [Nginx](./src/nginx) | 1.29.1 | | [Nginx](./src/nginx) | 1.29.1 |
| [Node Exporter](./src/node-exporter) | v1.8.2 | | [Node Exporter](./src/node-exporter) | v1.8.2 |
| [OceanBase](./src/oceanbase) | 4.3.3 | | [OceanBase](./src/oceanbase) | 4.3.3 |
| [Odoo](./src/odoo) | 19.0 | | [Odoo](./src/odoo) | 19.0 |
| [Ollama](./src/ollama) | 0.12.0 | | [Ollama](./src/ollama) | 0.12.0 |
| [Open WebUI](./src/open-webui) | main | | [Open WebUI](./src/open-webui) | main |
| [Phoenix (Arize)](./src/phoenix) | 12.19.0 | | [Phoenix (Arize)](./src/phoenix) | 12.19.0 |
| [Pingora Proxy Manager](./src/pingora-proxy-manager) | v1.0.3 | | [Pingora Proxy Manager](./src/pingora-proxy-manager) | v1.0.3 |
| [Open WebUI Rust](./src/open-webui-rust) | latest | | [Open WebUI Rust](./src/open-webui-rust) | latest |
| [OpenCoze](./src/opencoze) | See Docs | | [OpenCoze](./src/opencoze) | See Docs |
| [OpenCut](./src/opencut) | latest | | [OpenCut](./src/opencut) | latest |
| [OpenList](./src/openlist) | latest | | [OpenList](./src/openlist) | latest |
| [OpenSearch](./src/opensearch) | 2.19.0 | | [OpenSearch](./src/opensearch) | 2.19.0 |
| [PocketBase](./src/pocketbase) | 0.30.0 | | [PocketBase](./src/pocketbase) | 0.30.0 |
| [Portainer](./src/portainer) | 2.27.3-alpine | | [Portainer](./src/portainer) | 2.27.3-alpine |
| [Portkey AI Gateway](./src/portkey-gateway) | latest | | [Portkey AI Gateway](./src/portkey-gateway) | latest |
| [PostgreSQL](./src/postgres) | 17.6 | | [PostgreSQL](./src/postgres) | 17.6 |
| [Prometheus](./src/prometheus) | 3.5.0 | | [Prometheus](./src/prometheus) | 3.5.0 |
| [PyTorch](./src/pytorch) | 2.6.0 | | [PyTorch](./src/pytorch) | 2.6.0 |
| [Qdrant](./src/qdrant) | 1.15.4 | | [Qdrant](./src/qdrant) | 1.15.4 |
| [RabbitMQ](./src/rabbitmq) | 4.1.4 | | [RabbitMQ](./src/rabbitmq) | 4.1.4 |
| [Ray](./src/ray) | 2.42.1 | | [Ray](./src/ray) | 2.42.1 |
| [Redpanda](./src/redpanda) | v24.3.1 | | [Redpanda](./src/redpanda) | v24.3.1 |
| [Redis Cluster](./src/redis-cluster) | 8.2.1 | | [Redis Cluster](./src/redis-cluster) | 8.2.1 |
| [Redis](./src/redis) | 8.2.1 | | [Redis](./src/redis) | 8.2.1 |
| [Renovate](./src/renovate) | 42.52.5-full | | [Renovate](./src/renovate) | 42.52.5-full |
| [Restate Cluster](./src/restate-cluster) | 1.5.3 | | [Restate Cluster](./src/restate-cluster) | 1.5.3 |
| [Restate](./src/restate) | 1.5.3 | | [Restate](./src/restate) | 1.5.3 |
| [SearXNG](./src/searxng) | 2025.1.20-1ce14ef99 | | [SearXNG](./src/searxng) | 2025.1.20-1ce14ef99 |
| [Sim](./apps/sim) | latest | | [Sim](./apps/sim) | latest |
| [Stable Diffusion WebUI](./src/stable-diffusion-webui-docker) | latest | | [Stable Diffusion WebUI](./src/stable-diffusion-webui-docker) | latest |
| [Stirling-PDF](./src/stirling-pdf) | latest | | [Stirling-PDF](./src/stirling-pdf) | latest |
| [Temporal](./src/temporal) | 1.24.2 | | [Temporal](./src/temporal) | 1.24.2 |
| [TiDB](./src/tidb) | v8.5.0 | | [TiDB](./src/tidb) | v8.5.0 |
| [TiKV](./src/tikv) | v8.5.0 | | [TiKV](./src/tikv) | v8.5.0 |
| [Trigger.dev](./src/trigger-dev) | v4.2.0 | | [Trigger.dev](./src/trigger-dev) | v4.2.0 |
| [TrailBase](./src/trailbase) | 0.22.4 | | [TrailBase](./src/trailbase) | 0.22.4 |
| [Valkey Cluster](./src/valkey-cluster) | 8.0 | | [Valkey Cluster](./src/valkey-cluster) | 8.0 |
| [Valkey](./src/valkey) | 8.0 | | [Valkey](./src/valkey) | 8.0 |
| [Verdaccio](./src/verdaccio) | 6.1.2 | | [Verdaccio](./src/verdaccio) | 6.1.2 |
| [vLLM](./src/vllm) | v0.13.0 | | [vLLM](./src/vllm) | v0.13.0 |
| [Windmill](./src/windmill) | main | | [Windmill](./src/windmill) | main |
| [ZooKeeper](./src/zookeeper) | 3.9.3 | | [ZooKeeper](./src/zookeeper) | 3.9.3 |
## MCP Servers ## MCP Servers

View File

@@ -4,117 +4,117 @@ Compose Anything 通过提供一组高质量的 Docker Compose 配置文件,
## 已经支持的服务 ## 已经支持的服务
| 服务 | 版本 | | 服务 | 版本 |
| ------------------------------------------------------------- | ---------------------------- | | ------------------------------------------------------------- | ------------------- |
| [Apache APISIX](./src/apisix) | 3.13.0 | | [Apache APISIX](./src/apisix) | 3.13.0 |
| [Apache Cassandra](./src/cassandra) | 5.0.2 | | [Apache Cassandra](./src/cassandra) | 5.0.2 |
| [Apache Flink](./src/flink) | 1.20.0 | | [Apache Flink](./src/flink) | 1.20.0 |
| [Apache HBase](./src/hbase) | 2.6 | | [Apache HBase](./src/hbase) | 2.6 |
| [Apache HTTP Server](./src/apache) | 2.4.62 | | [Apache HTTP Server](./src/apache) | 2.4.62 |
| [Apache Kafka](./src/kafka) | 7.8.0 | | [Apache Kafka](./src/kafka) | 7.8.0 |
| [Apache Pulsar](./src/pulsar) | 4.0.7 | | [Apache Pulsar](./src/pulsar) | 4.0.7 |
| [Apache RocketMQ](./src/rocketmq) | 5.3.1 | | [Apache RocketMQ](./src/rocketmq) | 5.3.1 |
| [Bifrost Gateway](./src/bifrost-gateway) | v1.3.54 | | [Bifrost Gateway](./src/bifrost-gateway) | v1.3.54 |
| [Bolt.diy](./src/bolt-diy) | latest | | [Bolt.diy](./src/bolt-diy) | latest |
| [Budibase](./src/budibase) | 3.23.0 | | [Budibase](./src/budibase) | 3.23.0 |
| [Bytebot](./src/bytebot) | edge | | [Bytebot](./src/bytebot) | edge |
| [Clash](./src/clash) | 1.18.0 | | [Clash](./src/clash) | 1.18.0 |
| [ClickHouse](./src/clickhouse) | 24.11.1 | | [ClickHouse](./src/clickhouse) | 24.11.1 |
| [Conductor](./src/conductor) | latest | | [Conductor](./src/conductor) | latest |
| [Dify](./src/dify) | 0.18.2 | | [Dify](./apps/dify) | 0.18.2 |
| [DNSMasq](./src/dnsmasq) | 2.91 | | [DNSMasq](./src/dnsmasq) | 2.91 |
| [Dockge](./src/dockge) | 1 | | [Dockge](./src/dockge) | 1 |
| [Docker Registry](./src/docker-registry) | 3.0.0 | | [Docker Registry](./src/docker-registry) | 3.0.0 |
| [DuckDB](./src/duckdb) | v1.1.3 | | [DuckDB](./src/duckdb) | v1.1.3 |
| [Easy Dataset](./src/easy-dataset) | 1.5.1 | | [Easy Dataset](./src/easy-dataset) | 1.5.1 |
| [Elasticsearch](./src/elasticsearch) | 8.16.1 | | [Elasticsearch](./src/elasticsearch) | 8.16.1 |
| [etcd](./src/etcd) | 3.6.0 | | [etcd](./src/etcd) | 3.6.0 |
| [Firecrawl](./src/firecrawl) | latest | | [Firecrawl](./src/firecrawl) | latest |
| [frpc](./src/frpc) | 0.64.0 | | [frpc](./src/frpc) | 0.64.0 |
| [frps](./src/frps) | 0.64.0 | | [frps](./src/frps) | 0.64.0 |
| [Gitea Runner](./src/gitea-runner) | 0.2.13 | | [Gitea Runner](./src/gitea-runner) | 0.2.13 |
| [Gitea](./src/gitea) | 1.24.6 | | [Gitea](./src/gitea) | 1.24.6 |
| [GitLab Runner](./src/gitlab-runner) | 17.10.1 | | [GitLab Runner](./src/gitlab-runner) | 17.10.1 |
| [GitLab](./src/gitlab) | 17.10.4-ce.0 | | [GitLab](./src/gitlab) | 17.10.4-ce.0 |
| [GPUStack](./src/gpustack) | v0.5.3 | | [GPUStack](./src/gpustack) | v0.5.3 |
| [Grafana](./src/grafana) | 12.1.1 | | [Grafana](./src/grafana) | 12.1.1 |
| [Halo](./src/halo) | 2.21.9 | | [Halo](./src/halo) | 2.21.9 |
| [Harbor](./src/harbor) | v2.12.0 | | [Harbor](./src/harbor) | v2.12.0 |
| [HashiCorp Consul](./src/consul) | 1.20.3 | | [HashiCorp Consul](./src/consul) | 1.20.3 |
| [IOPaint](./builds/io-paint) | latest | | [IOPaint](./builds/io-paint) | latest |
| [Jenkins](./src/jenkins) | 2.486-lts | | [Jenkins](./src/jenkins) | 2.486-lts |
| [JODConverter](./src/jodconverter) | latest | | [JODConverter](./src/jodconverter) | latest |
| [Kestra](./src/kestra) | latest-full | | [Kestra](./src/kestra) | latest-full |
| [Kibana](./src/kibana) | 8.16.1 | | [Kibana](./src/kibana) | 8.16.1 |
| [Kodbox](./src/kodbox) | 1.62 | | [Kodbox](./src/kodbox) | 1.62 |
| [Kong](./src/kong) | 3.8.0 | | [Kong](./src/kong) | 3.8.0 |
| [Langflow](./apps/langflow) | latest | | [Langflow](./apps/langflow) | latest |
| [Langfuse](./apps/langfuse) | 3.115.0 | | [Langfuse](./apps/langfuse) | 3.115.0 |
| [LibreOffice](./src/libreoffice) | latest | | [LibreOffice](./src/libreoffice) | latest |
| [libSQL Server](./src/libsql) | latest | | [libSQL Server](./src/libsql) | latest |
| [LiteLLM](./src/litellm) | main-stable | | [LiteLLM](./src/litellm) | main-stable |
| [Logstash](./src/logstash) | 8.16.1 | | [Logstash](./src/logstash) | 8.16.1 |
| [MariaDB Galera 集群](./src/mariadb-galera) | 11.7.2 | | [MariaDB Galera 集群](./src/mariadb-galera) | 11.7.2 |
| [Milvus Standalone Embed](./src/milvus-standalone-embed) | v2.6.7 | | [Milvus Standalone Embed](./src/milvus-standalone-embed) | v2.6.7 |
| [Milvus Standalone](./src/milvus-standalone) | v2.6.7 | | [Milvus Standalone](./src/milvus-standalone) | v2.6.7 |
| [Minecraft Bedrock Server](./src/minecraft-bedrock-server) | latest | | [Minecraft Bedrock Server](./src/minecraft-bedrock-server) | latest |
| [MinerU SGLang](./src/mineru-sglang) | 2.2.2 | | [MinerU SGLang](./src/mineru-sglang) | 2.2.2 |
| [MinerU vLLM](./builds/mineru-vllm) | 2.6.4 | | [MinerU vLLM](./builds/mineru-vllm) | 2.6.4 |
| [MinIO](./src/minio) | RELEASE.2025-09-07T16-13-09Z | | [MinIO](./src/minio) | 0.20251015 |
| [MLflow](./src/mlflow) | v2.20.2 | | [MLflow](./src/mlflow) | v2.20.2 |
| [MongoDB ReplicaSet Single](./src/mongodb-replicaset-single) | 8.2.3 | | [MongoDB ReplicaSet Single](./src/mongodb-replicaset-single) | 8.2.3 |
| [MongoDB ReplicaSet](./src/mongodb-replicaset) | 8.2.3 | | [MongoDB ReplicaSet](./src/mongodb-replicaset) | 8.2.3 |
| [MongoDB Standalone](./src/mongodb-standalone) | 8.2.3 | | [MongoDB Standalone](./src/mongodb-standalone) | 8.2.3 |
| [MySQL](./src/mysql) | 9.4.0 | | [MySQL](./src/mysql) | 9.4.0 |
| [n8n](./src/n8n) | 1.114.0 | | [n8n](./src/n8n) | 1.114.0 |
| [Nacos](./src/nacos) | v3.1.0 | | [Nacos](./src/nacos) | v3.1.0 |
| [NebulaGraph](./src/nebulagraph) | v3.8.0 | | [NebulaGraph](./src/nebulagraph) | v3.8.0 |
| [NexaSDK](./src/nexa-sdk) | v0.2.62 | | [NexaSDK](./src/nexa-sdk) | v0.2.62 |
| [Neo4j](./src/neo4j) | 5.27.4 | | [Neo4j](./src/neo4j) | 5.27.4 |
| [Netdata](./src/netdata) | latest | | [Netdata](./src/netdata) | latest |
| [Nginx](./src/nginx) | 1.29.1 | | [Nginx](./src/nginx) | 1.29.1 |
| [Node Exporter](./src/node-exporter) | v1.8.2 | | [Node Exporter](./src/node-exporter) | v1.8.2 |
| [OceanBase](./src/oceanbase) | 4.3.3 | | [OceanBase](./src/oceanbase) | 4.3.3 |
| [Odoo](./src/odoo) | 19.0 | | [Odoo](./src/odoo) | 19.0 |
| [Ollama](./src/ollama) | 0.12.0 | | [Ollama](./src/ollama) | 0.12.0 |
| [Open WebUI](./src/open-webui) | main | | [Open WebUI](./src/open-webui) | main |
| [Phoenix (Arize)](./src/phoenix) | 12.19.0 | | [Phoenix (Arize)](./src/phoenix) | 12.19.0 |
| [Pingora Proxy Manager](./src/pingora-proxy-manager) | v1.0.3 | | [Pingora Proxy Manager](./src/pingora-proxy-manager) | v1.0.3 |
| [Open WebUI Rust](./src/open-webui-rust) | latest | | [Open WebUI Rust](./src/open-webui-rust) | latest |
| [OpenCoze](./src/opencoze) | See Docs | | [OpenCoze](./src/opencoze) | See Docs |
| [OpenCut](./src/opencut) | latest | | [OpenCut](./src/opencut) | latest |
| [OpenList](./src/openlist) | latest | | [OpenList](./src/openlist) | latest |
| [OpenSearch](./src/opensearch) | 2.19.0 | | [OpenSearch](./src/opensearch) | 2.19.0 |
| [PocketBase](./src/pocketbase) | 0.30.0 | | [PocketBase](./src/pocketbase) | 0.30.0 |
| [Portainer](./src/portainer) | 2.27.3-alpine | | [Portainer](./src/portainer) | 2.27.3-alpine |
| [Portkey AI Gateway](./src/portkey-gateway) | latest | | [Portkey AI Gateway](./src/portkey-gateway) | latest |
| [PostgreSQL](./src/postgres) | 17.6 | | [PostgreSQL](./src/postgres) | 17.6 |
| [Prometheus](./src/prometheus) | 3.5.0 | | [Prometheus](./src/prometheus) | 3.5.0 |
| [PyTorch](./src/pytorch) | 2.6.0 | | [PyTorch](./src/pytorch) | 2.6.0 |
| [Qdrant](./src/qdrant) | 1.15.4 | | [Qdrant](./src/qdrant) | 1.15.4 |
| [RabbitMQ](./src/rabbitmq) | 4.1.4 | | [RabbitMQ](./src/rabbitmq) | 4.1.4 |
| [Ray](./src/ray) | 2.42.1 | | [Ray](./src/ray) | 2.42.1 |
| [Redpanda](./src/redpanda) | v24.3.1 | | [Redpanda](./src/redpanda) | v24.3.1 |
| [Redis Cluster](./src/redis-cluster) | 8.2.1 | | [Redis Cluster](./src/redis-cluster) | 8.2.1 |
| [Redis](./src/redis) | 8.2.1 | | [Redis](./src/redis) | 8.2.1 |
| [Renovate](./src/renovate) | 42.52.5-full | | [Renovate](./src/renovate) | 42.52.5-full |
| [Restate Cluster](./src/restate-cluster) | 1.5.3 | | [Restate Cluster](./src/restate-cluster) | 1.5.3 |
| [Restate](./src/restate) | 1.5.3 | | [Restate](./src/restate) | 1.5.3 |
| [SearXNG](./src/searxng) | 2025.1.20-1ce14ef99 | | [SearXNG](./src/searxng) | 2025.1.20-1ce14ef99 |
| [Sim](./apps/sim) | latest | | [Sim](./apps/sim) | latest |
| [Stable Diffusion WebUI](./src/stable-diffusion-webui-docker) | latest | | [Stable Diffusion WebUI](./src/stable-diffusion-webui-docker) | latest |
| [Stirling-PDF](./src/stirling-pdf) | latest | | [Stirling-PDF](./src/stirling-pdf) | latest |
| [Temporal](./src/temporal) | 1.24.2 | | [Temporal](./src/temporal) | 1.24.2 |
| [TiDB](./src/tidb) | v8.5.0 | | [TiDB](./src/tidb) | v8.5.0 |
| [TiKV](./src/tikv) | v8.5.0 | | [TiKV](./src/tikv) | v8.5.0 |
| [Trigger.dev](./src/trigger-dev) | v4.2.0 | | [Trigger.dev](./src/trigger-dev) | v4.2.0 |
| [TrailBase](./src/trailbase) | 0.22.4 | | [TrailBase](./src/trailbase) | 0.22.4 |
| [Valkey Cluster](./src/valkey-cluster) | 8.0 | | [Valkey Cluster](./src/valkey-cluster) | 8.0 |
| [Valkey](./src/valkey) | 8.0 | | [Valkey](./src/valkey) | 8.0 |
| [Verdaccio](./src/verdaccio) | 6.1.2 | | [Verdaccio](./src/verdaccio) | 6.1.2 |
| [vLLM](./src/vllm) | v0.13.0 | | [vLLM](./src/vllm) | v0.13.0 |
| [Windmill](./src/windmill) | main | | [Windmill](./src/windmill) | main |
| [ZooKeeper](./src/zookeeper) | 3.9.3 | | [ZooKeeper](./src/zookeeper) | 3.9.3 |
## MCP 服务器 ## MCP 服务器

View File

@@ -40,7 +40,15 @@ services:
cpus: ${DIFY_API_CPU_RESERVATION:-0.5} cpus: ${DIFY_API_CPU_RESERVATION:-0.5}
memory: ${DIFY_API_MEMORY_RESERVATION:-1G} memory: ${DIFY_API_MEMORY_RESERVATION:-1G}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:5001/health"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:5001/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
@@ -172,7 +180,15 @@ services:
cpus: ${DIFY_WEAVIATE_CPU_RESERVATION:-0.25} cpus: ${DIFY_WEAVIATE_CPU_RESERVATION:-0.25}
memory: ${DIFY_WEAVIATE_MEMORY_RESERVATION:-512M} memory: ${DIFY_WEAVIATE_MEMORY_RESERVATION:-512M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/v1/.well-known/ready"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:8080/v1/.well-known/ready",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -88,7 +88,15 @@ services:
cpus: ${LANGFUSE_WORKER_CPU_RESERVATION:-0.5} cpus: ${LANGFUSE_WORKER_CPU_RESERVATION:-0.5}
memory: ${LANGFUSE_WORKER_MEMORY_RESERVATION:-512M} memory: ${LANGFUSE_WORKER_MEMORY_RESERVATION:-512M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://127.0.0.1:3030/api/health"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://127.0.0.1:3030/api/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
@@ -122,7 +130,15 @@ services:
cpus: ${LANGFUSE_WEB_CPU_RESERVATION:-0.5} cpus: ${LANGFUSE_WEB_CPU_RESERVATION:-0.5}
memory: ${LANGFUSE_WEB_MEMORY_RESERVATION:-512M} memory: ${LANGFUSE_WEB_MEMORY_RESERVATION:-512M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://127.0.0.1:3000/api/public/health"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://127.0.0.1:3000/api/public/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
@@ -131,6 +147,8 @@ services:
clickhouse: clickhouse:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}clickhouse/clickhouse-server:${CLICKHOUSE_VERSION:-latest} image: ${GLOBAL_REGISTRY:-}clickhouse/clickhouse-server:${CLICKHOUSE_VERSION:-latest}
profiles:
- ${COMPOSE_PROFILES:-}
user: "101:101" user: "101:101"
environment: environment:
CLICKHOUSE_DB: default CLICKHOUSE_DB: default
@@ -160,7 +178,9 @@ services:
minio: minio:
<<: *defaults <<: *defaults
image: ${CGR_DEV_REGISTRY:-cgr.dev/}chainguard/minio:${MINIO_VERSION:-latest} image: ${CGR_DEV_REGISTRY:-cgr.dev}/chainguard/minio:${MINIO_VERSION:-latest}
profiles:
- ${COMPOSE_PROFILES:-}
entrypoint: sh entrypoint: sh
# create the 'langfuse' bucket before starting the service # create the 'langfuse' bucket before starting the service
command: -c 'mkdir -p /data/langfuse && minio server --address ":9000" --console-address ":9001" /data' command: -c 'mkdir -p /data/langfuse && minio server --address ":9000" --console-address ":9001" /data'
@@ -188,6 +208,8 @@ services:
redis: redis:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}redis:${REDIS_VERSION:-7} image: ${GLOBAL_REGISTRY:-}redis:${REDIS_VERSION:-7}
profiles:
- ${COMPOSE_PROFILES:-}
command: > command: >
--requirepass ${REDIS_AUTH:-myredissecret} --requirepass ${REDIS_AUTH:-myredissecret}
--maxmemory-policy noeviction --maxmemory-policy noeviction
@@ -208,6 +230,8 @@ services:
postgres: postgres:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}postgres:${POSTGRES_VERSION:-17} image: ${GLOBAL_REGISTRY:-}postgres:${POSTGRES_VERSION:-17}
profiles:
- ${COMPOSE_PROFILES:-}
environment: environment:
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}

View File

@@ -13,6 +13,8 @@ services:
dind: dind:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}alexsuntop/debian-dind:${DEBIAN_DIND_VERSION:-0.1.0} image: ${GLOBAL_REGISTRY:-}alexsuntop/debian-dind:${DEBIAN_DIND_VERSION:-0.1.0}
profiles:
- ${COMPOSE_PROFILES:-}
build: build:
context: . context: .
dockerfile: Dockerfile dockerfile: Dockerfile
@@ -41,13 +43,13 @@ services:
reservations: reservations:
cpus: ${DIND_CPU_RESERVATION:-1.0} cpus: ${DIND_CPU_RESERVATION:-1.0}
memory: ${DIND_MEMORY_RESERVATION:-2G} memory: ${DIND_MEMORY_RESERVATION:-2G}
profiles:
- ${COMPOSE_PROFILES:-}
# GPU-enabled DinD (optional) # GPU-enabled DinD (optional)
dind-gpu: dind-gpu:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}alexsuntop/debian-dind:${DEBIAN_DIND_GPU_VERSION:-0.1.0-gpu} image: ${GLOBAL_REGISTRY:-}alexsuntop/debian-dind:${DEBIAN_DIND_GPU_VERSION:-0.1.0-gpu}
profiles:
- gpu
build: build:
context: . context: .
dockerfile: Dockerfile dockerfile: Dockerfile
@@ -82,8 +84,6 @@ services:
- driver: nvidia - driver: nvidia
count: 1 count: 1
capabilities: [gpu] capabilities: [gpu]
profiles:
- gpu
volumes: volumes:
dind_data: dind_data:

View File

@@ -25,7 +25,15 @@ services:
cpus: ${BIFROST_CPU_RESERVATION:-0.10} cpus: ${BIFROST_CPU_RESERVATION:-0.10}
memory: ${BIFROST_MEMORY_RESERVATION:-128M} memory: ${BIFROST_MEMORY_RESERVATION:-128M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/health"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:8080/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
@@ -39,14 +47,22 @@ services:
- ./config/prometheus.yml:/etc/prometheus/prometheus.yml - ./config/prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus_data:/prometheus - prometheus_data:/prometheus
command: command:
- '--config.file=/etc/prometheus/prometheus.yml' - "--config.file=/etc/prometheus/prometheus.yml"
- '--storage.tsdb.path=/prometheus' - "--storage.tsdb.path=/prometheus"
- '--web.console.libraries=/usr/share/prometheus/console_libraries' - "--web.console.libraries=/usr/share/prometheus/console_libraries"
- '--web.console.templates=/usr/share/prometheus/consoles' - "--web.console.templates=/usr/share/prometheus/consoles"
ports: ports:
- "${PROMETHEUS_PORT:-29090}:9090" - "${PROMETHEUS_PORT:-29090}:9090"
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:9090/-/healthy"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:9090/-/healthy",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
@@ -74,7 +90,15 @@ services:
ports: ports:
- "${GRAFANA_PORT:-23000}:3000" - "${GRAFANA_PORT:-23000}:3000"
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/api/health"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:3000/api/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -25,7 +25,15 @@ services:
cpus: ${BOLT_DIY_CPU_RESERVATION:-0.5} cpus: ${BOLT_DIY_CPU_RESERVATION:-0.5}
memory: ${BOLT_DIY_MEMORY_RESERVATION:-512M} memory: ${BOLT_DIY_MEMORY_RESERVATION:-512M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:5173/"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:5173/",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -74,7 +74,15 @@ services:
redis: redis:
condition: service_healthy condition: service_healthy
healthcheck: healthcheck:
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost/health"] test:
[
"CMD",
"wget",
"--quiet",
"--tries=1",
"--spider",
"http://localhost/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -9,7 +9,7 @@ x-defaults: &defaults
services: services:
bytebot-desktop: bytebot-desktop:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}bytebot-ai/bytebot-desktop:${BYTEBOT_VERSION:-edge} image: ${GHCR_IO_REGISTRY:-ghcr.io}/bytebot-ai/bytebot-desktop:${BYTEBOT_VERSION:-edge}
ports: ports:
- "${BYTEBOT_DESKTOP_PORT_OVERRIDE:-9990}:9990" - "${BYTEBOT_DESKTOP_PORT_OVERRIDE:-9990}:9990"
environment: environment:
@@ -32,7 +32,7 @@ services:
bytebot-agent: bytebot-agent:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}bytebot-ai/bytebot-agent:${BYTEBOT_VERSION:-edge} image: ${GHCR_IO_REGISTRY:-ghcr.io}/bytebot-ai/bytebot-agent:${BYTEBOT_VERSION:-edge}
depends_on: depends_on:
bytebot-desktop: bytebot-desktop:
condition: service_healthy condition: service_healthy
@@ -64,7 +64,7 @@ services:
bytebot-ui: bytebot-ui:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}bytebot-ai/bytebot-ui:${BYTEBOT_VERSION:-edge} image: ${GHCR_IO_REGISTRY:-ghcr.io}/bytebot-ai/bytebot-ui:${BYTEBOT_VERSION:-edge}
depends_on: depends_on:
bytebot-agent: bytebot-agent:
condition: service_healthy condition: service_healthy

View File

@@ -41,7 +41,11 @@ services:
cpus: ${CLICKHOUSE_CPU_RESERVATION:-1.0} cpus: ${CLICKHOUSE_CPU_RESERVATION:-1.0}
memory: ${CLICKHOUSE_MEMORY_RESERVATION:-1G} memory: ${CLICKHOUSE_MEMORY_RESERVATION:-1G}
healthcheck: healthcheck:
test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:8123/ping || exit 1"] test:
[
"CMD-SHELL",
"wget --no-verbose --tries=1 --spider http://localhost:8123/ping || exit 1",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -66,7 +66,15 @@ services:
elasticsearch: elasticsearch:
condition: service_healthy condition: service_healthy
healthcheck: healthcheck:
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:8080/health"] test:
[
"CMD",
"wget",
"--quiet",
"--tries=1",
"--spider",
"http://localhost:8080/health",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 5 retries: 5
@@ -93,7 +101,11 @@ services:
volumes: volumes:
- postgres_data:/var/lib/postgresql/data - postgres_data:/var/lib/postgresql/data
healthcheck: healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-conductor} -d ${POSTGRES_DB:-conductor}"] test:
[
"CMD-SHELL",
"pg_isready -U ${POSTGRES_USER:-conductor} -d ${POSTGRES_DB:-conductor}",
]
interval: 10s interval: 10s
timeout: 5s timeout: 5s
retries: 5 retries: 5
@@ -118,7 +130,8 @@ services:
volumes: volumes:
- elasticsearch_data:/usr/share/elasticsearch/data - elasticsearch_data:/usr/share/elasticsearch/data
healthcheck: healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:9200/_cluster/health || exit 1"] test:
["CMD-SHELL", "curl -f http://localhost:9200/_cluster/health || exit 1"]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 5 retries: 5

View File

@@ -9,7 +9,7 @@ x-defaults: &defaults
services: services:
easy-dataset: easy-dataset:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}conardli/easy-dataset:${EASY_DATASET_VERSION:-1.5.1} image: ${GHCR_IO_REGISTRY:-ghcr.io}/conardli/easy-dataset:${EASY_DATASET_VERSION:-1.5.1}
ports: ports:
- "${EASY_DATASET_PORT_OVERRIDE:-1717}:1717" - "${EASY_DATASET_PORT_OVERRIDE:-1717}:1717"
volumes: volumes:

View File

@@ -39,7 +39,7 @@ x-common-env: &common-env
services: services:
playwright-service: playwright-service:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}firecrawl/playwright-service:${PLAYWRIGHT_VERSION:-latest} image: ${GHCR_IO_REGISTRY:-ghcr.io}/firecrawl/playwright-service:${PLAYWRIGHT_VERSION:-latest}
environment: environment:
PORT: 3000 PORT: 3000
PROXY_SERVER: ${PROXY_SERVER:-} PROXY_SERVER: ${PROXY_SERVER:-}
@@ -57,7 +57,7 @@ services:
api: api:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}firecrawl/firecrawl:${FIRECRAWL_VERSION:-latest} image: ${GHCR_IO_REGISTRY:-ghcr.io}/firecrawl/firecrawl:${FIRECRAWL_VERSION:-latest}
environment: environment:
<<: *common-env <<: *common-env
HOST: 0.0.0.0 HOST: 0.0.0.0
@@ -121,7 +121,7 @@ services:
nuq-postgres: nuq-postgres:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}firecrawl/nuq-postgres:${NUQ_POSTGRES_VERSION:-latest} image: ${GHCR_IO_REGISTRY:-ghcr.io}/firecrawl/nuq-postgres:${NUQ_POSTGRES_VERSION:-latest}
environment: environment:
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}

View File

@@ -37,7 +37,15 @@ services:
cpus: ${GITEA_CPU_RESERVATION:-0.5} cpus: ${GITEA_CPU_RESERVATION:-0.5}
memory: ${GITEA_MEMORY_RESERVATION:-512M} memory: ${GITEA_MEMORY_RESERVATION:-512M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:3000/",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
@@ -46,6 +54,8 @@ services:
db: db:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}postgres:${POSTGRES_VERSION:-17.6} image: ${GLOBAL_REGISTRY:-}postgres:${POSTGRES_VERSION:-17.6}
profiles:
- ${COMPOSE_PROFILES:-}
environment: environment:
- TZ=${TZ:-UTC} - TZ=${TZ:-UTC}
- POSTGRES_USER=${POSTGRES_USER:-gitea} - POSTGRES_USER=${POSTGRES_USER:-gitea}

View File

@@ -13,7 +13,7 @@ services:
context: . context: .
args: args:
target: runtime target: runtime
image: ${GHCR_IO_REGISTRY:-ghcr.io/}berriai/litellm:${LITELLM_VERSION:-main-stable} image: ${GHCR_IO_REGISTRY:-ghcr.io}/berriai/litellm:${LITELLM_VERSION:-main-stable}
# Uncomment these lines to start proxy with a config.yaml file # Uncomment these lines to start proxy with a config.yaml file
# volumes: # volumes:
# - ./config.yaml:/app/config.yaml:ro # - ./config.yaml:/app/config.yaml:ro

View File

@@ -65,12 +65,19 @@ services:
cpus: ${ATTU_CPU_RESERVATION:-0.1} cpus: ${ATTU_CPU_RESERVATION:-0.1}
memory: ${ATTU_MEMORY_RESERVATION:-128M} memory: ${ATTU_MEMORY_RESERVATION:-128M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:3000/",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3
start_period: 10s start_period: 10s
volumes: volumes:
milvus_data: milvus_data:

View File

@@ -67,7 +67,7 @@ services:
image: ${GLOBAL_REGISTRY:-}milvusdb/milvus:${MILVUS_VERSION:-v2.6.7} image: ${GLOBAL_REGISTRY:-}milvusdb/milvus:${MILVUS_VERSION:-v2.6.7}
command: ["milvus", "run", "standalone"] command: ["milvus", "run", "standalone"]
security_opt: security_opt:
- seccomp:unconfined - seccomp:unconfined
environment: environment:
TZ: ${TZ:-UTC} TZ: ${TZ:-UTC}
ETCD_ENDPOINTS: etcd:2379 ETCD_ENDPOINTS: etcd:2379
@@ -120,7 +120,15 @@ services:
cpus: ${ATTU_CPU_RESERVATION:-0.1} cpus: ${ATTU_CPU_RESERVATION:-0.1}
memory: ${ATTU_MEMORY_RESERVATION:-128M} memory: ${ATTU_MEMORY_RESERVATION:-128M}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:3000/",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -11,3 +11,9 @@ MINIO_PORT_OVERRIDE_WEBUI=9001
# Timezone # Timezone
TZ=UTC TZ=UTC
# Resource Limits
MINIO_CPU_LIMIT=0.5
MINIO_MEMORY_LIMIT=1G
MINIO_CPU_RESERVATION=0.25
MINIO_MEMORY_RESERVATION=512M

View File

@@ -1 +0,0 @@
/config

View File

@@ -9,7 +9,7 @@ x-defaults: &defaults
services: services:
minio: minio:
<<: *defaults <<: *defaults
image: cgr.dev/chainguard/minio:${MINIO_VERSION:-0.20251015} image: ${CGR_DEV_REGISTRY:cgr.dev-}/chainguard/minio:${MINIO_VERSION:-0.20251015}
ports: ports:
- "${MINIO_PORT_OVERRIDE_API:-9000}:9000" - "${MINIO_PORT_OVERRIDE_API:-9000}:9000"
- "${MINIO_PORT_OVERRIDE_WEBUI:-9001}:9001" - "${MINIO_PORT_OVERRIDE_WEBUI:-9001}:9001"
@@ -29,10 +29,10 @@ services:
deploy: deploy:
resources: resources:
limits: limits:
cpus: ${MINIO_CPU_LIMIT:-1.0} cpus: ${MINIO_CPU_LIMIT:-0.5}
memory: ${MINIO_MEMORY_LIMIT:-1G} memory: ${MINIO_MEMORY_LIMIT:-1G}
reservations: reservations:
cpus: ${MINIO_CPU_RESERVATION:-0.5} cpus: ${MINIO_CPU_RESERVATION:-0.25}
memory: ${MINIO_MEMORY_RESERVATION:-512M} memory: ${MINIO_MEMORY_RESERVATION:-512M}

View File

@@ -77,7 +77,7 @@ services:
mlflow: mlflow:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}mlflow/mlflow:${MLFLOW_VERSION:-v2.20.2} image: ${GHCR_IO_REGISTRY:-ghcr.io}/mlflow/mlflow:${MLFLOW_VERSION:-v2.20.2}
depends_on: depends_on:
postgres: postgres:
condition: service_healthy condition: service_healthy

View File

@@ -34,7 +34,15 @@ services:
cpus: ${ODOO_CPU_RESERVATION:-0.5} cpus: ${ODOO_CPU_RESERVATION:-0.5}
memory: ${ODOO_MEMORY_RESERVATION:-1G} memory: ${ODOO_MEMORY_RESERVATION:-1G}
healthcheck: healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8069/"] test:
[
"CMD",
"wget",
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:8069/",
]
interval: 30s interval: 30s
timeout: 10s timeout: 10s
retries: 3 retries: 3

View File

@@ -9,7 +9,7 @@ x-defaults: &defaults
services: services:
open_webui: open_webui:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}open-webui/open-webui:${OPEN_WEBUI_VERSION:-main} image: ${GHCR_IO_REGISTRY:-ghcr.io}/open-webui/open-webui:${OPEN_WEBUI_VERSION:-main}
ports: ports:
- "${OPEN_WEBUI_PORT_OVERRIDE:-8080}:8080" - "${OPEN_WEBUI_PORT_OVERRIDE:-8080}:8080"
volumes: volumes:

View File

@@ -6,11 +6,8 @@ TZ=UTC
# Pingap Version # Pingap Version
# Use version-full for production (includes OpenTelemetry, Sentry, image compression plugins) # Use version-full for production (includes OpenTelemetry, Sentry, image compression plugins)
# Available tags: latest, full, 0.12.1, 0.12.1-full # Available tags: latest, full, 0.12.7, 0.12.7-full
PINGAP_VERSION=0.12.1-full PINGAP_VERSION=0.12.7-full
# Container Name (optional, leave empty for auto-generated name)
PINGAP_CONTAINER_NAME=
# Port Overrides # Port Overrides
# HTTP port - exposed on host # HTTP port - exposed on host
@@ -28,7 +25,7 @@ PINGAP_ADMIN_ADDR=0.0.0.0:80/pingap
# Admin username # Admin username
PINGAP_ADMIN_USER=admin PINGAP_ADMIN_USER=admin
# Admin password (REQUIRED - set a strong password!) # Admin password (REQUIRED - set a strong password!)
PINGAP_ADMIN_PASSWORD=changeme PINGAP_ADMIN_PASSWORD=password
# Resource Limits # Resource Limits
PINGAP_CPU_LIMIT=1.0 PINGAP_CPU_LIMIT=1.0

View File

@@ -49,13 +49,13 @@ A high-performance reverse proxy built on Cloudflare Pingora, designed as a more
| Variable | Description | Default | | Variable | Description | Default |
| ---------------------------- | ------------------------------------------ | ------------------- | | ---------------------------- | ------------------------------------------ | ------------------- |
| `PINGAP_VERSION` | Image version (recommended: `0.12.1-full`) | `0.12.1-full` | | `PINGAP_VERSION` | Image version (recommended: `0.12.7-full`) | `0.12.7-full` |
| `PINGAP_HTTP_PORT_OVERRIDE` | HTTP port on host | `80` | | `PINGAP_HTTP_PORT_OVERRIDE` | HTTP port on host | `80` |
| `PINGAP_HTTPS_PORT_OVERRIDE` | HTTPS port on host | `443` | | `PINGAP_HTTPS_PORT_OVERRIDE` | HTTPS port on host | `443` |
| `PINGAP_DATA_DIR` | Data directory for persistent storage | `./pingap` | | `PINGAP_DATA_DIR` | Data directory for persistent storage | `./pingap` |
| `PINGAP_ADMIN_ADDR` | Admin interface address | `0.0.0.0:80/pingap` | | `PINGAP_ADMIN_ADDR` | Admin interface address | `0.0.0.0:80/pingap` |
| `PINGAP_ADMIN_USER` | Admin username | `admin` | | `PINGAP_ADMIN_USER` | Admin username | `admin` |
| `PINGAP_ADMIN_PASSWORD` | Admin password (REQUIRED) | - | | `PINGAP_ADMIN_PASSWORD` | Admin password | `password` |
| `PINGAP_CPU_LIMIT` | CPU limit | `1.0` | | `PINGAP_CPU_LIMIT` | CPU limit | `1.0` |
| `PINGAP_MEMORY_LIMIT` | Memory limit | `512M` | | `PINGAP_MEMORY_LIMIT` | Memory limit | `512M` |
@@ -63,8 +63,8 @@ A high-performance reverse proxy built on Cloudflare Pingora, designed as a more
- `vicanso/pingap:latest` - Latest development version (not recommended for production) - `vicanso/pingap:latest` - Latest development version (not recommended for production)
- `vicanso/pingap:full` - Latest development version with all features - `vicanso/pingap:full` - Latest development version with all features
- `vicanso/pingap:0.12.1` - Stable version without extra dependencies - `vicanso/pingap:0.12.7` - Stable version without extra dependencies
- `vicanso/pingap:0.12.1-full` - **Recommended**: Stable version with OpenTelemetry, Sentry, and image compression - `vicanso/pingap:0.12.7-full` - **Recommended**: Stable version with OpenTelemetry, Sentry, and image compression
### Persistent Storage ### Persistent Storage
@@ -103,7 +103,7 @@ docker compose down
### Production Recommendations ### Production Recommendations
- Use versioned tags (e.g., `0.12.1-full`) instead of `latest` or `full` - Use versioned tags (e.g., `0.12.7-full`) instead of `latest` or `full`
- Configure appropriate resource limits based on your traffic - Configure appropriate resource limits based on your traffic
- Set up proper monitoring and logging - Set up proper monitoring and logging
- Enable HTTPS with valid certificates - Enable HTTPS with valid certificates

View File

@@ -49,13 +49,13 @@
| 变量名 | 说明 | 默认值 | | 变量名 | 说明 | 默认值 |
| ---------------------------- | ------------------------------- | ------------------- | | ---------------------------- | ------------------------------- | ------------------- |
| `PINGAP_VERSION` | 镜像版本(推荐:`0.12.1-full` | `0.12.1-full` | | `PINGAP_VERSION` | 镜像版本(推荐:`0.12.7-full` | `0.12.7-full` |
| `PINGAP_HTTP_PORT_OVERRIDE` | 主机 HTTP 端口 | `80` | | `PINGAP_HTTP_PORT_OVERRIDE` | 主机 HTTP 端口 | `80` |
| `PINGAP_HTTPS_PORT_OVERRIDE` | 主机 HTTPS 端口 | `443` | | `PINGAP_HTTPS_PORT_OVERRIDE` | 主机 HTTPS 端口 | `443` |
| `PINGAP_DATA_DIR` | 持久化数据目录 | `./pingap` | | `PINGAP_DATA_DIR` | 持久化数据目录 | `./pingap` |
| `PINGAP_ADMIN_ADDR` | 管理界面地址 | `0.0.0.0:80/pingap` | | `PINGAP_ADMIN_ADDR` | 管理界面地址 | `0.0.0.0:80/pingap` |
| `PINGAP_ADMIN_USER` | 管理员用户名 | `admin` | | `PINGAP_ADMIN_USER` | 管理员用户名 | `admin` |
| `PINGAP_ADMIN_PASSWORD` | 管理员密码(必填) | - | | `PINGAP_ADMIN_PASSWORD` | 管理员密码 | `password` |
| `PINGAP_CPU_LIMIT` | CPU 限制 | `1.0` | | `PINGAP_CPU_LIMIT` | CPU 限制 | `1.0` |
| `PINGAP_MEMORY_LIMIT` | 内存限制 | `512M` | | `PINGAP_MEMORY_LIMIT` | 内存限制 | `512M` |
@@ -63,8 +63,8 @@
- `vicanso/pingap:latest` - 最新开发版(不推荐用于生产环境) - `vicanso/pingap:latest` - 最新开发版(不推荐用于生产环境)
- `vicanso/pingap:full` - 包含所有功能的最新开发版 - `vicanso/pingap:full` - 包含所有功能的最新开发版
- `vicanso/pingap:0.12.1` - 不含额外依赖的稳定版 - `vicanso/pingap:0.12.7` - 不含额外依赖的稳定版
- `vicanso/pingap:0.12.1-full` - **推荐**:包含 OpenTelemetry、Sentry 和图片压缩的稳定版 - `vicanso/pingap:0.12.7-full` - **推荐**:包含 OpenTelemetry、Sentry 和图片压缩的稳定版
### 持久化存储 ### 持久化存储
@@ -103,7 +103,7 @@ docker compose down
### 生产环境建议 ### 生产环境建议
- 使用带版本号的标签(如 `0.12.1-full`),而非 `latest` 或 `full` - 使用带版本号的标签(如 `0.12.7-full`),而非 `latest` 或 `full`
- 根据流量情况配置适当的资源限制 - 根据流量情况配置适当的资源限制
- 设置适当的监控和日志记录 - 设置适当的监控和日志记录
- 启用 HTTPS 并使用有效证书 - 启用 HTTPS 并使用有效证书

View File

@@ -12,19 +12,18 @@ x-defaults: &defaults
services: services:
pingap: pingap:
<<: *defaults <<: *defaults
image: ${GLOBAL_REGISTRY:-}vicanso/pingap:${PINGAP_VERSION:-0.12.1-full} image: ${GLOBAL_REGISTRY:-}vicanso/pingap:${PINGAP_VERSION:-0.12.7-full}
container_name: ${PINGAP_CONTAINER_NAME:-}
ports: ports:
- "${PINGAP_HTTP_PORT_OVERRIDE:-80}:80" - "${PINGAP_HTTP_PORT_OVERRIDE:-80}:80"
- "${PINGAP_HTTPS_PORT_OVERRIDE:-443}:443" - "${PINGAP_HTTPS_PORT_OVERRIDE:-443}:443"
volumes: volumes:
- ${PINGAP_DATA_DIR:-./pingap}:/opt/pingap - pingap_data:/opt/pingap
environment: environment:
- TZ=${TZ:-UTC} - TZ=${TZ:-UTC}
- PINGAP_CONF=/opt/pingap/conf - PINGAP_CONF=/opt/pingap/conf
- PINGAP_ADMIN_ADDR=${PINGAP_ADMIN_ADDR:-0.0.0.0:80/pingap} - PINGAP_ADMIN_ADDR=${PINGAP_ADMIN_ADDR:-0.0.0.0:80/pingap}
- PINGAP_ADMIN_USER=${PINGAP_ADMIN_USER:-admin} - PINGAP_ADMIN_USER=${PINGAP_ADMIN_USER:-admin}
- PINGAP_ADMIN_PASSWORD=${PINGAP_ADMIN_PASSWORD:?PINGAP_ADMIN_PASSWORD must be set} - PINGAP_ADMIN_PASSWORD=${PINGAP_ADMIN_PASSWORD:-password}
command: command:
- pingap - pingap
- --autoreload - --autoreload
@@ -42,3 +41,6 @@ services:
reservations: reservations:
cpus: ${PINGAP_CPU_RESERVATION:-0.5} cpus: ${PINGAP_CPU_RESERVATION:-0.5}
memory: ${PINGAP_MEMORY_RESERVATION:-256M} memory: ${PINGAP_MEMORY_RESERVATION:-256M}
volumes:
pingap_data:

View File

@@ -9,7 +9,7 @@ x-defaults: &defaults
services: services:
pocketbase: pocketbase:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}muchobien/pocketbase:${PB_VERSION:-0.30.0} image: ${GHCR_IO_REGISTRY:-ghcr.io}/muchobien/pocketbase:${PB_VERSION:-0.30.0}
environment: environment:
TZ: ${TZ:-UTC} TZ: ${TZ:-UTC}
# Optional ENCRYPTION (Ensure this is a 32-character long encryption key) # Optional ENCRYPTION (Ensure this is a 32-character long encryption key)

View File

@@ -9,7 +9,7 @@ x-defaults: &defaults
services: services:
stable-diffusion-webui: stable-diffusion-webui:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}absolutelyludicrous/sdnext:${SD_WEBUI_VERSION:-latest} image: ${GHCR_IO_REGISTRY:-ghcr.io}/absolutelyludicrous/sdnext:${SD_WEBUI_VERSION:-latest}
ports: ports:
- "${SD_WEBUI_PORT_OVERRIDE:-7860}:7860" - "${SD_WEBUI_PORT_OVERRIDE:-7860}:7860"
environment: environment:

View File

@@ -17,7 +17,7 @@ services:
webapp: webapp:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}triggerdotdev/trigger.dev:${TRIGGER_IMAGE_TAG:-v4.2.0} image: ${GHCR_IO_REGISTRY:-ghcr.io}/triggerdotdev/trigger.dev:${TRIGGER_IMAGE_TAG:-v4.2.0}
ports: ports:
- "${TRIGGER_PORT:-8030}:3030" - "${TRIGGER_PORT:-8030}:3030"
environment: environment:
@@ -312,7 +312,7 @@ services:
supervisor: supervisor:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}triggerdotdev/supervisor:${TRIGGER_IMAGE_TAG:-v4.2.0} image: ${GHCR_IO_REGISTRY:-ghcr.io}/triggerdotdev/supervisor:${TRIGGER_IMAGE_TAG:-v4.2.0}
environment: environment:
- TZ=${TZ:-UTC} - TZ=${TZ:-UTC}
# Required settings # Required settings

View File

@@ -37,7 +37,7 @@ x-defaults: &defaults
services: services:
windmill-server: windmill-server:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}windmill-labs/windmill:${WINDMILL_VERSION:-main} image: ${GHCR_IO_REGISTRY:-ghcr.io}/windmill-labs/windmill:${WINDMILL_VERSION:-main}
container_name: windmill-server container_name: windmill-server
ports: ports:
- "${WINDMILL_PORT_OVERRIDE:-8000}:8000" - "${WINDMILL_PORT_OVERRIDE:-8000}:8000"
@@ -82,7 +82,7 @@ services:
windmill-worker: windmill-worker:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}windmill-labs/windmill:${WINDMILL_VERSION:-main} image: ${GHCR_IO_REGISTRY:-ghcr.io}/windmill-labs/windmill:${WINDMILL_VERSION:-main}
container_name: windmill-worker container_name: windmill-worker
environment: environment:
# Database configuration # Database configuration
@@ -143,7 +143,7 @@ services:
# Optional: LSP service for code intelligence # Optional: LSP service for code intelligence
windmill-lsp: windmill-lsp:
<<: *defaults <<: *defaults
image: ${GHCR_IO_REGISTRY:-ghcr.io/}windmill-labs/windmill-lsp:${WINDMILL_LSP_VERSION:-latest} image: ${GHCR_IO_REGISTRY:-ghcr.io}/windmill-labs/windmill-lsp:${WINDMILL_LSP_VERSION:-latest}
container_name: windmill-lsp container_name: windmill-lsp
profiles: profiles:
- dev - dev