Add Setup Guide to README
This commit is contained in:
parent
b5ea49ceb4
commit
2fd04ca110
1 changed files with 111 additions and 0 deletions
111
README.md
111
README.md
|
@ -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
|
- Has a better Docker entry point where you can control the backend without using pre-written shell scripts
|
||||||
- Supports Podman quite well
|
- 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
|
## Akkoma
|
||||||
|
|
Loading…
Reference in a new issue