diff --git a/public/v4/apps/keila.yml b/public/v4/apps/keila.yml new file mode 100644 index 0000000..2caf900 --- /dev/null +++ b/public/v4/apps/keila.yml @@ -0,0 +1,163 @@ +captainVersion: 4 +services: + $$cap_appname: + caproverExtra: + containerHttpPort: $$cap_KEILA_PORT + image: pentacent/keila:$$cap_KEILA_VERSION + hostname: $$cap_appname.$$cap_root_domain + 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 + HCAPTCHA_SITE_KEY: $$cap_KEILA_HCAPTCHA_SITE_KEY + HCAPTCHA_SECRET_KEY: $$cap_KEILA_HCAPTCHA_SECRET_KEY + HCAPTCHA_URL: $$cap_KEILA_HCAPTCHA_URL + depends_on: + - $$cap_appname-db + + $$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 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.9' + 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_HCAPTCHA_SITE_KEY + label: Keila | hCaptcha Site Key + description: Site key for hCaptcha. + - id: $$cap_KEILA_HCAPTCHA_SECRET_KEY + label: Keila | hCaptcha Secret Key + description: Secret key for hCaptcha. + - id: $$cap_KEILA_HCAPTCHA_URL + label: Keila | hCaptcha Verification URL + description: Verification URL for hCaptcha. + - 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,}/ diff --git a/public/v4/logos/keila.png b/public/v4/logos/keila.png new file mode 100644 index 0000000..e216983 Binary files /dev/null and b/public/v4/logos/keila.png differ