add .env.example and docker-compose.dev.yml for local dev.
Postgres 16, pgAdmin 8, and env placeholders for backend, ALTCHA, and throttles.
This commit is contained in:
@@ -0,0 +1,37 @@
|
|||||||
|
COMPOSE_PROJECT_NAME=private_image_dev
|
||||||
|
|
||||||
|
POSTGRES_HOST=postgres
|
||||||
|
POSTGRES_DB=private_image
|
||||||
|
POSTGRES_USER=postgres
|
||||||
|
POSTGRES_PASSWORD=postgres
|
||||||
|
POSTGRES_PORT=5432
|
||||||
|
|
||||||
|
PGADMIN_DEFAULT_EMAIL=admin@example.com
|
||||||
|
PGADMIN_DEFAULT_PASSWORD=admin
|
||||||
|
PGADMIN_PORT=5555
|
||||||
|
|
||||||
|
BACKEND_PORT=3000
|
||||||
|
FRONTEND_PORT=5173
|
||||||
|
|
||||||
|
NODE_ENV=development
|
||||||
|
|
||||||
|
CORS_ORIGINS=http://localhost:5173,http://127.0.0.1:5173
|
||||||
|
|
||||||
|
MAX_IMAGES_PER_UPLOAD=10
|
||||||
|
MULTER_MAX_FILE_BYTES=10485760
|
||||||
|
|
||||||
|
CAPTCHA_ENABLED=true
|
||||||
|
|
||||||
|
ALTCHA_HMAC_KEY=change-me-use-long-random-secret
|
||||||
|
ALTCHA_MAX_NUMBER=50000
|
||||||
|
|
||||||
|
NEVER_MODE_INACTIVITY_DAYS=365
|
||||||
|
|
||||||
|
THROTTLE_UPLOAD_TTL_MS=60000
|
||||||
|
THROTTLE_UPLOAD_LIMIT=20
|
||||||
|
THROTTLE_HOTLINK_PER_IP_TTL_MS=60000
|
||||||
|
THROTTLE_HOTLINK_PER_IP_LIMIT=1000
|
||||||
|
THROTTLE_HOTLINK_PER_ID_TTL_MS=60000
|
||||||
|
THROTTLE_HOTLINK_PER_ID_LIMIT=120
|
||||||
|
|
||||||
|
VITE_MAX_IMAGES_PER_UPLOAD=10
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:16
|
||||||
|
container_name: ${COMPOSE_PROJECT_NAME}_postgres
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
POSTGRES_DB: ${POSTGRES_DB}
|
||||||
|
POSTGRES_USER: ${POSTGRES_USER}
|
||||||
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||||
|
volumes:
|
||||||
|
- private_image_postgres_data:/var/lib/postgresql/data
|
||||||
|
healthcheck:
|
||||||
|
test: ['CMD-SHELL', 'pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
|
||||||
|
interval: 5s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 10
|
||||||
|
|
||||||
|
pgadmin:
|
||||||
|
image: dpage/pgadmin4:8
|
||||||
|
container_name: ${COMPOSE_PROJECT_NAME}_pgadmin
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL}
|
||||||
|
PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD}
|
||||||
|
ports:
|
||||||
|
- '${PGADMIN_PORT}:80'
|
||||||
|
volumes:
|
||||||
|
- private_image_pgadmin_data:/var/lib/pgadmin
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
private_image_postgres_data:
|
||||||
|
private_image_pgadmin_data:
|
||||||
Reference in New Issue
Block a user