NocoDB + Traefik
Requerimientos previos
- Docker instalado
 - Instancia de Traefik instalada y corriendo
 - Red de Docker creada para conectar contenedor con Traefik
 
Pasos
- Preparar dominio/subdominio de la instancia a configurar
 - Crear archivos de configuración
 - Cambiar valores de acuerdo a las necesidades de la instancia
 - Levantar contenedor (docker composer up)
 - Visitar aplicación y comprobar que esté funcionando correctamente
 
Archivos de configuración
.env
INSTANCE_URL=ejemplo.com
# Database
DATABASE_NAME=nocodb_bd
DATABASE_USER=nocodb_bd_user
DATABASE_PW=abc123
VOLUME_PATH=/var/www/ejemplo.com
compose.yaml
En la configuración de entrypoints y certresolver cambiar de acuerdo a los valores configurados en Traefik.
services:
  nocodb_app:
    container_name: nocodb_app
    depends_on:
      - nocodb_db
    environment:
      - "NC_DB=pg://nocodb_db:5432?u=${DATABASE_USER}&p=${DATABASE_PW}&d=${DATABASE_NAME}"
      - "NC_PUBLIC_URL=https://${INSTANCE_URL}"
      - "NC_DISABLE_TELE=true"
    image: "nocodb/nocodb:latest"
    labels:
      - "traefik.enable=true"
      - "traefik.http.services.nocodb.loadbalancer.server.port=8080"
      - "traefik.http.routers.nocodb.entrypoints=https"
      - "traefik.http.routers.nocodb.tls=true"
      - "traefik.http.routers.nocodb.tls.certresolver=tls"
      - "traefik.http.routers.nocodb.rule=Host(`${INSTANCE_URL}`)"
    networks:
      - traefik
    restart: always
    volumes:
      - "${VOLUME_PATH}/data:/usr/app/data"
  nocodb_db:
    container_name: nocodb_db
    environment:
      POSTGRES_DB: "${DATABASE_NAME}"
      POSTGRES_PASSWORD: "${DATABASE_PW}"
      POSTGRES_USER: "${DATABASE_USER}"
    healthcheck:
      interval: 60s
      retries: 10
      test: "pg_isready -U ${DATABASE_USER} -d ${DATABASE_NAME}"
      timeout: 2s
    image: "postgres:12.17-alpine"
    networks:
      - traefik
    restart: always
    volumes:
      - "${VOLUME_PATH}/db:/var/lib/postgresql/data"
networks:
  traefik:
    external: true
No hay comentarios para mostrar
No hay comentarios para mostrar