Compare commits

..

7 Commits

3 changed files with 118 additions and 0 deletions

10
outline/.env Normal file
View File

@@ -0,0 +1,10 @@
SERVER_IP=10.0.0.70
POSTGRES_USER='outline_giovanesaggio'
POSTGRES_PASSWORD='wefbecwuhnlsa25732n3c42x'
POSTGRES_DB='outline'
SECRET_KEY=d1155bc02c5bfd6b2a4c3313113b0b5f0360366aa3b68c56c5299bc4da4efdf8
UTILS_SECRET=14 fec600b3d8b3524421785aef5711805a0a93d21f9ca7f251de88b675862eb
URL=https://outline.giovanesaggio.com
PORT=3000
SLACK_CLIENT_ID=6694269761893.6697082902291
SLACK_CLIENT_SECRET=b234dd4387d1edc38b43b06737e95203

49
outline/README.md Normal file
View File

@@ -0,0 +1,49 @@
# Outline
**Official documentation:**
https://docs.getoutline.com/s/hosting/doc/hosting-outline-nipGaCRBDu
**Unofficial tutorial:**
https://www.youtube.com/watch?v=IY1jONuTEic
## Setup
```bash
docker compose up -d
```
The application is configured on the port 3000. To access it, a reverse proxy entry should be defined.
## Folder mapping
```
mp0: /mnt/raiddisk/data_outline/database,mp=/mnt/database,replicate=0
mp1: /mnt/raiddisk/data_outline/data,mp=/mnt/data,replicate=0
```
```
lxc.idmap: u 0 100000 999
lxc.idmap: u 999 1004 1
lxc.idmap: u 1000 101000 1
lxc.idmap: u 1001 1003 1
lxc.idmap: u 1002 101002 64534
lxc.idmap: g 0 100000 999
lxc.idmap: g 999 1006 1
lxc.idmap: g 1000 101000 1
lxc.idmap: g 1001 1005 1
lxc.idmap: g 1002 101002 64534
```
**Note**:
- *data* folder must be owned by 1001:100000
- *database* folder must be owned by 999:100000
## Slack login configuration
The easiest way to configure the authentication process is to use the API provided by slack. The two secrets provided muse be set in the .env file.
### Procedure
1. Register a Slack account and create a workspace
2. Visit api.slack.com/apps
3. create a new app from scratch and link to the workspace created at step #1
4. Open *OAuth & Permission* section
5. Add new redirection URL: *<domain>/auth/slack.callback* (e.g. *https://outline.giovanesaggio.com/auth/slack.callback*), then save
6. Open *Basic information* section and copy the two secret codes in the .env file.

View File

@@ -0,0 +1,59 @@
version: "3.2"
services:
outline:
image: docker.getoutline.com/outlinewiki/outline:latest
ports:
- 3000:3000
volumes:
- /mnt/data:/var/lib/outline/data
depends_on:
- postgres
- redis
environment:
PGSSLMODE: disable
SECRET_KEY: ${SECRET_KEY}
UTILS_SECRET: ${UTILS_SECRET}
DATABASE_URL: postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${SERVER_IP}:5432/${POSTGRES_DB}
REDIS_URL: redis://${SERVER_IP}:6379
URL: ${URL}
PORT: ${PORT}
FILE_STORAGE: local
FILE_STORAGE_LOCAL_ROOT_DIR: /var/lib/outline/data
FILE_STORAGE_UPLOAD_MAX_SIZE: 26214400
SLACK_CLIENT_ID: ${SLACK_CLIENT_ID}
SLACK_CLIENT_SECRET: ${SLACK_CLIENT_SECRET}
restart: unless-stopped
redis:
image: redis
ports:
- 6379:6379
volumes:
- ./redis.conf:/redis.conf
command:
- redis-server
- /redis.conf
healthcheck:
test:
- CMD
- redis-cli
- ping
interval: 10s
timeout: 30s
retries: 3
restart: unless-stopped
postgres:
image: postgres
ports:
- 5432:5432
volumes:
- /mnt/database:/var/lib/postgresql/data
healthcheck:
test:
- CMD
- pg_isready
interval: 30s
environment:
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
restart: unless-stopped