generated from coop-cloud/example
Outline
Wiki and knowledge base for growing teams
- Category: Apps
- Status: 3, beta
- Image: outlinewiki/outline, 4, upstream
- Healthcheck: No
- Backups: Yes
- Email: Yes
- Tests: 2
- SSO: 3 (OAuth)
Basic usage
- Set up Docker Swarm and
abra
- Deploy
coop-cloud/traefik
abra app new ${REPO_NAME}
- WARNING: Choose "n" when
abra
asks if you'd like to generate secrets
- WARNING: Choose "n" when
abra app config YOURAPPNAME
- be sure to change$DOMAIN
to something that resolves to your Docker swarm box. For Minio, you'll want:AWS_ACCESS_KEY_ID=<minio username>
AWS_REGION="us-east-1"
AWS_S3_UPLOAD_BUCKET_URL=https://minio.example.com
- `AWS_S3_UPLOAD_BUCKET_NAME=
abra app deploy YOURAPPNAME
- Open the configured domain in your browser to finish set-up
Tips & Tricks
Create an initial admin user
abra app cmd YOURAPPNAME app create_email_user test@example.com
Post-deploy migration
abra app cmd YOURAPPNAME app migrate
As of 2022-03-30, this requires abra
RC version, run abra upgrade --rc
.
Setting up your .env
config
Avoid the use of quotes ("..."
) as much as possible, the NodeJS scripts flip out for some reason on some vars.
Deleting a user (e.g. to fix SSO weirdness)
abra app cmd YOURAPPNAME db delete_user <username-to-delete> <username-to-replace>
Where <username-to-delete>
is the username of the user to be removed, and
<username-to-replace>
is the username of another user, to assign documents and
revisions to (instead of deleting them).
As of 2022-03-30, this requires abra
RC version, run abra upgrade --rc
.
Migrate from S3 to local storage
abra app config <domain>
, add COMPOSE_FILE="$COMPOSE_FILE:compose.local.yml" FILE_STORAGE_UPLOAD_MAX_SIZE=26214400abra app deploy <domain> -f
- compose.aws.yml should still be deployed!
abra app undeploy <domain>
- on the docker host, find mountpoint of newly created volume via
docker volume ls
anddocker volume inspect
- volume name is smth like
<domain>_storage-data
- volume name is smth like
- take note which linux user owns
<storage_mountpoint>
(likely1001
) - use s3cmd/rclone/... to sync your bucket to
<storage_mountpoint>
chown -R <storage_user>:<storage_user> <storage_mountpoint>
abra app config <domain>
, switch storage backend- remove
AWS_*
vars,SECRET_AWS_SECRET_KEY_VERSION
andCOMPOSE_FILE="$COMPOSE_FILE:compose.aws.yml"
- set
FILE_STORAGE=local
- remove
abra app deploy <domain> -f
- enjoy getting rid of S3 🥳
Single Sign On with Keycloak
abra app config YOURAPPNAME
, then uncomment everything in the OIDC_
section.
Create a new client in Keycloak:
- Valid Redirect URIs:
https://YOURAPPDOMAIN/auth/oidc.callback
abra app deploy YOURAPPDOMAIN
Description
Languages
Shell
78.8%
Roff
21.2%