microblog.pub/docs/install.md

2.0 KiB

Installing

[TOC]

Docker edition

Assuming Docker and Docker Compose are already installed.

For now, there's no image published on Docker Hub.

Clone the repository.

git clone https://git.sr.ht/~tsileo/microblog.pub your-domain.tld

Build the Docker image.

make build

Run the configuration wizard.

make config

Build static assets.

make update

Start the app with Docker Compose, it will listen on port 8000 by default.

docker compose up -d

Setup a reverse proxy (see the Reverse Proxy section).

Python developer edition

Assuming you have a working Python 3.10+ environment.

Setup Poetry.

curl -sSL https://install.python-poetry.org | python3 -

Clone the repository.

git clone https://git.sr.ht/~tsileo/microblog.pub testing.microblog.pub

Install deps.

poetry install

Setup config.

poetry run inv configuration-wizard

Grab your virtualenv path.

poetry env info

Run the two processes with supervisord.

VENV_DIR=/home/ubuntu/.cache/pypoetry/virtualenvs/microblogpub-chx-y1oE-py3.10 poetry run supervisord -c misc/supervisord.conf -n

Setup a reverse proxy (see the next section).

Reverse proxy

You will also want to setup a reverse proxy like Nginx, see uvicorn documentation:

server {
    client_max_body_size 4G;

    location / {
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection $connection_upgrade;
      proxy_redirect off;
      proxy_buffering off;
      proxy_pass http://localhost:8000;
    }

    # [...]
}