Skip to content

explodingcamera/docker-pleroma

Repository files navigation

Pleroma Docker

Simple Docker image for Pleroma. Currently, only x86_64 is supported. If you want to run Pleroma on other architectures, you should be able to build it yourself using the Dockerfile. I don't run a Pleroma instance myself anymore so there might be some issues with the image whenever a new pleroma version is released.

Supported tags

  • latest - latest stable release
  • 3 - latest 3.x release
  • 3.15 - specific minor version
  • 3.15.1 - specific version
  • develop - latest develop branch build

Versions are build automatically using GitHub Actions weekly.

How to use this image

Start a Pleroma instance

Docker Compose

version: "3.8"services: db: image: postgres:17-alpinecontainer_name: pleroma_dbrestart: alwayshealthcheck: test: ["CMD", "pg_isready", "-U", "pleroma"]environment: POSTGRES_USER: pleromaPOSTGRES_PASSWORD: ChangeMe!POSTGRES_DB: pleromavolumes: - ./data/postgres:/var/lib/postgresql/dataweb: image: ghcr.io/explodingcamera/pleroma:stablecontainer_name: pleroma_webhealthcheck: test: ["CMD-SHELL", "wget -q --spider --proxy=off localhost:4000 || exit 1"]restart: alwaysports: - "4000:4000"volumes: - ./data/uploads:/data/uploads - ./data/static:/data/static - ./custom-config.exs:/data/config.exsenvironment: PUID: 1000PGID: 1000DOMAIN: example.comINSTANCE_NAME: PleromaADMIN_EMAIL: [email protected]NOTIFY_EMAIL: [email protected]DB_USER: pleromaDB_PASS: ChangeMe!DB_NAME: pleromadepends_on: - db

Docker CLI

docker run -d \ --name=pleroma \ -e PUID=1000 \ -e PGID=1000 \ -e DOMAIN="example.com" -e INSTANCE_NAME="Pleroma" -e ADMIN_EMAIL="[email protected]" -e NOTIFY_EMAIL="[email protected]" -e DB_USER="pleroma" -e DB_PASS="ChangeMe!" -e DB_NAME="pleroma" -p 4000:4000 \ -v /path/to/static:/data/static \ -v /path/to/uploads:/data/uploads \ -v /path/to/customconfig:/data/config.exs \ # optional --restart unless-stopped \ ghcr.io/explodingcamera/pleroma:stable

Running Commands

$ docker exec -it pleroma_web ./cli.sh user new <username><your@emailaddress> --admin

Configuration

Environment variables

  • PUID - User ID (default: 1000)
  • PGID - Group ID (default: 1000)
  • DOMAIN - Domain name (default: example.com)

Pleroma configuration

See Pleroma documentation for more information.

custom-config.exs

importConfigconfig:pleroma,:instance,registrations_open: falseconfig:pleroma,Pleroma.Web.Endpoint,url: [host: "pleroma.example.org"]config:pleroma,Pleroma.Web.WebFinger,domain: "example.org"

Build-time variables

  • PLEROMA_VERSION - Pleroma version to build (default: stable)
  • PLEROMA_REPO - Pleroma repository to clone (default: https://git.pleroma.social/pleroma/pleroma.git)
  • EXTRA_PKGS - Extra packages to install (default: imagemagick libmagic ffmpeg)

Other Docker images

About

a simple and compact docker image for pleroma

Topics

Resources

License

Stars

Watchers

Forks

Packages