Files
pulse/docker-compose.yml
T

77 lines
2.0 KiB
YAML

services:
# Option 1: Use pre-built image from Docker Hub (default)
pulse:
image: rcourtman/pulse:latest
container_name: pulse-app
restart: unless-stopped
ports:
- "7654:7654"
env_file:
- .env
volumes:
- ./logs:/app/logs
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:7654/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
# Option 2: Build from source (uncomment to use)
# To use this option, comment out the 'pulse' service above and uncomment this section
# pulse-build:
# build:
# context: .
# target: production
# args:
# NODE_ENV: production
# LOG_LEVEL: info
# ENABLE_DEV_TOOLS: 'false'
# PORT: 7654
# ports:
# - "7654:7654"
# restart: unless-stopped
# env_file:
# - .env
# volumes:
# - ./logs:/app/logs
# healthcheck:
# test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:7654/health"]
# interval: 30s
# timeout: 10s
# retries: 3
# start_period: 10s
# Development service with live reloading
# Use this for local development with hot reloading of both frontend and backend
# Run with: docker-compose up pulse-dev
pulse-dev:
build:
context: .
target: development
args:
NODE_ENV: development
LOG_LEVEL: debug
ENABLE_DEV_TOOLS: 'true'
PORT: 7654
VITE_PORT: 9513
ports:
- "7654:7654"
- "9513:9513"
restart: unless-stopped
env_file:
- .env
volumes:
- ./:/app
- /app/node_modules
- /app/frontend/node_modules
environment:
- NODE_ENV=development
- LOG_LEVEL=debug
- ENABLE_DEV_TOOLS=true
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:7654/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s