SoFunction
Updated on 2025-04-11

Steps to Deploy Mastodon Server through Docker under Ubuntu

introduction

Hello everyone, I'm Hitch. Today, let’s talk about how to deploy Mastodon servers through Docker on Ubuntu system. Mastodon is an open source social networking platform like Twitter but more free. Docker is a powerful containerization tool that allows us to easily package and deploy applications. Next, I will take you through this process step by step.

Introduction to Docker and Mastodon

Docker is an open source platform that allows developers to automate the deployment, scaling and management of applications. Through container technology, Docker can package applications and their dependencies together to ensure they can run in any environment.

Mastodon is a decentralized social network where users can create accounts and communicate with each other on different instances. It has the advantages of high customizability and user privacy protection, making it ideal for users who want to control their own social environment.

This time I am using Sanfeng Cloud's free server, configured with a 1-core CPU, 1GB of memory and 5M bandwidth. This configuration is sufficient for testing small projects.

Deployment steps

The following are the detailed deployment steps and commands:

1. Install Docker and Docker Compose

First, make sure your system is up to date:

sudo apt update && sudo apt upgrade -y

Then install Docker:

sudo apt install -y 

Then install Docker Compose:

sudo apt install -y docker-compose

2. Create the Mastodon project directory

mkdir -p ~/mastodon
cd ~/mastodon

3. Copy the Docker configuration file of Mastodon

Get the sample configuration from Mastodon's GitHub repository:

curl -O /mastodon/mastodon/main/docker/

4. Edit

You need to edit this file according to your needs. Here is a basic configuration example:

version: '3.7'
services:
  web:
    image: tootsuite/mastodon:latest
    ports:
      - "3000:3000"
    environment:
      - LOCAL_DOMAIN=
      - SECRET_KEY_BASE=your_secret_key
      - OTP_SECRET=your_otp_secret
      - DATABASE_URL=postgres://mastodon:password@db/mastodon
      - REDIS_URL=redis://redis:6379
  db:
    image: postgres:13
    environment:
      - POSTGRES_USER=mastodon
      - POSTGRES_PASSWORD=password
  redis:
    image: redis:alpine

5. Start Mastodon

Run the following command in the project directory to start the service:

sudo docker-compose up -d

6. Initialize the database

Run the following command to initialize the database:

sudo docker-compose run --rm web rake db:migrate

7. Complete the setup

Now you can access it through your browser:3000Let's view the Mastodon instance.

Ending

In this way, a simple Mastodon server is deployed. With Docker, the whole process becomes extremely smooth. Remember to adjust the configuration according to your needs and enjoy the fun of decentralized socialization! If you have any questions, please leave a message to discuss.

This is the article about deploying Mastodon servers through Docker under Ubuntu. For more related content on Docker deployment of Mastodon servers, please search for my previous articles or continue browsing the related articles below. I hope everyone will support me in the future!