A basic container for a private MediaGoblin media server.
Dan Helfman d69bfd5795 Support for real email sending without a relay. 6 months ago
scripts Add convenience scripts for build and push of the Docker image. 9 months ago
Dockerfile Remove expose port 443, which isn't used. 6 months ago
README.md Support for real email sending without a relay. 6 months ago
mediagoblin_local.ini.template Support for real email sending without a relay. 6 months ago
nginx.conf Initial import. 10 months ago
run.sh Waiting for database to come up. 10 months ago
uwsgi.yaml Initial import. 10 months ago
wait-for Waiting for database to come up. 10 months ago

README.md

MediaGoblin

A basic container for a private MediaGoblin media server (https://mediagoblin.org/), including Nginx and uWSGI. Assumes a separate PostgreSQL database for persistence, and an email host for sending email notifications.

Source at https://projects.torsion.org/witten/mediagoblin-docker

Environment variables

  • NOTIFICATION_EMAIL: From address for MediaGoblin notification emails.
  • EMAIL_HOSTNAME: Hostname used to send outgoing notification emails.
  • EMAIL_PORT: Port number used to send outgoing notification emails.
  • EMAIL_USERNAME: Username used to connect to outgoing email host.
  • EMAIL_PASSWORD: Password used to connect to outgoing email host.
  • EMAIL_TLS_SSL: “true” or “false” for using TLS/SSL encryption for sending emails.
  • EMAIL_STARTTLS: “true” or “false” for using STARTTLS encryption for sending emails.
  • DATABASE_URL: Connection string for database to use for persistence, including credentials. See example below.

Volumes

  • /app/user_dev: Location to store user media uploads.

Ports

Example

docker run --detach --name=mediagoblin \
    --env NOTIFICATION_EMAIL=media@example.org \
    --env EMAIL_HOSTNAME=mail.example.org \
    --env EMAIL_PORT=587 \
    --env EMAIL_USERNAME=bob@example.org \
    --env EMAIL_PASSWORD=pass \
    --env EMAIL_TLS_SSL=false \
    --env EMAIL_STARTTLS=true \
    --env DATABASE_URL=postgresql://mediagoblin:password@database.example.org/mediagoblin \
    --volume /var/lib/mediagoblin/user_dev:/app/user_dev \
    --publish 80:80 \
    witten/mediagoblin:latest