I've been using it for a while and haven't encountered any issues with its operation.
I don't know if it makes a difference, but i don't use volumes; i simply bound it to a folder.
Try copying my compose exactly as it is, modifying the "volumes" variables to always point to the same folder.
Code
services:
frontend:
image: spupuz/vibenvr-frontend:latest
container_name: vibenvr-frontend
ports:
- "8933:80"
volumes:
- /srv/docker/vibenvr/data:/data
networks:
- vibe-network
depends_on:
- backend
restart: always
backend:
image: spupuz/vibenvr-backend:latest
container_name: vibenvr-backend
ports:
- "5000:5000"
volumes:
- /srv/docker/vibenvr/data:/data
- /etc/localtime:/etc/localtime:ro
environment:
- DATABASE_URL=postgresql://vibenvr:vibenvrpass@db:5432/vibenvr
- TZ=Europe/Rome
- SECRET_KEY=${SECRET_KEY:-vibe_secure_key_9823748923748923_change_in_prod}
- WEBHOOK_SECRET=${WEBHOOK_SECRET:-vibe_secure_key_9823748923748923_change_in_prod}
depends_on:
db:
condition: service_healthy
engine:
condition: service_started
restart: always
command: >
sh -c "mkdir -p /data/logs && chmod 777 /data/logs && touch /data/logs/backend.log && uvicorn main:app --host 0.0.0.0 --port 5000 2>&1 | tee -a /data/logs/backend.log"
networks:
- vibe-network
engine:
image: spupuz/vibenvr-engine:latest
container_name: vibenvr-engine
ports:
- "5001:5001"
volumes:
- /srv/docker/vibenvr/data:/var/lib/vibe/recordings
- /etc/localtime:/etc/localtime:ro
environment:
- BACKEND_URL=http://vibenvr-backend:5000
- TZ=Europe/Rome
# Hardware Acceleration Settings
- HW_ACCEL=true # Enabled for local GPU usage
- HW_ACCEL_TYPE=${HW_ACCEL_TYPE:-auto} # auto, nvidia, intel, amd
- WEBHOOK_SECRET=${WEBHOOK_SECRET:-vibe_secure_key_9823748923748923_change_in_prod}
# GPU Device Passthrough (uncomment what applies to your system)
# For Intel/AMD (VAAPI) on Linux:
devices:
- /dev/dri:/dev/dri
# For NVIDIA (requires nvidia-container-toolkit):
# deploy:
# resources:
# reservations:
# devices:
# - driver: nvidia
# count: 1
# capabilities: [gpu]
restart: always
command: >
sh -c "mkdir -p /var/lib/vibe/recordings/logs && touch /var/lib/vibe/recordings/logs/engine.log && python -u main.py 2>&1 | grep --line-buffered -v 'SEI type 764' | tee -a /var/lib/vibe/recordings/logs/engine.log"
networks:
- vibe-network
db:
image: postgres:15-alpine
container_name: vibenvr-db
environment:
- POSTGRES_USER=vibenvr
- POSTGRES_PASSWORD=vibenvrpass
- POSTGRES_DB=vibenvr
volumes:
- /srv/docker/vibenvr/data:/var/lib/postgresql/data
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U vibenvr" ]
interval: 5s
timeout: 5s
retries: 5
networks:
- vibe-network
restart: always
#volumes:
# vibenvr_data:
# vibenvr_db_data:
networks:
vibe-network:
driver: bridge
Display More