ShipAI Docs
Deployment

Deployment

Practical deployment paths for ShipAI using Docker Compose or GitLab + Docker Swarm.

This project supports two production-capable deployment workflows and one local-first workflow.

Deployment Paths

1) Local Development (fastest)

Use this when you are coding features and need reliable local services.

bun run setup
bun dev

2) Single-host Docker runtime

Use this when you want containerized app + infra on one machine (no Swarm).

docker compose -f docker-compose-app.yml up -d
docker compose -f docker-compose-app.yml ps

3) GitLab CI/CD + Docker Swarm

Use this when you want image-based deploys, rolling updates, and manual deploy control in CI.

  • build/push jobs in .gitlab-ci.yml: build-app, build-web, build-worker, build-admin
  • deploy job in .gitlab-ci.yml: deploy (manual)
  • runtime definition: docker-stack.yml

Core deploy command executed on server:

docker stack deploy -c docker-stack.yml ai --with-registry-auth

Deployment consistency

Keep README.md, DEPLOYMENT.md, and .gitlab-ci.yml aligned whenever deployment topology changes.

On this page