summaryrefslogtreecommitdiffhomepage
path: root/public/v4/apps/keila.yml
blob: 3aca92c62f7099529585fa53d03ce48f67f50bcc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
captainVersion: 4
services:
    $$cap_appname:
        caproverExtra:
            containerHttpPort: $$cap_KEILA_PORT
        image: pentacent/keila:$$cap_KEILA_VERSION
        environment:
            DB_URL: postgres://$$cap_POSTGRES_USER:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-db/$$cap_POSTGRES_DATABASE
            DB_ENABLE_SSL: $$cap_KEILA_DB_ENABLE_SSL
            KEILA_USER: $$cap_KEILA_USER
            KEILA_PASSWORD: $$cap_KEILA_PASSWORD
            URL_HOST: $$cap_appname.$$cap_root_domain
            URL_PATH: $$cap_KEILA_URL_PATH
            URL_SCHEMA: $$cap_KEILA_URL_SCHEMA
            URL_PORT: $$cap_KEILA_URL_PORT
            PORT: $$cap_KEILA_PORT
            SECRET_KEY_BASE: $$cap_KEILA_SECRET_KEY_BASE
            DISABLE_REGISTRATION: $$cap_KEILA_DISABLE_REGISTRATION
            DISABLE_PRECEDENCE_HEADER: $$cap_KEILA_DISABLE_PRECEDENCE_HEADER
            MAILER_TYPE: $$cap_KEILA_MAILER_TYPE
            MAILER_SMTP_HOST: $$cap_KEILA_MAILER_SMTP_HOST
            MAILER_SMTP_PORT: $$cap_KEILA_MAILER_SMTP_PORT
            MAILER_SMTP_USER: $$cap_KEILA_MAILER_SMTP_USER
            MAILER_SMTP_PASSWORD: $$cap_KEILA_MAILER_SMTP_PASSWORD
            CAPTCHA_PROVIDER: $$cap_KEILA_CAPTCHA_PROVIDER
            CAPTCHA_SITE_KEY: $$cap_KEILA_CAPTCHA_SITE_KEY
            CAPTCHA_SECRET_KEY: $$cap_KEILA_CAPTCHA_SECRET_KEY
            CAPTCHA_URL: $$cap_KEILA_CAPTCHA_URL
        depends_on:
            - $$cap_appname-db
        volumes:
            - $$cap_appname-upload:/opt/app/uploads

    $$cap_appname-db:
        caproverExtra:
            notExposeAsWebApp: 'true'
        image: postgres:$$cap_POSTGRES_VERSION
        environment:
            POSTGRES_USER: $$cap_POSTGRES_USER
            POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
            POSTGRES_DB: $$cap_POSTGRES_DATABASE
        volumes:
            - $$cap_appname-db:/var/lib/postgresql/data
caproverOneClickApp:
    instructions:
        start: |-
            Keila is an open source alternative to newsletter tools like Mailchimp or Sendinblue.
            With Keila you can easily send out newsletter campaigns and create sign-up forms.
            For smaller newsletters, you can use your own email inbox to send out campaigns.
            For larger newsletter projects, AWS SES, Sendgrid, and Mailgun are supported in addition to SMTP.
        end: |-
            Keila has been successfully deployed! It might take few moments before it's fully started.
            You need to **turn on Websocket Support** in the app's HTTP settings
            You can access it at `http://$$cap_appname.$$cap_root_domain`.
            Root user is `$$cap_KEILA_USER` with password `$$cap_KEILA_PASSWORD`.
    displayName: Keila
    isOfficial: true
    description: Free and open source email newsletter tool.
    documentation: https://www.keila.io/docs
    variables:
        - id: $$cap_KEILA_VERSION
          label: Keila | Version Tag
          description: Check out their valid tags at https://hub.docker.com/r/pentacent/keila/tags
          defaultValue: '0.12.2'
          validRegex: /.{1,}/
        - id: $$cap_KEILA_PORT
          label: Keila | Port
          description: Port of Keila host.
          defaultValue: 4000
          validRegex: /.{1,}/
        - id: $$cap_KEILA_DB_ENABLE_SSL
          label: Keila | Database SSL
          description: Whether to use SSL for database connection.
          defaultValue: 'false'
          validRegex: /^(true|false)$/
        - id: $$cap_KEILA_USER
          label: Keila | Administrator User
          description: Email address for the root user.
          validRegex: /.{1,}/
        - id: $$cap_KEILA_PASSWORD
          label: Keila | Administrator Password
          description: Password for the root user.
          defaultValue: $$cap_gen_random_hex(16)
          validRegex: /.{1,}/
        - id: $$cap_KEILA_URL_PATH
          label: Keila | URL Path
          description: Path of your Keila instance.
          defaultValue: /
          validRegex: /.{1,}/
        - id: $$cap_KEILA_URL_SCHEMA
          label: Keila | URL Schema
          description: Use `http` or `https`. URL scheme of your Keila instance.
          defaultValue: http
          validRegex: /^(http|https)$/
        - id: $$cap_KEILA_URL_PORT
          label: Keila | URL Port
          description: Port of your Keila instance. Use `80` for schema `http` or `443` for schema `https`.
          defaultValue: 80
          validRegex: /^(80|443)$/
        - id: $$cap_KEILA_SECRET_KEY_BASE
          label: Keila | Secret Key Base
          description: Strong secret with at least 64 characters. Can be generated with `head -c 48 /dev/urandom`
          defaultValue: $$cap_gen_random_hex(128)
          validRegex: /.{1,}/
        - id: $$cap_KEILA_DISABLE_REGISTRATION
          label: Keila | Disable Registration
          description: Disable user registration by setting this variable to `true`.
          defaultValue: 'true'
          validRegex: /^(true|false)$/
        - id: $$cap_KEILA_DISABLE_PRECEDENCE_HEADER
          label: Keila | Disable Precedence Header
          description: >-
              Disable the `Precedence: Bulk` header by setting this variable to `true`.
          defaultValue: 'false'
          validRegex: /^(true|false)$/
        - id: $$cap_KEILA_MAILER_TYPE
          label: Keila | Mailer Type
          description: Mail delivery type. Currently only `smtp` is supported.
          defaultValue: smtp
          validRegex: /.{1,}/
        - id: $$cap_KEILA_MAILER_SMTP_HOST
          label: Keila | SMTP Server Hostname
          description: Hostname of the SMTP server.
          validRegex: /.{1,}/
        - id: $$cap_KEILA_MAILER_SMTP_PORT
          label: Keila | SMTP Server Port
          description: Port of the SMTP server.
          defaultValue: 587
          validRegex: /.{1,}/
        - id: $$cap_KEILA_MAILER_SMTP_USER
          label: Keila | SMTP User
          description: Username for the SMTP server.
          validRegex: /.{1,}/
        - id: $$cap_KEILA_MAILER_SMTP_PASSWORD
          label: Keila | SMTP Password
          description: Password for the SMTP server.
          validRegex: /.{1,}/
        - id: $$cap_KEILA_CAPTCHA_PROVIDER
          label: Keila | Captcha Provider
          description: Provider that serves the Captcha.
          defaultValue: 'hcaptcha'
          validRegex: /^(hcaptcha|friendly_captcha)$/
        - id: $$cap_KEILA_CAPTCHA_SITE_KEY
          label: Keila | Captcha Site Key
          description: Site key for captcha provider.
        - id: $$cap_KEILA_CAPTCHA_SECRET_KEY
          label: Keila | Captcha Secret Key
          description: Secret key for captcha provider.
        - id: $$cap_KEILA_CAPTCHA_URL
          label: Keila | Captcha Verification URL
          description: Verification URL for captcha provider.
        - id: $$cap_POSTGRES_VERSION
          label: PostgreSQL | Version Tag
          description: Check out their valid tags at https://hub.docker.com/_/postgres/tags
          defaultValue: '14.5'
          validRegex: /.{1,}/
        - id: $$cap_POSTGRES_USER
          label: PostgreSQL | User
          description: Database user.
          defaultValue: keila
          validRegex: /.{1,}/
        - id: $$cap_POSTGRES_PASSWORD
          label: PostgreSQL | Password
          description: Database user password.
          defaultValue: $$cap_gen_random_hex(16)
          validRegex: /.{1,}/
        - id: $$cap_POSTGRES_DATABASE
          label: PostgreSQL | Database
          description: Database name.
          defaultValue: keila
          validRegex: /.{1,}/