Aide installation PeerTube avec docker-compose et Dokploy

Bonjour,
J’ai essayé d’installer PeerTube sans succès.
Voici mon docker-compose :

services:

  peertube:
    image: chocobozzz/peertube:latest
    environment:
      - PEERTUBE_DB_HOSTNAME
      - PEERTUBE_DB_USERNAME
      - PEERTUBE_DB_PASSWORD
      - PEERTUBE_DB_NAME
      - PEERTUBE_REDIS_HOSTNAME
      - PEERTUBE_REDIS_PORT
      - PEERTUBE_SMTP_HOSTNAME
      - PEERTUBE_SMTP_PORT
      - PEERTUBE_SMTP_USERNAME
      - PEERTUBE_SMTP_PASSWORD
      - PEERTUBE_SMTP_FROM
      - PEERTUBE_ADMIN_EMAIL
      - PEERTUBE_SMTP_TLS
      - PEERTUBE_SECRET
    ports:
      - "9000:9000"
    volumes:
      - ./docker-volume/data:/data
      - ./docker-volume/config:/config
    depends_on:
      - redis
    restart: "always"
    pull_policy: always

  webserver:
    image: chocobozzz/peertube-webserver:latest
    environment:
      - PEERTUBE_WEBSERVER_HOSTNAME
    ports:
      - "8080:80"
      - "4443:443"
    volumes:
      - ./docker-volume/nginx/peertube:/etc/nginx/conf.d/peertube.template
      - assets:/var/www/peertube/peertube-latest/client/dist:ro
      - ./docker-volume/data:/var/www/peertube/storage
    depends_on:
      - peertube
    restart: always
    pull_policy: always

  redis:
    image: redis:6-alpine
    volumes:
      - ./docker-volume/redis:/data
    restart: "always"
    pull_policy: always

volumes:
  assets:

J’ai fait pointer mon nom de domaine sur PeerTube, j’accède à une interface très épurée qui ne ressemble pas trop à celle que j’ai vu dans les exemples et j’ai un message rouge en bas à droite :

Error
Cannot retrieve OAuth Client credentials: Server error: . Ensure you have correctly configured PeerTube (config/ directory), in particular the "webserver" section.

J’ai vu pas mal de sujet qui traite de cette erreur, mais pas trouvé de solution pour fix.

Et pour info j’utilise https://dokploy.com/ pour deploy qui s’occupe de Traefik.

Merci

Cette erreur est le symptôme d’un écart entre l’url utilisée dans le navigateur et l’url configurée sur le backend.
Vérifier les valeurs pour les paramètres webserver.hostname, webserver.port et webserver.https (les variables d’environnement correspondantes pour docker sont du type PEERTUBE_WEBSERVER_HOSTNAME).

Bonjour,

Votre docker compose semble dater. Vous pouvez re-suivre la procédure d’installation sur Docker guide | PeerTube documentation

En fait j’ai essayé de me baser dessus (sur ce docker-compose officiel) en supprimant certbot (dokploy gère la certification) & postfix (je passe par smtp de Brevo, plus simple pour DKIM). Effectivement j’ai du sans doute trop le simplifier, je cherche justement ce que j’ai dégagé mais que je n’aurai pas du. Typiquement j’avais un conflit sur les ports de webserver que j’ai du adapter…
Je crois que c’est dans les tuyaux de Dokploy d’ajouter le template de PeerTube : Exhaustive Template List Proposal · Issue #650 · Dokploy/dokploy · GitHub pour info

L’image du peertube service n’est pas du tout la bonne : PeerTube/support/docker/production/docker-compose.yml at develop · Chocobozzz/PeerTube · GitHub

Oui c’est bon j’ai mis la bonne l’interface est un poil mieux (-_-)
Par contre maintenant j’ai des erreurs REDIS :

[video.mondomain.com:443] 2025-02-18 11:10:31.693 error: Connection to redis has closed.

[video.mondomain.com:443] 2025-02-18 11:10:31.693 error: Reconnecting to redis in 2000.

[video.mondomain.com:443] 2025-02-18 11:10:33.699 error: Redis failed to connect {

"err": {

"stack": "Error: getaddrinfo EAI_AGAIN redis\n at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26)",

"message": "getaddrinfo EAI_AGAIN redis",

"errno": -3001,

"code": "EAI_AGAIN",

"syscall": "getaddrinfo",

"hostname": "redis"

Erreurs sur logs du webserver :

envsubst: error while reading "standard input": Is a directory
envsubst: error while reading "standard input": Is a directory
envsubst: error while reading "standard input": Is a directory
envsubst: error while reading "standard input": Is a directory
envsubst: error while reading "standard input": Is a directory

Bonjour,
Ok j’ai réussi, il y avait une petite astuce pour que cela fonctionne avec REDIS, voici mon docker-compose fonctionnel :

services:
  peertube:
    image: chocobozzz/peertube:production-bookworm
    env_file:
      - .env
    volumes:
      - data:/data
      - config:/config
    depends_on:
      - redis
    networks:
      - peertube_internal
    restart: "always"
    pull_policy: always

  redis:
    image: redis:6-alpine
    volumes:
      - redis:/data
    networks:
      - peertube_internal
    restart: "always"
    pull_policy: always

volumes:
  data:
  config:
  redis:

networks:
  peertube_internal:
    driver: bridge

Un grand merci, c’est vraiment une super app !!

1 « J'aime »