Add Setup Guide to README

This commit is contained in:
itepechi 2023-08-02 05:08:25 +09:00
parent b5ea49ceb4
commit 2fd04ca110

111
README.md
View file

@ -10,6 +10,117 @@ The differences between the upstream repository are described below:
- Has a better Docker entry point where you can control the backend without using pre-written shell scripts
- Supports Podman quite well
## How to Setup (Podman Rootless)
### 0. Requirements
- A decent CPU
- 2GB of memory (200MB runtime)
- 500MB free disk space
- Podman runs as non-root user
### 1. Build your image
This will take 10+ minutes.
```sh
cd /YOUR/GIT/DIRECTORY/akkoma/
podman build -t akkoma .
```
### 2. Create a Podman Pod for Akkoma
```sh
podman pod create \
--publish YOUR_PORT:4000 \
akkoma
```
You can use **pasta(1)** if you want to preserve incoming IPs and easily access the host machine through the network gateway.
```sh
podman pod create \
--network pasta:--map-gw,-a,10.0.2.0,-n,24,-g,10.0.2.1 \
--add-host gateway:10.0.2.1 \
--publish YOUR_PORT:4000 \
akkoma
```
### 3. Setting up the database
```sh
podman run -d \
--pod akkoma \
--restart unless-stopped \
--name akkoma-db \
-e POSTGRES_DB=YOUR_DB_NAME \
-e POSTGRES_USER=YOUR_DB_USER \
-e POSTGRES_PASSWORD=YOUR_DB_PASS \
-v ${PWD}/docker-db/:/var/lib/postgresql/data/:Z \
postgres:14-alpine
```
### 4. Setting up the backend
```sh
podman run -d \
--pod akkoma-pod \
--restart unless-stopped \
--name akkoma-web \
-e DB_NAME=YOUR_DB_NAME \
-e DB_USER=YOUR_DB_USER \
-e DB_PASS=YOUR_DB_PASS \
-v ${PWD}/static/:/var/lib/akkoma/static/:Z \
-v ${PWD}/uploads/:/var/lib/akkoma/uploads/:Z \
-v ${PWD}/etc/:/etc/akkoma/:Z \
akkoma
podman exec -it akkoma-web \
pleroma_ctl \
instance gen \
--output /etc/akkoma/config.exs
```
You will be asked a few questions. Make sure the database password is not `[autogenerated]`.
### 5. Test your setup
```sh
podman restart akkoma-web
curl -I http://localhost:YOUR_PORT/
```
You should see `HTTP/1.1 200 OK`.
### 6. Setting up the frontend
```sh
podman exec -it akkoma-web \
pleroma_ctl \
frontend install \
pleroma-fe
```
```sh
podman exec -it akkoma-web \
pleroma_ctl \
frontend install \
admin-fe
```
### 7. Create your first user
```sh
podman exec -it akkoma-web \
pleroma_ctl \
user new \
YOUR_NAME \
YOUR@EMAIL.EXAMPLE \
--admin
```
Open the printed link to set your password.
---
## Akkoma