-
Notifications
You must be signed in to change notification settings - Fork 58
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
67 lines (63 loc) · 2.04 KB
/
Copy pathdocker-compose.yml
File metadata and controls
67 lines (63 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# =============================================================================
# Craftplan — Docker Compose (Pre-built Image)
# =============================================================================
# Deploy Craftplan without cloning the repo:
#
# curl -O https://raw.githubusercontent.com/puemos/craftplan/main/docker-compose.yml
# curl -O https://raw.githubusercontent.com/puemos/craftplan/main/.env.example
# cp .env.example .env
# # Fill in secrets (see .env.example for instructions)
# docker compose up -d
#
# Craftplan will be available at http://localhost:4000
services:
craftplan:
image: ghcr.io/puemos/craftplan:latest
ports:
- "${PORT:-4000}:${PORT:-4000}"
env_file: .env
environment:
DATABASE_URL: "ecto://postgres:${POSTGRES_PASSWORD}@postgres/craftplan"
AWS_S3_SCHEME: "http://"
AWS_S3_HOST: minio
AWS_ACCESS_KEY_ID: "${MINIO_ROOT_USER:-minioadmin}"
AWS_SECRET_ACCESS_KEY: "${MINIO_ROOT_PASSWORD:-minioadmin}"
AWS_S3_BUCKET: "${AWS_S3_BUCKET:-craftplan}"
AWS_REGION: "us-east-1"
depends_on:
postgres:
condition: service_healthy
minio:
condition: service_started
restart: unless-stopped
postgres:
image: postgres:16
environment:
POSTGRES_DB: craftplan
POSTGRES_USER: postgres
POSTGRES_PASSWORD: "${POSTGRES_PASSWORD}"
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
restart: unless-stopped
minio:
image: minio/minio:latest
entrypoint: sh
command: -c 'mkdir -p /data/craftplan && /usr/bin/minio server /data --console-address ":9001"'
environment:
MINIO_ROOT_USER: "${MINIO_ROOT_USER:-minioadmin}"
MINIO_ROOT_PASSWORD: "${MINIO_ROOT_PASSWORD:-minioadmin}"
ports:
- "9000:9000"
- "9001:9001"
volumes:
- minio_data:/data
restart: unless-stopped
volumes:
postgres_data:
minio_data: