Skip to content

All-in-one Mastodon Docker image. Not scalable.

Notifications You must be signed in to change notification settings

Gyara-studio/docker-mastodon

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

wonderfall/mastodon

Mastodon

A GNU Social-compatible microblogging server : https://github.com/tootsuite/mastodon

Why this image?

This image is not the official one. The main difference you can notice is that all processes (web, streaming, sidekiq) are running in a single container, thanks to s6 (a supervision suite). Therefore it's easier to deploy, but not recommended for scaling.

Features

  • Based on Alpine Linux.
  • As lightweight as possible.
  • All-in-one container (s6).
  • Assets are precompiled.
  • Database migrations can be run at startup.
  • No root processes.

Build-time variables

  • VERSION : version of Mastodon, can be v1.4.1 or master. (default : latest version)
  • REPOSITORY : location of the code (default : tootsuite/mastodon)

Environment variables you should change

Volumes

  • /mastodon/public/system : shit like media attachments, avatars, etc.
  • /mastodon/public/assets : Mastodon assets
  • /mastodon/public/packs : Mastodon assets
  • /mastodon/log : Mastodon logfiles (mount if you prefer to)

Ports

  • 3000 : Mastodon web
  • 4000 : Mastodon streaming

docker-compose sample

mastodon:
  image: wonderfall/mastodon:stable
  restart: always
  container_name: mastodon
  env_file: /home/docker/mastodon/.env.production
  environment:
    - WEB_CONCURRENCY=16
    - MAX_THREADS=20
    - SIDEKIQ_WORKERS=25
    - RUN_DB_MIGRATIONS=true
  links:
    - mastodon-pgb
    - mastodon-redis
  volumes:
    - /home/docker/mastodon/public/system:/mastodon/public/system
    - /home/docker/mastodon/public/assets:/mastodon/public/assets
    - /home/docker/mastodon/public/packs:/mastodon/public/packs

About

All-in-one Mastodon Docker image. Not scalable.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 53.0%
  • Shell 47.0%