Déploiement Docker

Déployez DBKeep avec Docker et Docker Compose.

Déploiement Docker

Docker est la méthode recommandée pour déployer DBKeep en production.

Prérequis

Docker Compose

Créez un fichier docker-compose.yml :

version: '3.8'

services:
  dbkeep:
    image: ghcr.io/steeven-th/dbkeep:latest
    ports:
      - "3000:3000"
    environment:
      - DATABASE_URL=postgresql://dbkeep:dbkeep@postgres:5432/dbkeep
      - BETTER_AUTH_SECRET=your-secret-key-min-32-characters
      - BETTER_AUTH_URL=http://localhost:3000
      - NUXT_PUBLIC_GUEST_MODE=false
      - NUXT_PUBLIC_ENABLE_REGISTER=true
    depends_on:
      - postgres
    restart: unless-stopped

  postgres:
    image: postgres:16-alpine
    environment:
      - POSTGRES_USER=dbkeep
      - POSTGRES_PASSWORD=dbkeep
      - POSTGRES_DB=dbkeep
    volumes:
      - postgres_data:/var/lib/postgresql/data
    restart: unless-stopped

volumes:
  postgres_data:

Lancement

# Démarrer les services
docker compose up -d

# Voir les logs
docker compose logs -f dbkeep

L'application est disponible sur http://localhost:3000.

Mode invité

Pour une utilisation personnelle sans authentification :

environment:
  - NUXT_PUBLIC_GUEST_MODE=true

Mise à jour

# Récupérer la dernière image
docker compose pull

# Redémarrer avec la nouvelle version
docker compose up -d

Reverse Proxy (Nginx)

Exemple de configuration Nginx :

server {
    listen 80;
    server_name dbkeep.example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_cache_bypass $http_upgrade;
    }
}

Note : N'oubliez pas de mettre à jour BETTER_AUTH_URL avec votre domaine public.