Mastodon is a free, open-source social network server. A decentralized solution to commercial platforms, it avoids the risks of a single company monopolizing your communication. Anyone can run Mastodon and participate in the social network seamlessly.
An alternative implementation of the GNU social project. Based on ActivityStreams, Webfinger, PubsubHubbub and Salmon.
Based on upstream version of Dockerbuild. See Tags for the versions available.
- Alpine 3.7
- NodeJS 8.9.3
- Ruby 2.4.3
Starting from 1.4.3, this image is based on Wonderfall image, instruction are here.
This is quick How-To, to make your instance working :
- Clone this git repository
- Copy .env.production.example to .env.production
- Use the docker-compose.yml.example as a starting point (you can copy it to docker-compose.yml and run it unmodified, for testing)
- Run
docker-compose run --rm web rake secret
, 3 times, to replace the values in .env.production of PAPERCLIP_SECRET, SECRET_KEY_BASE and OTP_SECRET. - Modifiy others values if you need (refer to upstream documentation for more details).
- Run
docker-compose run --rm web rake db:migrate
- Run
docker-compose up -d
Mastodon need several services to run properly (included in the docker-compose.yml example) :
- Postgres (you can use this image: armhf/postgres:9.6-alpine)
- Redis (you can use this image: armhf/redis)
Be sure to add volume persistence for production use (see volumes
in docker-compose.yml for example).
Please refer to the upstream documentation for more information about the maintenance.