diff --git a/public/v2/apps/outline.json b/public/v2/apps/outline.json new file mode 100644 index 0000000..565349c --- /dev/null +++ b/public/v2/apps/outline.json @@ -0,0 +1,134 @@ +{ + "captainVersion": "2", + "documentation": "Taken from https://github.com/outline/outline/blob/master/docker-compose.yml", + "displayName": "Outline", + "description": "An open, extensible, wiki for your team built using React and Node.js.", + "dockerCompose": { + "services": { + "$$cap_appname-redis": { + "image": "redis:5", + "notExposeAsWebApp": "true" + }, + "$$cap_appname-fakes3": { + "image": "lphoward/fake-s3", + "volumes": [ + "$$cap_appname-fakes3:/fakes3_root" + ], + "notExposeAsWebApp": "true" + }, + "$$cap_appname-db": { + "image": "postgres:12.2", + "notExposeAsWebApp": "true", + "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" + } + }, + "$$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" + } + } + } + }, + "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 \n\n 1) enable HTTPS \n 2) Force HTTPS \n 3) Enable Websocket in $$cap_appname-outline. You can customize more settings by environmental variables described here: https://github.com/outline/outline/blob/0deecfac446c37545e0787b3d32062e608a950ab/.env.sample \n\n IMPORTANT: It will take up to 2 minutes for it to be ready. Before that, you might see a 502 error page.\n" + }, + "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^\\/])+$/" + } + ] + +} \ No newline at end of file diff --git a/public/v2/logos/outline.png b/public/v2/logos/outline.png new file mode 100644 index 0000000..35c78f2 Binary files /dev/null and b/public/v2/logos/outline.png differ