mirror of
https://github.com/beak-insights/felicity-lims.git
synced 2025-02-22 16:03:00 +08:00
128 lines
3 KiB
YAML
128 lines
3 KiB
YAML
version: '3.5'
|
|
|
|
services:
|
|
|
|
felicity_fe:
|
|
container_name: felicity_fe
|
|
restart: unless-stopped
|
|
build:
|
|
context: ./
|
|
target: webapp
|
|
dockerfile: Dockerfile.dev
|
|
volumes:
|
|
- ./webapp:/app/webapp
|
|
environment:
|
|
- NODE_ENV=development
|
|
- VITE_NODE_ENV=development
|
|
- VITE_APP_TITLE=Felicity Dev
|
|
- VITE_BASE_URL=http://localhost:8000
|
|
ports:
|
|
- "3000:3000"
|
|
depends_on:
|
|
- felicity_pg
|
|
networks:
|
|
- felicitynet
|
|
command: bash -c "pnpm webapp:dev --host --port 3000"
|
|
|
|
felicity_be:
|
|
container_name: felicity_be
|
|
restart: unless-stopped
|
|
build:
|
|
context: ./
|
|
target: webapi
|
|
dockerfile: Dockerfile.dev
|
|
environment:
|
|
- POSTGRES_SERVER=felicity_pg
|
|
- POSTGRES_DB=felicity_lims
|
|
- POSTGRES_USER=felicity
|
|
- POSTGRES_PASSWORD=felicity
|
|
- POSTGRES_HOST_AUTH_METHOD=trust
|
|
- LOAD_SETUP_DATA=${LOAD_SETUP_DATA:-False}
|
|
- SERVE_WEBAPP=${SERVE_WEBAPP:-False}
|
|
volumes:
|
|
- ./felicity/:/app/felicity
|
|
ports:
|
|
- 8000:8000
|
|
depends_on:
|
|
- felicity_pg
|
|
networks:
|
|
- felicitynet
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
command: bash -c "cd felicity && alembic upgrade head && uvicorn main:felicity --host=0.0.0.0 --port=8000"
|
|
|
|
felicity_pg:
|
|
container_name: felicity_pg
|
|
image: postgres:12
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_DB=felicity_lims
|
|
- POSTGRES_USER=felicity
|
|
- POSTGRES_PASSWORD=felicity
|
|
- POSTGRES_HOST_AUTH_METHOD=trust
|
|
volumes:
|
|
- ./services/postgres/init/:/docker-entrypoint-initdb.d/
|
|
- pg-data:/var/lib/postgresql/data
|
|
ports:
|
|
- 5434:5432
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
networks:
|
|
- felicitynet
|
|
|
|
pgadmin:
|
|
container_name: felicity.pgadmin
|
|
image: dpage/pgadmin4
|
|
environment:
|
|
PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-admin@pgadmin.org}
|
|
PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin}
|
|
volumes:
|
|
- pgadmin:/root/.pgadmin
|
|
ports:
|
|
- "${PGADMIN_PORT:-5050}:80"
|
|
networks:
|
|
- felicitynet
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- felicity_pg
|
|
|
|
minio:
|
|
image: bitnami/minio:2024.7.31
|
|
ports:
|
|
- '9000:9000'
|
|
- '9001:9001'
|
|
networks:
|
|
- felicitynet
|
|
volumes:
|
|
- 'minio_data:/data'
|
|
environment:
|
|
- MINIO_ROOT_USER=felicity
|
|
- MINIO_ROOT_PASSWORD=felicity
|
|
- MINIO_DEFAULT_BUCKET=felicity
|
|
|
|
mongo:
|
|
image: mongo
|
|
restart: always
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: felicity
|
|
MONGO_INITDB_ROOT_PASSWORD: felicity
|
|
|
|
mongo-express:
|
|
image: mongo-express
|
|
restart: always
|
|
ports:
|
|
- 8081:8081
|
|
environment:
|
|
ME_CONFIG_MONGODB_ADMINUSERNAME: felicity
|
|
ME_CONFIG_MONGODB_ADMINPASSWORD: felicity
|
|
ME_CONFIG_MONGODB_URL: mongodb://felicity:felicity@mongo:27017/
|
|
ME_CONFIG_BASICAUTH: false
|
|
|
|
volumes:
|
|
pg-data:
|
|
pgadmin:
|
|
minio_data:
|
|
|
|
networks:
|
|
felicitynet:
|
|
driver: bridge
|