110 lines
4.6 KiB
YAML
110 lines
4.6 KiB
YAML
captainVersion: 4
|
|
services:
|
|
$$cap_appname-redis:
|
|
image: redis:5
|
|
caproverExtra:
|
|
notExposeAsWebApp: 'true'
|
|
$$cap_appname-fakes3:
|
|
image: lphoward/fake-s3
|
|
volumes:
|
|
- $$cap_appname-fakes3:/fakes3_root
|
|
caproverExtra:
|
|
notExposeAsWebApp: 'true'
|
|
$$cap_appname-db:
|
|
image: postgres:12.2
|
|
volumes:
|
|
- $$cap_appname-db-data:/var/lib/postgresql/data
|
|
restart: always
|
|
environment:
|
|
POSTGRES_USER: $$cap_db_user
|
|
POSTGRES_PASSWORD: $$cap_db_pass
|
|
POSTGRES_DB: outline
|
|
caproverExtra:
|
|
notExposeAsWebApp: 'true'
|
|
$$cap_appname-outline:
|
|
depends_on:
|
|
- $$cap_appname-fakes3
|
|
- $$cap_appname-redis
|
|
- $$cap_appname-db
|
|
image: outlinewiki/outline:$$cap_outline_version
|
|
environment:
|
|
SECRET_KEY: $$cap_secret_key
|
|
UTILS_SECRET: $$cap_utils_secret
|
|
AWS_ACCESS_KEY_ID: get_a_key_from_aws
|
|
AWS_SECRET_ACCESS_KEY: get_the_secret_of_above_key
|
|
AWS_REGION: xx-xxxx-x
|
|
AWS_S3_UPLOAD_BUCKET_URL: http://srv-captain--$$cap_appname-fakes3:4569
|
|
AWS_S3_UPLOAD_BUCKET_NAME: bucket_name_here
|
|
AWS_S3_UPLOAD_MAX_SIZE: '26214400'
|
|
AWS_S3_ACL: private
|
|
SLACK_KEY: $$cap_slack_key
|
|
SLACK_SECRET: $$cap_slack_secret
|
|
GOOGLE_CLIENT_ID: $$cap_google_client_id
|
|
GOOGLE_CLIENT_SECRET: $$cap_google_client_secret
|
|
FORCE_HTTPS: 'false'
|
|
DEPLOYMENT: self
|
|
ENABLE_UPDATES: 'false'
|
|
SUBDOMAINS_ENABLED: 'false'
|
|
WEBSOCKETS_ENABLED: 'false'
|
|
DEBUG: cache,presenters,events
|
|
URL: https://$$cap_appname-outline.$$cap_root_domain
|
|
PORT: '80'
|
|
REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379
|
|
DATABASE_URL_TEST: postgres://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:5432/outline-test
|
|
DATABASE_URL: postgres://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:5432/outline
|
|
caproverOneClickApp:
|
|
variables:
|
|
- id: $$cap_db_user
|
|
label: Database user
|
|
defaultValue: outlineuser
|
|
validRegex: /^([a-zA-Z0-9])+$/
|
|
- id: $$cap_db_pass
|
|
label: Database password
|
|
description: ''
|
|
validRegex: /.{8,}/
|
|
- id: $$cap_slack_key
|
|
label: Slack Key
|
|
description: 'IMPORTANT: You need to, at least, set one 3rd party login method, either Slack or Google'
|
|
defaultValue: get_a_key_from_slack
|
|
- id: $$cap_slack_secret
|
|
label: Slack Secret
|
|
description: ''
|
|
defaultValue: get_the_secret_of_above_key
|
|
- id: $$cap_google_client_id
|
|
label: Google Client ID
|
|
- id: $$cap_google_client_secret
|
|
label: Google Client Secret
|
|
description: ''
|
|
- id: $$cap_secret_key
|
|
label: SECRET_KEY
|
|
description: 'Run this command to generate a key: openssl rand -hex 32'
|
|
defaultValue: c63eaeed7ee7459098e2901ed87c8b70817428b85fbe3ef59cb6a79abb2bbf4a
|
|
validRegex: /^([0-9a-f]){64}$/
|
|
- id: $$cap_utils_secret
|
|
label: UTILS_SECRET
|
|
description: 'Run this command to generate a key: openssl rand -hex 32'
|
|
defaultValue: c9b4d178130f53efc7419eaec9a2e764481269c9602c2ef2e541bdadc63b5bbf
|
|
validRegex: /^([0-9a-f]){64}$/
|
|
- id: $$cap_outline_version
|
|
label: Outline Version
|
|
defaultValue: version-0.41.0
|
|
description: Check out their page for the valid tags https://hub.docker.com/r/outlinewiki/outline/tags
|
|
validRegex: /^([^\s^\/])+$/
|
|
instructions:
|
|
start: Outline is an open, extensible, wiki for your team built using React and Node.js.
|
|
end: >
|
|
IMPORTANT: before you start using Outline, you need to
|
|
|
|
1) Enable HTTPS
|
|
2) Force HTTPS
|
|
3) Enable Websocket in $$cap_appname-outline.
|
|
4) Run database migration `npm run sequelize:migrate` within the $$cap_appname-outline docker container.
|
|
|
|
You can customize more settings by environmental variables described here: https://github.com/outline/outline/blob/0deecfac446c37545e0787b3d32062e608a950ab/.env.sample
|
|
|
|
IMPORTANT: It will take up to 2 minutes for it to be ready. Before that, you might see a 502 error page.
|
|
displayName: Outline
|
|
isOfficial: true
|
|
description: An open, extensible, wiki for your team built using React and Node.js.
|
|
documentation: Taken from https://github.com/outline/outline/blob/master/docker-compose.yml
|