Skip to content

Troubleshooting

Terminal window
docker compose ps
docker compose logs <service-name>

If db-init or api fail with database connection errors:

Terminal window
# Check if PostgreSQL is healthy
docker compose exec postgres pg_isready -U flowlike
# View PostgreSQL logs
docker compose logs postgres
# Restart the init job
docker compose up db-init
Terminal window
# Find what's using the port
lsof -i :8080
# Or change the port in .env
API_PORT=8080
Terminal window
# Check runtime health
curl http://localhost:9000/health
# Verify EXECUTOR_POOL_URL in docker-compose.yml
docker compose exec api env | grep EXECUTOR
Terminal window
# Direct health check
docker compose exec api curl -v http://localhost:8080/health
# Check for startup errors
docker compose logs api | grep -i error
Terminal window
# View migration logs
docker compose logs db-init
# Re-run migrations
docker compose up db-init --force-recreate
Terminal window
# Remove volume and recreate
docker compose down
docker volume rm docker-compose_postgres_data
docker compose up -d
Terminal window
docker compose exec postgres psql -U flowlike -d flowlike
Terminal window
# Test connectivity from API container
docker compose exec api curl -I "$AWS_ENDPOINT"
# Check credentials are set
docker compose exec api env | grep AWS

Verify your bucket policy allows the credentials to read/write:

Terminal window
# AWS CLI test (if installed)
aws s3 ls s3://your-bucket --endpoint-url $AWS_ENDPOINT

Some providers require path-style URLs:

AWS_USE_PATH_STYLE=true

Increase timeout in .env:

EXECUTION_TIMEOUT_SECONDS=7200 # 2 hours

Increase runtime memory limits:

# In docker-compose.yml
runtime:
deploy:
resources:
limits:
memory: 16G

Reduce the limit or scale horizontally:

MAX_CONCURRENT_EXECUTIONS=5
Terminal window
docker compose up -d --scale runtime=2

Regenerate the keypair and update both services:

Terminal window
./tools/gen-execution-keys.sh
# Update .env with new EXECUTION_KEY, EXECUTION_PUB
docker compose down
docker compose up -d
Terminal window
# Check if keys are set
docker compose exec api env | grep EXECUTION
RUST_LOG=debug,docker_compose_api=trace
Terminal window
docker compose logs -f
Terminal window
docker compose logs > flowlike-logs.txt

If all else fails, start fresh:

Terminal window
# Stop and remove everything
docker compose down -v
# Remove cached images
docker compose build --no-cache
# Start fresh
docker compose up -d