mirror of
https://github.com/omnivore-app/omnivore.git
synced 2026-03-11 08:54:26 +00:00
I encountered a number of issues while trying to get my own local dev environment set up. This change adds missing information to the readme, updates the Postgres image to one that includes required module dependencies, and removes next.js rewrite rules (IS THIS SAFE?) which were no longer used and causing issues.
99 lines
2.6 KiB
YAML
99 lines
2.6 KiB
YAML
version: '3'
|
|
services:
|
|
postgres:
|
|
image: "ankane/pgvector:v0.5.1"
|
|
container_name: "omnivore-postgres"
|
|
environment:
|
|
- POSTGRES_USER=postgres
|
|
- POSTGRES_PASSWORD=postgres
|
|
- POSTGRES_DB=omnivore
|
|
- PG_POOL_MAX=20
|
|
healthcheck:
|
|
test: "exit 0"
|
|
interval: 2s
|
|
timeout: 12s
|
|
retries: 3
|
|
expose:
|
|
- 5432
|
|
|
|
migrate:
|
|
build:
|
|
context: .
|
|
dockerfile: ./packages/db/Dockerfile
|
|
container_name: "omnivore-migrate"
|
|
command: '/bin/sh ./packages/db/setup.sh' # Also create a demo user with email: demo@omnivore.app, password: demo
|
|
environment:
|
|
- PGPASSWORD=postgres
|
|
- PG_HOST=postgres
|
|
- PG_USER=postgres
|
|
- PG_PASSWORD=postgres
|
|
- PG_DB=omnivore
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
|
|
api:
|
|
build:
|
|
context: .
|
|
dockerfile: ./packages/api/Dockerfile
|
|
container_name: "omnivore-api"
|
|
ports:
|
|
- "4000:8080"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "nc -z 0.0.0.0 8080 || exit 1"]
|
|
interval: 15s
|
|
timeout: 90s
|
|
environment:
|
|
- API_ENV=local
|
|
- PG_HOST=postgres
|
|
- PG_USER=app_user
|
|
- PG_PASSWORD=app_pass
|
|
- PG_DB=omnivore
|
|
- PG_PORT=5432
|
|
- PG_POOL_MAX=20
|
|
- JAEGER_HOST=jaeger
|
|
- IMAGE_PROXY_SECRET=some-secret
|
|
- JWT_SECRET=some_secret
|
|
- SSO_JWT_SECRET=some_sso_secret
|
|
- CLIENT_URL=http://localhost:3000
|
|
- GATEWAY_URL=http://localhost:8080/api
|
|
- CONTENT_FETCH_URL=http://content-fetch:8080/?token=some_token
|
|
depends_on:
|
|
migrate:
|
|
condition: service_completed_successfully
|
|
|
|
web:
|
|
build:
|
|
context: .
|
|
dockerfile: ./packages/web/Dockerfile
|
|
args:
|
|
- APP_ENV=prod
|
|
- BASE_URL=http://localhost:3000
|
|
- SERVER_BASE_URL=http://localhost:4000
|
|
- HIGHLIGHTS_BASE_URL=http://localhost:3000
|
|
container_name: "omnivore-web"
|
|
ports:
|
|
- "3000:8080"
|
|
environment:
|
|
- NEXT_PUBLIC_APP_ENV=prod
|
|
- NEXT_PUBLIC_BASE_URL=http://localhost:3000
|
|
- NEXT_PUBLIC_SERVER_BASE_URL=http://localhost:4000
|
|
- NEXT_PUBLIC_HIGHLIGHTS_BASE_URL=http://localhost:3000
|
|
depends_on:
|
|
api:
|
|
condition: service_healthy
|
|
|
|
content-fetch:
|
|
build:
|
|
context: .
|
|
dockerfile: ./packages/content-fetch/Dockerfile
|
|
container_name: "omnivore-content-fetch"
|
|
ports:
|
|
- "9090:8080"
|
|
environment:
|
|
- JWT_SECRET=some_secret
|
|
- VERIFICATION_TOKEN=some_token
|
|
- REST_BACKEND_ENDPOINT=http://api:8080/api
|
|
depends_on:
|
|
api:
|
|
condition: service_healthy
|