Multica
Multica is an open-source managed agents platform for teams. Assign tasks to AI coding agents (Claude Code, Codex, OpenClaw and more) that execute autonomously, report progress, and build reusable skills over time.
Configuration
name: multica
services:
postgres:
image: pgvector/pgvector:pg17
restart: unless-stopped
environment:
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 10
backend:
build:
context: "https://github.com/multica-ai/multica.git#main"
dockerfile: Dockerfile
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
volumes:
- backend_uploads:/app/data/uploads
environment:
DATABASE_URL: postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}?sslmode=disable
PORT: "8080"
JWT_SECRET: ${JWT_SECRET}
FRONTEND_ORIGIN: ${FRONTEND_ORIGIN}
ALLOWED_ORIGINS: ${ALLOWED_ORIGINS}
MULTICA_APP_URL: ${MULTICA_APP_URL}
RESEND_API_KEY: ${RESEND_API_KEY}
RESEND_FROM_EMAIL: ${RESEND_FROM_EMAIL}
GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID}
GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET}
GOOGLE_REDIRECT_URI: ${GOOGLE_REDIRECT_URI}
COOKIE_DOMAIN: ${COOKIE_DOMAIN}
S3_BUCKET: ${S3_BUCKET}
S3_REGION: ${S3_REGION}
CLOUDFRONT_DOMAIN: ${CLOUDFRONT_DOMAIN}
CLOUDFRONT_KEY_PAIR_ID: ${CLOUDFRONT_KEY_PAIR_ID}
CLOUDFRONT_PRIVATE_KEY: ${CLOUDFRONT_PRIVATE_KEY}
frontend:
build:
context: "https://github.com/multica-ai/multica.git#main"
dockerfile: Dockerfile.web
args:
REMOTE_API_URL: http://backend:8080
NEXT_PUBLIC_GOOGLE_CLIENT_ID: ${NEXT_PUBLIC_GOOGLE_CLIENT_ID}
restart: unless-stopped
depends_on:
- backend
environment:
HOSTNAME: "0.0.0.0"
volumes:
pgdata:
backend_uploads:[variables]
app_domain = "${domain}"
jwt_secret = "${password:64}"
postgres_password = "${password:32}"
[config]
[[config.domains]]
serviceName = "frontend"
port = 3000
host = "${app_domain}"
path = "/"
[config.env]
POSTGRES_DB = "multica"
POSTGRES_USER = "multica"
POSTGRES_PASSWORD = "${postgres_password}"
JWT_SECRET = "${jwt_secret}"
FRONTEND_ORIGIN = "https://${app_domain}"
ALLOWED_ORIGINS = "https://${app_domain}"
MULTICA_APP_URL = "https://${app_domain}"
RESEND_API_KEY = ""
RESEND_FROM_EMAIL = "[email protected]"
GOOGLE_CLIENT_ID = ""
GOOGLE_CLIENT_SECRET = ""
GOOGLE_REDIRECT_URI = "https://${app_domain}/auth/callback"
NEXT_PUBLIC_GOOGLE_CLIENT_ID = ""
COOKIE_DOMAIN = ""
S3_BUCKET = ""
S3_REGION = "us-west-2"
CLOUDFRONT_DOMAIN = ""
CLOUDFRONT_KEY_PAIR_ID = ""
CLOUDFRONT_PRIVATE_KEY = ""Base64
To import this template in Dokploy: create a Compose service → Advanced → Base64 import and paste the content below:
ewogICJjb21wb3NlIjogIm5hbWU6IG11bHRpY2Fcblxuc2VydmljZXM6XG4gIHBvc3RncmVzOlxuICAgIGltYWdlOiBwZ3ZlY3Rvci9wZ3ZlY3RvcjpwZzE3XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIFBPU1RHUkVTX0RCOiAke1BPU1RHUkVTX0RCfVxuICAgICAgUE9TVEdSRVNfVVNFUjogJHtQT1NUR1JFU19VU0VSfVxuICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICR7UE9TVEdSRVNfUEFTU1dPUkR9XG4gICAgdm9sdW1lczpcbiAgICAgIC0gcGdkYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YVxuICAgIGhlYWx0aGNoZWNrOlxuICAgICAgdGVzdDogW1wiQ01ELVNIRUxMXCIsIFwicGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn1cIl1cbiAgICAgIGludGVydmFsOiA1c1xuICAgICAgdGltZW91dDogNXNcbiAgICAgIHJldHJpZXM6IDEwXG5cbiAgYmFja2VuZDpcbiAgICBidWlsZDpcbiAgICAgIGNvbnRleHQ6IFwiaHR0cHM6Ly9naXRodWIuY29tL211bHRpY2EtYWkvbXVsdGljYS5naXQjbWFpblwiXG4gICAgICBkb2NrZXJmaWxlOiBEb2NrZXJmaWxlXG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBkZXBlbmRzX29uOlxuICAgICAgcG9zdGdyZXM6XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG4gICAgdm9sdW1lczpcbiAgICAgIC0gYmFja2VuZF91cGxvYWRzOi9hcHAvZGF0YS91cGxvYWRzXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBEQVRBQkFTRV9VUkw6IHBvc3RncmVzOi8vJHtQT1NUR1JFU19VU0VSfToke1BPU1RHUkVTX1BBU1NXT1JEfUBwb3N0Z3Jlczo1NDMyLyR7UE9TVEdSRVNfREJ9P3NzbG1vZGU9ZGlzYWJsZVxuICAgICAgUE9SVDogXCI4MDgwXCJcbiAgICAgIEpXVF9TRUNSRVQ6ICR7SldUX1NFQ1JFVH1cbiAgICAgIEZST05URU5EX09SSUdJTjogJHtGUk9OVEVORF9PUklHSU59XG4gICAgICBBTExPV0VEX09SSUdJTlM6ICR7QUxMT1dFRF9PUklHSU5TfVxuICAgICAgTVVMVElDQV9BUFBfVVJMOiAke01VTFRJQ0FfQVBQX1VSTH1cbiAgICAgIFJFU0VORF9BUElfS0VZOiAke1JFU0VORF9BUElfS0VZfVxuICAgICAgUkVTRU5EX0ZST01fRU1BSUw6ICR7UkVTRU5EX0ZST01fRU1BSUx9XG4gICAgICBHT09HTEVfQ0xJRU5UX0lEOiAke0dPT0dMRV9DTElFTlRfSUR9XG4gICAgICBHT09HTEVfQ0xJRU5UX1NFQ1JFVDogJHtHT09HTEVfQ0xJRU5UX1NFQ1JFVH1cbiAgICAgIEdPT0dMRV9SRURJUkVDVF9VUkk6ICR7R09PR0xFX1JFRElSRUNUX1VSSX1cbiAgICAgIENPT0tJRV9ET01BSU46ICR7Q09PS0lFX0RPTUFJTn1cbiAgICAgIFMzX0JVQ0tFVDogJHtTM19CVUNLRVR9XG4gICAgICBTM19SRUdJT046ICR7UzNfUkVHSU9OfVxuICAgICAgQ0xPVURGUk9OVF9ET01BSU46ICR7Q0xPVURGUk9OVF9ET01BSU59XG4gICAgICBDTE9VREZST05UX0tFWV9QQUlSX0lEOiAke0NMT1VERlJPTlRfS0VZX1BBSVJfSUR9XG4gICAgICBDTE9VREZST05UX1BSSVZBVEVfS0VZOiAke0NMT1VERlJPTlRfUFJJVkFURV9LRVl9XG5cbiAgZnJvbnRlbmQ6XG4gICAgYnVpbGQ6XG4gICAgICBjb250ZXh0OiBcImh0dHBzOi8vZ2l0aHViLmNvbS9tdWx0aWNhLWFpL211bHRpY2EuZ2l0I21haW5cIlxuICAgICAgZG9ja2VyZmlsZTogRG9ja2VyZmlsZS53ZWJcbiAgICAgIGFyZ3M6XG4gICAgICAgIFJFTU9URV9BUElfVVJMOiBodHRwOi8vYmFja2VuZDo4MDgwXG4gICAgICAgIE5FWFRfUFVCTElDX0dPT0dMRV9DTElFTlRfSUQ6ICR7TkVYVF9QVUJMSUNfR09PR0xFX0NMSUVOVF9JRH1cbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGRlcGVuZHNfb246XG4gICAgICAtIGJhY2tlbmRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIEhPU1ROQU1FOiBcIjAuMC4wLjBcIlxuXG52b2x1bWVzOlxuICBwZ2RhdGE6XG4gIGJhY2tlbmRfdXBsb2FkczpcbiIsCiAgImNvbmZpZyI6ICJbdmFyaWFibGVzXVxuYXBwX2RvbWFpbiA9IFwiJHtkb21haW59XCJcbmp3dF9zZWNyZXQgPSBcIiR7cGFzc3dvcmQ6NjR9XCJcbnBvc3RncmVzX3Bhc3N3b3JkID0gXCIke3Bhc3N3b3JkOjMyfVwiXG5cbltjb25maWddXG5bW2NvbmZpZy5kb21haW5zXV1cbnNlcnZpY2VOYW1lID0gXCJmcm9udGVuZFwiXG5wb3J0ID0gMzAwMFxuaG9zdCA9IFwiJHthcHBfZG9tYWlufVwiXG5wYXRoID0gXCIvXCJcblxuW2NvbmZpZy5lbnZdXG5QT1NUR1JFU19EQiA9IFwibXVsdGljYVwiXG5QT1NUR1JFU19VU0VSID0gXCJtdWx0aWNhXCJcblBPU1RHUkVTX1BBU1NXT1JEID0gXCIke3Bvc3RncmVzX3Bhc3N3b3JkfVwiXG5KV1RfU0VDUkVUID0gXCIke2p3dF9zZWNyZXR9XCJcbkZST05URU5EX09SSUdJTiA9IFwiaHR0cHM6Ly8ke2FwcF9kb21haW59XCJcbkFMTE9XRURfT1JJR0lOUyA9IFwiaHR0cHM6Ly8ke2FwcF9kb21haW59XCJcbk1VTFRJQ0FfQVBQX1VSTCA9IFwiaHR0cHM6Ly8ke2FwcF9kb21haW59XCJcblJFU0VORF9BUElfS0VZID0gXCJcIlxuUkVTRU5EX0ZST01fRU1BSUwgPSBcIm5vcmVwbHlAbXVsdGljYS5haVwiXG5HT09HTEVfQ0xJRU5UX0lEID0gXCJcIlxuR09PR0xFX0NMSUVOVF9TRUNSRVQgPSBcIlwiXG5HT09HTEVfUkVESVJFQ1RfVVJJID0gXCJodHRwczovLyR7YXBwX2RvbWFpbn0vYXV0aC9jYWxsYmFja1wiXG5ORVhUX1BVQkxJQ19HT09HTEVfQ0xJRU5UX0lEID0gXCJcIlxuQ09PS0lFX0RPTUFJTiA9IFwiXCJcblMzX0JVQ0tFVCA9IFwiXCJcblMzX1JFR0lPTiA9IFwidXMtd2VzdC0yXCJcbkNMT1VERlJPTlRfRE9NQUlOID0gXCJcIlxuQ0xPVURGUk9OVF9LRVlfUEFJUl9JRCA9IFwiXCJcbkNMT1VERlJPTlRfUFJJVkFURV9LRVkgPSBcIlwiXG4iCn0=Links
Tags
ai, agents, automation, self-hosted, claude-code, codex, developer-tools
Version: latest
MuleSoft ESB Runtime Community Edition
MuleSoft ESB Runtime is a lightweight, Java-based integration platform that allows you to easily integrate applications, data sources, and APIs. It provides powerful connectors and data transformation capabilities for building robust integration solutions.
Mumble
Mumble is an open-source, low-latency, high-quality voice chat software primarily intended for use while gaming.