Adds custom stack for get-outline
This commit is contained in:
205
sources/lissy93_templates.json
Normal file
205
sources/lissy93_templates.json
Normal file
@@ -0,0 +1,205 @@
|
||||
{
|
||||
"version": "2",
|
||||
"templates": [
|
||||
{
|
||||
"categories": [
|
||||
"Productivity",
|
||||
"Social"
|
||||
],
|
||||
"description": "Open source collaborative knowledge base for modern teams",
|
||||
"env": [
|
||||
{
|
||||
"default": "production",
|
||||
"label": "NODE_ENV",
|
||||
"name": "NODE_ENV"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SECRET_KEY",
|
||||
"name": "SECRET_KEY"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "UTILS_SECRET",
|
||||
"name": "UTILS_SECRET"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "DATABASE_URL",
|
||||
"name": "DATABASE_URL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "DATABASE_URL_TEST",
|
||||
"name": "DATABASE_URL_TEST"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "DATABASE_CONNECTION_POOL_MIN",
|
||||
"name": "DATABASE_CONNECTION_POOL_MIN"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "DATABASE_CONNECTION_POOL_MAX",
|
||||
"name": "DATABASE_CONNECTION_POOL_MAX"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "REDIS_URL",
|
||||
"name": "REDIS_URL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "URL",
|
||||
"name": "URL"
|
||||
},
|
||||
{
|
||||
"default": "3000",
|
||||
"label": "PORT",
|
||||
"name": "PORT"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "COLLABORATION_URL",
|
||||
"name": "COLLABORATION_URL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "GOOGLE_CLIENT_ID",
|
||||
"name": "GOOGLE_CLIENT_ID"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "GOOGLE_CLIENT_SECRET",
|
||||
"name": "GOOGLE_CLIENT_SECRET"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SSL_KEY",
|
||||
"name": "SSL_KEY"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SSL_CERT",
|
||||
"name": "SSL_CERT"
|
||||
},
|
||||
{
|
||||
"default": "true",
|
||||
"label": "FORCE_HTTPS",
|
||||
"name": "FORCE_HTTPS"
|
||||
},
|
||||
{
|
||||
"default": "true",
|
||||
"label": "ENABLE_UPDATES",
|
||||
"name": "ENABLE_UPDATES"
|
||||
},
|
||||
{
|
||||
"default": "1",
|
||||
"label": "WEB_CONCURRENCY",
|
||||
"name": "WEB_CONCURRENCY"
|
||||
},
|
||||
{
|
||||
"default": "5120000",
|
||||
"label": "MAXIMUM_IMPORT_SIZE",
|
||||
"name": "MAXIMUM_IMPORT_SIZE"
|
||||
},
|
||||
{
|
||||
"default": "http",
|
||||
"label": "DEBUG",
|
||||
"name": "DEBUG"
|
||||
},
|
||||
{
|
||||
"default": "info",
|
||||
"label": "LOG_LEVEL",
|
||||
"name": "LOG_LEVEL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "GOOGLE_ANALYTICS_ID",
|
||||
"name": "GOOGLE_ANALYTICS_ID"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SENTRY_DSN",
|
||||
"name": "SENTRY_DSN"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SENTRY_TUNNEL",
|
||||
"name": "SENTRY_TUNNEL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_HOST",
|
||||
"name": "SMTP_HOST"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_PORT",
|
||||
"name": "SMTP_PORT"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_USERNAME",
|
||||
"name": "SMTP_USERNAME"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_PASSWORD",
|
||||
"name": "SMTP_PASSWORD"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_FROM_EMAIL",
|
||||
"name": "SMTP_FROM_EMAIL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_REPLY_EMAIL",
|
||||
"name": "SMTP_REPLY_EMAIL"
|
||||
},
|
||||
{
|
||||
"default": "",
|
||||
"label": "SMTP_TLS_CIPHERS",
|
||||
"name": "SMTP_TLS_CIPHERS"
|
||||
},
|
||||
{
|
||||
"default": "true",
|
||||
"label": "SMTP_SECURE",
|
||||
"name": "SMTP_SECURE"
|
||||
},
|
||||
{
|
||||
"default": "en_US",
|
||||
"label": "DEFAULT_LANGUAGE",
|
||||
"name": "DEFAULT_LANGUAGE"
|
||||
},
|
||||
{
|
||||
"default": "true",
|
||||
"label": "RATE_LIMITER_ENABLED",
|
||||
"name": "RATE_LIMITER_ENABLED"
|
||||
},
|
||||
{
|
||||
"default": "1000",
|
||||
"label": "RATE_LIMITER_REQUESTS",
|
||||
"name": "RATE_LIMITER_REQUESTS"
|
||||
},
|
||||
{
|
||||
"default": "60",
|
||||
"label": "RATE_LIMITER_DURATION_WINDOW",
|
||||
"name": "RATE_LIMITER_DURATION_WINDOW"
|
||||
}
|
||||
],
|
||||
"logo": "https://avatars.githubusercontent.com/u/1765001",
|
||||
"name": "outline",
|
||||
"note": "Open source collaborative knowledge base for modern teams",
|
||||
"platform": "linux",
|
||||
"repository": {
|
||||
"stackfile": "sources/stacks/outline.yml",
|
||||
"url": "https://github.com/lissy93/portainer-templates"
|
||||
},
|
||||
"restart_policy": "unless-stopped",
|
||||
"title": "Outline",
|
||||
"type": 3
|
||||
}
|
||||
]
|
||||
}
|
||||
88
sources/stacks/outline.yml
Normal file
88
sources/stacks/outline.yml
Normal file
@@ -0,0 +1,88 @@
|
||||
version: "3"
|
||||
services:
|
||||
|
||||
outline:
|
||||
image: docker.getoutline.com/outlinewiki/outline:latest
|
||||
env_file: ./docker.env
|
||||
ports:
|
||||
- "3000:3000"
|
||||
depends_on:
|
||||
- postgres
|
||||
- redis
|
||||
- storage
|
||||
|
||||
redis:
|
||||
image: redis
|
||||
env_file: ./docker.env
|
||||
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
|
||||
|
||||
postgres:
|
||||
image: postgres
|
||||
env_file: ./docker.env
|
||||
ports:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- database-data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD", "pg_isready"]
|
||||
interval: 30s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
environment:
|
||||
POSTGRES_USER: 'user'
|
||||
POSTGRES_PASSWORD: 'pass'
|
||||
POSTGRES_DB: 'outline'
|
||||
|
||||
storage:
|
||||
image: minio/minio
|
||||
env_file: ./docker.env
|
||||
ports:
|
||||
- "9000:9000"
|
||||
entrypoint: sh
|
||||
command: -c 'minio server'
|
||||
deploy:
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
volumes:
|
||||
- storage-data:/data
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
|
||||
interval: 30s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
https-portal:
|
||||
image: steveltn/https-portal
|
||||
env_file: ./docker.env
|
||||
ports:
|
||||
- '80:80'
|
||||
- '443:443'
|
||||
links:
|
||||
- outline
|
||||
- storage
|
||||
restart: always
|
||||
volumes:
|
||||
- https-portal-data:/var/lib/https-portal
|
||||
healthcheck:
|
||||
test: ["CMD", "service", "nginx", "status"]
|
||||
interval: 30s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
environment:
|
||||
DOMAINS: 'docs.mycompany.com -> http://outline:3000'
|
||||
STAGE: 'production'
|
||||
WEBSOCKET: 'true'
|
||||
|
||||
volumes:
|
||||
https-portal-data:
|
||||
storage-data:
|
||||
database-data:
|
||||
Reference in New Issue
Block a user