Skip to content

Quick Start

Deploy Strawly in approximately 5 minutes.

1. Clone the deployment repository

git clone https://codeberg.org/Strawly/deployment.git
cd deployment

2. Install script dependencies

npm install

3. Configure your modules

Open strawly-deployment.yml and set which modules you want enabled:

modules:
  optimizations-azure:
    enabled: true   # set to false to skip this module

See Module Management for the full configuration reference.

4. Generate the Docker Compose file

npm run generate-compose

This reads strawly-deployment.yml and produces docker-compose.generated.yml.

5. Set up your environment file

cp .env.example .env

Open .env and fill in the required values. At minimum:

POSTGRES_PASSWORD=<strong-password>
JWT_SECRET=<48-byte-hex>
CREDENTIALS_ENCRYPTION_KEY=<32-byte-hex>
CODEBERG_USERNAME=strawly

Use the secrets script to generate the cryptographic values:

./scripts/generate-secrets.sh >> .env

If you enabled the Azure module, also add:

AZURE_TENANT_ID=<your-tenant-id>
AZURE_CLIENT_ID=<your-client-id>
AZURE_CLIENT_SECRET=<your-client-secret>
AZURE_SUBSCRIPTION_ID=<your-subscription-id>

See Environment Variables for the full reference.

6. Pull images and deploy

docker compose -f docker-compose.generated.yml pull
docker compose -f docker-compose.generated.yml up -d

Services start in this order automatically:

  1. PostgreSQL
  2. Migrations (applies schema, runs once)
  3. Seeder (seeds initial data, runs once)
  4. Backend
  5. Modules (parallel)
  6. Frontend

7. Verify health

npm run health-check

Or check manually:

curl http://localhost:3001/health   # Backend
curl http://localhost:3000/         # Frontend
curl http://localhost:3002/health   # Azure module (if enabled)

8. Log in

Open http://localhost:3000 in your browser.

Default credentials:

  • Email: admin@strawly.app
  • Password: admin123

Change the default password immediately

The default password is publicly known. See First Login for instructions on changing it before doing anything else.

Next steps