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,}/
|