captainVersion: 4
services:
    $$cap_appname-postgres:
        image: postgres:12-alpine
        environment:
            POSTGRES_USER: postgres
            POSTGRES_PASSWORD: $$cap_DB_PASS
        volumes:
            - $$cap_appname-postgres-data:/var/lib/postgresql/data
        caproverExtra:
            notExposeAsWebApp: 'true'
    $$cap_appname:
        image: cachethq/docker:$$cap_cachet_version
        environment:
            DB_DRIVER: pgsql
            DB_HOST: srv-captain--$$cap_appname-postgres
            DB_PORT: 5432
            DB_DATABASE: postgres
            DB_USERNAME: postgres
            DB_PASSWORD: $$cap_DB_PASS
            DB_PREFIX: chq_
            APP_KEY: $$cap_gen_random_hex(32)
            APP_LOG: errorlog
            APP_ENV: production
            APP_DEBUG: false
            DEBUG: false
        restart: always
        caproverExtra:
            containerHttpPort: '8000'
caproverOneClickApp:
    variables:
        - label: Database Password
          description: Password to connect to the database
          defaultValue: $$cap_gen_random_hex(16)
          id: $$cap_DB_PASS
        - id: $$cap_cachet_version
          label: Version Tag
          description: Check out their Docker page for the valid tags https://hub.docker.com/r/cachethq/docker/tags
          defaultValue: '2.3.15'
    instructions:
        start: |-
            📛 An open source status page system for everyone.

            GitHub: https://github.com/CachetHQ/Cachet
        end: |-
            Aaaand you're done! 😄

            Your service is available at http://$$cap_appname.$$cap_root_domain

            If you need help with installation check out the docs! https://docs.cachethq.io/docs
    displayName: Cachet
    isOfficial: true
    description: An open source status page system for everyone.
    documentation: https://docs.cachethq.io/docs
