Server Deployment
Deploying the Mosaic server
Deployment
Docker (Recommended)
The published latest image is built from server-go/Dockerfile and runs the
Go server by default. The Rust reference image is built only when the build
workflow is invoked with server: rust.
Use the repository Compose file, which includes persistent volumes and database readiness checks. Copy it from your checkout into a deployment directory:
mkdir -p mosaic-deploy
cp server/docker-compose.yml mosaic-deploy/docker-compose.yml
cp server-go/.env.example mosaic-deploy/.env
cd mosaic-deploySet strong values for POSTGRES_PASSWORD, JWT_SECRET and ADMIN_PASSWORD
in .env. Pin the verified image with IMAGE_TAG=server-v1.1.5. Then run:
docker compose up -d
curl http://localhost:8080/healthThe image path is ghcr.io/crayonlu/mosaic/mosaic-server. The storage bind mount
and PostgreSQL volume must be included in backups. The new /openapi.json
endpoint requires a subsequent release containing this source update.
Reverse Proxy
server {
listen 443 ssl;
server_name mosaic.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
}
}