elestio/piefed

Verified Publisher

By Elestio

Updated 3 days ago

Piefed, verified and packaged by Elestio

Image
0

10K+

elestio/piefed repository overview

elest.io

Discord Elestio examples Blog

PieFed, verified and packaged by Elestio

PieFed is an open-source federated link aggregator and discussion platform, built as an alternative to Lemmy and Kbin. It allows you to create communities, share links, and have discussions across the Fediverse using ActivityPub.

Deploy a fully managed PieFed on elest.io if you want automated backups, reverse proxy with SSL termination, firewall, automated OS & Software updates, and a team of Linux experts and open source enthusiasts to ensure your services are always safe, and functional.

deploy

Why use Elestio images?

  • Elestio stays in sync with updates from the original source and quickly releases new versions of this image through our automated processes.
  • Elestio images provide timely access to the most recent bug fixes and features.
  • Our team performs quality control checks to ensure the products we release meet our high standards.

Usage

Docker-compose

Here are some example snippets to help you get started creating a container.

services:
  db:
    shm_size: 512mb
    image: elestio/postgres:17
    restart: always
    env_file:
      - ./.env
    volumes:
      - ./pgdata:/var/lib/postgresql/data

  redis:
    image: elestio/redis:6.2
    restart: always
    command: redis-server --appendonly yes
    env_file:
      - ./.env
    volumes:
      - ./redis_data:/data

  celery:
    image: elestio/piefed:${SOFTWARE_VERSION_TAG}
    restart: always
    depends_on:
      - db
      - redis
    env_file:
      - ./.env
    entrypoint: ./entrypoint_celery.sh
    volumes:
      - ./media/:/app/app/static/media/
      - ./logs/:/app/logs/
      - ./tmp/:/app/app/static/tmp/
    healthcheck:
      test: ["CMD", "celery", "-A", "celery_worker_docker.celery", "inspect", "ping"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 20s

  web:
    image: elestio/piefed:${SOFTWARE_VERSION_TAG}
    restart: always
    depends_on:
      - db
      - redis
    env_file:
      - ./.env
    volumes:
      - ./gunicorn.conf.py:/app/gunicorn.conf.py
      - ./media/:/app/app/static/media/
      - ./logs/:/app/logs/
      - ./tmp/:/app/app/static/tmp/
    ports:
      - "172.17.0.1:37052:5000"
    healthcheck:
      test: ["CMD", "pgrep", "-f", "gunicorn"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 20s

  adminer:
    image: adminer:latest
    restart: always
    ports:
      - "172.17.0.1:33708:8080"
    depends_on:
      - db
Environment variables
VariableValue (example)
SOFTWARE_VERSION_TAGlatest
ADMIN_EMAIL[email protected]
ADMIN_PASSWORDyour-password
ADMIN_USERadmin
SECRET_KEYyour-secret-key
SERVER_NAMEyourdomain.com
POSTGRES_USERpiefed
POSTGRES_PASSWORDyour-password
POSTGRES_DBpiefed
DATABASE_URLpostgresql+psycopg2://piefed:your-password@db/piefed
CACHE_TYPERedisCache
CACHE_REDIS_DB1
CACHE_REDIS_URLredis://redis:6379/1
CELERY_BROKER_URLredis://redis:6379/0
FULL_AP_CONTEXT0
CORS_ALLOW_ORIGIN*
ENABLE_ALPHA_APItrue

Access

You can access the Web UI at: http://your-domain:37052

You can access Adminer at: http://your-domain:33708

Maintenance

Logging

The Elestio PieFed Docker image sends the container logs to stdout. To view the logs, you can use the following command:

docker-compose logs -f

To stop the stack you can use the following command:

docker-compose down

Backup and Restore with Docker Compose

To make backup and restore operations easier, we are using folder volume mounts. You can simply stop your stack with docker-compose down, then backup all the files and subfolders in the folder near the docker-compose.yml file.

Creating a ZIP Archive For example, if you want to create a ZIP archive, navigate to the folder where you have your docker-compose.yml file and use this command:

zip -r myarchive.zip .

Restoring from ZIP Archive To restore from a ZIP archive, unzip the archive into the original folder using the following command:

unzip myarchive.zip -d /path/to/original/folder

Starting Your Stack Once your backup is complete, you can start your stack again with the following command:

docker-compose up -d

That's it! With these simple steps, you can easily backup and restore your data volumes using Docker Compose.

Tag summary

Content type

Image

Digest

sha256:e78283ffe

Size

167.5 MB

Last updated

3 days ago

docker pull elestio/piefed:v1.7.7

This week's pulls

Pulls:

1,368

Last week