|
1 | 1 | services:
|
2 |
| - db: |
3 |
| - image: postgres |
4 |
| - restart: always |
5 |
| - container_name: database |
6 |
| - hostname: postgres |
7 |
| - volumes: |
8 |
| - - yeetfile_data:/var/lib/postgresql/data |
9 |
| - - ./backend/db/scripts/init.sql:/docker-entrypoint-initdb.d/init.sql |
10 |
| - environment: |
11 |
| - POSTGRES_HOST_AUTH_METHOD: md5 |
12 |
| - POSTGRES_USER: ${YEETFILE_DB_USER:-postgres} |
13 |
| - POSTGRES_PASSWORD: ${YEETFILE_DB_PASS:-postgres} |
14 |
| - POSTGRES_DB: ${YEETFILE_DB_NAME:-yeetfile} |
15 |
| - #ports: |
16 |
| - # - "5432:5432" # Map db port to host |
17 |
| - healthcheck: |
18 |
| - test: [ "CMD-SHELL", "pg_isready -U postgres" ] |
19 |
| - interval: 3s |
20 | 2 |
|
21 | 3 | api:
|
| 4 | + image: ghcr.io/benbusby/yeetfile:0.0.2 |
22 | 5 | container_name: yeetfile
|
23 |
| - restart: always |
24 |
| - build: |
25 |
| - context: . |
26 |
| - dockerfile: Dockerfile |
| 6 | + restart: unless-stopped |
27 | 7 | ports:
|
28 |
| - - "${YEETFILE_PORT:-8090}:${YEETFILE_PORT:-8090}" |
| 8 | + - 8090:${YEETFILE_PORT:-8090} |
| 9 | + expose: |
| 10 | + - 8090 |
29 | 11 | depends_on:
|
30 | 12 | db:
|
31 | 13 | condition: service_healthy
|
32 |
| - env_file: "${YEETFILE_ENV_FILE:-template.env}" |
33 | 14 | environment:
|
34 |
| - YEETFILE_DB_HOST: "db" |
35 |
| - |
36 |
| - # Map upload dir to host machine (local only) |
| 15 | + - YEETFILE_DEBUG=${YEETFILE_DEBUG:-0} |
| 16 | + - YEETFILE_STORAGE=${YEETFILE_STORAGE:-local} |
| 17 | + - YEETFILE_DEFAULT_USER_STORAGE=${YEETFILE_DEFAULT_USER_STORAGE:--1} |
| 18 | + - YEETFILE_DEFAULT_USER_SEND=${YEETFILE_DEFAULT_USER_SEND:--1} |
| 19 | + - YEETFILE_HOST=${YEETFILE_HOST:-0.0.0.0} |
| 20 | + - YEETFILE_PORT=${YEETFILE_PORT:-8090} |
| 21 | + - YEETFILE_DB_USER=${YEETFILE_DB_USER:-postgres} |
| 22 | + - YEETFILE_DB_PASS=${YEETFILE_DB_PASS:-postgres} |
| 23 | + - YEETFILE_DB_NAME=${YEETFILE_DB_NAME:-yeetfile} |
| 24 | + - YEETFILE_DB_HOST=${YEETFILE_DB_HOST:-db} |
37 | 25 | volumes:
|
38 |
| - - ~/.local/share/yeetfile/uploads:/app/uploads |
| 26 | + - ./volumes/yeetfile/uploads:/app/uploads |
39 | 27 |
|
40 |
| -volumes: |
41 |
| - yeetfile_data: |
42 |
| - external: true # Run "docker volume create --name=yeetfile_data" beforehand |
| 28 | + db: |
| 29 | + image: postgres:16-alpine |
| 30 | + container_name: yeetfile-db |
| 31 | + restart: unless-stopped |
| 32 | + volumes: |
| 33 | + - ./volumes/yeetfile/data:/var/lib/postgresql/data |
| 34 | + environment: |
| 35 | + - POSTGRES_HOST_AUTH_METHOD=${POSTGRES_HOST_AUTH_METHOD:-md5} |
| 36 | + - POSTGRES_USER=${YEETFILE_DB_USER:-postgres} |
| 37 | + - POSTGRES_PASSWORD=${YEETFILE_DB_PASS:-postgres} |
| 38 | + - POSTGRES_DB=${YEETFILE_DB_NAME:-yeetfile} |
| 39 | + expose: |
| 40 | + - 5432 |
| 41 | + healthcheck: |
| 42 | + test: [ "CMD-SHELL", "pg_isready -U postgres" ] |
| 43 | + interval: 3s |
0 commit comments