Deploy mateclaw
Team-ready self-hosted AI agent workspace with web UI
Just deployed
/app/data
MySQL
Just deployed
/var/lib/mysql
Deploy and Host MateClaw on Railway
About Hosting MateClaw on Railway
MateClaw runs on Railway as a Docker-only deployment using a pre-built image that bundles the Spring Boot backend and Vue admin UI. Railway provides the public HTTPS domain, private service networking, managed MySQL, and persistent volumes for app data.
Tech Stack
- Spring Boot 3.5 backend on Java 21
- Vue 3, TypeScript, Vite, Element Plus, and TailwindCSS admin UI
- MySQL database with Flyway migrations
- Playwright runtime with Chromium/browser tooling baked into the app image
- Railway Docker image deployments, private networking, domains, and volumes
Why Deploy MateClaw on Railway
Railway is a good fit for MateClaw because it can run the full Docker image without source builds, attach managed MySQL automatically, expose the web console over HTTPS, and persist user state under /app/data. The template keeps startup simple by trusting the image ENTRYPOINT and only setting the variables required for routing, database access, and secure defaults.
Common Use Cases
- Host a team AI workspace with a browser-based admin console
- Manage digital employees, model providers, skills, knowledge bases, and workflows
- Run a self-hosted agent platform with your own API keys and MySQL storage
- Experiment with MateClaw's web UI, RBAC, audit trail, and browser automation tools
Deployment Notes
The app service uses the pre-built Docker Hub image xiaosong233/mateclaw-railway:latest and listens on container port 18088; Railway routes public traffic by setting PORT=18088. The image ENTRYPOINT is not overridden. A volume is mounted at /app/data to persist uploaded files, H2 fallback data, skill workspace files, and other runtime state, while MySQL persists its own data at /var/lib/mysql. Initial login is admin / admin123; add LLM provider keys after startup in Settings -> Models. The template sets JWT_SECRET with a generated secret and wires database variables from the MySQL service.
Dependencies for MateClaw on Railway
MateClaw requires one app container and one MySQL database. The app connects to MySQL over Railway private networking and serves the browser UI directly from the Spring Boot container.
Deployment Dependencies
| Service | Image | Port | Volume |
|---|---|---|---|
| app | xiaosong233/mateclaw-railway:latest | 18088 | /app/data |
| MySQL | mysql:9.4 | 3306 | /var/lib/mysql |
Template Content
