Offisielle Docker-bilete

Castopod plasserer 3 Docker-bilete på Docker Hub som del av den automatiserte byggjeprosessen:

I tillegg krev Castopod ein MySQL-kompatibel database. Du kan leggja til ein Redis-database for å handtera mellomlagring.

Støtta merkelappar

  • develop [unstable], det nyaste utviklingsbygget
  • beta [stable], det nyaste betaversjon-bygget
  • latest [stable], det nyaste versjonsbygget
  • 1.x.x [stable], bygg av ein spesivikk versjon (sidan 1.0.0)

Døme på bruk

  1. Installer docker og docker-compose

  2. Lag ei docker-compose.yml-fil som inneheld dette:

    version: "3.7"
    
    services:
      app:
        image: castopod/castopod:latest
        container_name: "castopod-app"
        volumes:
          - castopod-media:/var/www/castopod/public/media
        environment:
          MYSQL_DATABASE: castopod
          MYSQL_USER: castopod
          MYSQL_PASSWORD: changeme
          CP_BASEURL: "https://castopod.example.com"
          CP_ANALYTICS_SALT: changeme
          CP_CACHE_HANDLER: redis
          CP_REDIS_HOST: redis
        networks:
          - castopod-app
          - castopod-db
        ports:
          - 8000:8000
        restart: unless-stopped
    
      mariadb:
        image: mariadb:10.5
        container_name: "castopod-mariadb"
        networks:
          - castopod-db
        volumes:
          - castopod-db:/var/lib/mysql
        environment:
          MYSQL_ROOT_PASSWORD: changeme
          MYSQL_DATABASE: castopod
          MYSQL_USER: castopod
          MYSQL_PASSWORD: changeme
        restart: unless-stopped
    
      redis:
        image: redis:7.0-alpine
        container_name: "castopod-redis"
        volumes:
          - castopod-cache:/data
        networks:
          - castopod-app
    
    volumes:
      castopod-media:
      castopod-db:
      castopod-cache:
    
    networks:
      castopod-app:
      castopod-db:
    

    Du må tilpassa nokre av variablane til din bruk (td. CP_BASEURL, MYSQL_ROOT_PASSWORD, MYSQL_PASSWORD og CP_ANALYTICS_SALT).

  3. Set opp ein revers-mellomlagertenar for TLS (SSL/HTTPS)

    Du treng TLS for at ActivityPub skal verka. Dette kan du lett handtera med ein revers-mellomtenar, til dømes Caddy:

    #castopod
    castopod.eksempel.com {
        reverse_proxy localhost:8000
    }
    
  4. Køyr docker-compose up -d, vent på at han skal starta og gå til https://castopod.eksempel.com/cp-install for å gjera ferdig Castopod-oppsettet!

  5. Då er du klar og kan starta å podkasta! 🎙️🚀

Systemvariablar

  • castopod/castopod og castopod/app

    VariabelnamnType (standard)Standardval
    CP_BASEURLstrengudefinert
    CP_MEDIA_BASEURL?strengCP_BASEURL
    CP_ADMIN_GATEWAY?streng"cp-admin"
    CP_AUTH_GATEWAY?streng"cp-auth"
    CP_ANALYTICS_SALTstrengudefinert
    CP_DATABASE_HOSTNAME?streng"mariadb"
    CP_DATABASE_NAME?strengMYSQL_DATABASE
    CP_DATABASE_USERNAME?strengMYSQL_USER
    CP_DATABASE_PASSWORD?strengMYSQL_PASSORD
    CP_DATABASE_PREFIX?streng"cp_"
    CP_CACHE_HANDLER["file" eller "redis"]"file"
    CP_REDIS_HOST?streng"localhost"
    CP_REDIS_PASSORD?strengtom
    CP_REDIS_PORT?tal6379
    CP_REDIS_DATABASE?tal0
    CP_EMAIL_SMTP_HOST?strengudefinert
    CP_EMAIL_FROM?strengudefinert
    CP_EMAIL_SMTP_USERNAME?streng"localhost"
    CP_EMAIL_SMTP_PASSWORD?strengnull
    CP_EMAIL_SMTP_PORT?tal25
    CP_EMAIL_SMTP_CRYPTO["tls" eller "ssl"]"tls"
    CP_ENABLE_2FA?boolskudefinert
    CP_MEDIA_FILE_MANAGER?strengudefinert
    CP_MEDIA_S3_ENDPOINT?strengudefinert
    CP_MEDIA_S3_KEY?strengudefinert
    CP_MEDIA_S3_SECRET?strengudefinert
    CP_MEDIA_S3_REGION?strengudefinert
    CP_MEDIA_S3_BUCKET?strengudefinert
    CP_MEDIA_S3_PROTOCOL?taludefinert
    CP_MEDIA_S3_PATH_STYLE_ENDPOINT?boolskudefinert
    CP_MEDIA_S3_KEY_PREFIX?strengudefinert
    CP_DISABLE_HTTPS?[0 eller 1]udefinert
    CP_MAX_BODY_SIZE?tal (med suffiks)512M
    CP_PHP_MEMORY_LIMIT?tal (med suffiks)512M
    CP_TIMEOUT?tal900
  • castopod/web-server

    VariabelnamnTypeStandardval
    CP_APP_HOSTNAME?streng"app"
    CP_MAX_BODY_SIZE?tal (med suffiks)512M
    CP_TIMEOUT?tal900