Fixed build

This commit is contained in:
Kasra Bigdeli 2020-08-16 19:37:46 -04:00
parent 9ae0159100
commit 723ca5cca5
101 changed files with 5970 additions and 5808 deletions

View File

@ -1,43 +1,43 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: adminer:$$cap_adminer_version image: adminer:$$cap_adminer_version
restart: always restart: always
environment: environment:
ADMINER_PLUGINS: $$cap_adminer_plugins ADMINER_PLUGINS: $$cap_adminer_plugins
ADMINER_DESIGN: $$cap_adminer_design ADMINER_DESIGN: $$cap_adminer_design
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_adminer_version - id: $$cap_adminer_version
label: Adminer Version Tag label: Adminer Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/adminer/tags/ https://hub.docker.com/r/library/adminer/tags/
defaultValue: "4" defaultValue: '4'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_adminer_design - id: $$cap_adminer_design
label: "OPTIONAL: Adminer Design" label: 'OPTIONAL: Adminer Design'
description: "List of designs: https://github.com/vrana/adminer/tree/master/designs" description: 'List of designs: https://github.com/vrana/adminer/tree/master/designs'
validRegex: /^([a-zA-Z0-9-.])*$/ validRegex: /^([a-zA-Z0-9-.])*$/
- id: $$cap_adminer_plugins - id: $$cap_adminer_plugins
label: "OPTIONAL: Adminer plugins (space separated)" label: 'OPTIONAL: Adminer plugins (space separated)'
defaultValue: "" defaultValue: ''
validRegex: /^([a-zA-Z0-9-.\s])*$/ validRegex: /^([a-zA-Z0-9-.\s])*$/
instructions: instructions:
start: >- start: >-
Adminer (formerly phpMinAdmin) is a full-featured database management tool Adminer (formerly phpMinAdmin) is a full-featured database management tool
written in PHP. Conversely to phpMyAdmin, it consist of a single file written in PHP. Conversely to phpMyAdmin, it consist of a single file
ready to deploy to the target server. Adminer is available for MySQL, ready to deploy to the target server. Adminer is available for MySQL,
PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and
MongoDB. MongoDB.
For more details, see: https://github.com/vrana/adminer For more details, see: https://github.com/vrana/adminer
Enter your Adminer Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your Adminer Configuration parameters and click on next. It will take about a minute for the process to finish.
end: Adminer is deployed and available as $$cap_appname end: Adminer is deployed and available as $$cap_appname
displayName: Adminer displayName: Adminer
isOfficial: true isOfficial: true
description: Adminer (formerly phpMinAdmin) is a full-featured database description: Adminer (formerly phpMinAdmin) is a full-featured database
management tool written in PHP management tool written in PHP
documentation: "Taken from https://hub.docker.com/_/adminer " documentation: 'Taken from https://hub.docker.com/_/adminer '

View File

@ -1,37 +1,39 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: arangodb:$$cap_arango_version image: arangodb:$$cap_arango_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/arangodb3 - $$cap_appname-db-data:/var/lib/arangodb3
- $$cap_appname-db-apps-data:/var/lib/arangodb3-apps - $$cap_appname-db-apps-data:/var/lib/arangodb3-apps
restart: always restart: always
environment: environment:
ARANGO_ROOT_PASSWORD: $$cap_db_pass ARANGO_ROOT_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
containerHttpPort: "8529" containerHttpPort: '8529'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_arango_version - id: $$cap_arango_version
label: ArangoDB Version label: ArangoDB Version
defaultValue: "3.4" defaultValue: '3.4'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/arangodb/tags/ https://hub.docker.com/r/library/arangodb/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: ArangoDB Root password label: ArangoDB Root password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: ArangoDB is a multi-model, open-source database with flexible data models start:
for documents, graphs, and key-values. Build high performance applications ArangoDB is a multi-model, open-source database with flexible data models
using a convenient SQL-like query language or JavaScript extensions. Use for documents, graphs, and key-values. Build high performance applications
ACID transactions if you require them. Scale horizontally and vertically using a convenient SQL-like query language or JavaScript extensions. Use
with a few mouse clicks. ACID transactions if you require them. Scale horizontally and vertically
end: ArangoDB is deployed and available as srv-captain--$$cap_appname-db:8529 to with a few mouse clicks.
other apps. end:
displayName: ArangoDB ArangoDB is deployed and available as srv-captain--$$cap_appname-db:8529 to
isOfficial: true other apps.
description: ArangoDB is native multi-model database for using and combining displayName: ArangoDB
graph, document and key/value models isOfficial: true
documentation: ArangoDB description: ArangoDB is native multi-model database for using and combining
graph, document and key/value models
documentation: ArangoDB

View File

@ -1,30 +1,31 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: bitwardenrs/server:$$cap_bitwardenrs_version image: bitwardenrs/server:$$cap_bitwardenrs_version
volumes: volumes:
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_bitwardenrs_version - id: $$cap_bitwardenrs_version
label: Bitwarden_rs Version label: Bitwarden_rs Version
defaultValue: 1.15.1 defaultValue: 1.15.1
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/bitwardenrs/server/tags https://hub.docker.com/r/bitwardenrs/server/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: This is a Bitwarden server API implementation written in Rust compatible start:
with upstream Bitwarden clients, perfect for self-hosted deployment where This is a Bitwarden server API implementation written in Rust compatible
running the official resource-heavy service might not be ideal. with upstream Bitwarden clients, perfect for self-hosted deployment where
end: >- running the official resource-heavy service might not be ideal.
Bitwarden_rs is deployed and available as $$cap_appname. Please give it a end: >-
few minutes to boot, otherwise you will see a 502 error. Bitwarden_rs is deployed and available as $$cap_appname. Please give it a
few minutes to boot, otherwise you will see a 502 error.
Please activate https and https redirect otherwise you will have error on account creation. Please activate https and https redirect otherwise you will have error on account creation.
displayName: Bitwarden_rs displayName: Bitwarden_rs
isOfficial: true isOfficial: true
description: Lightweight fully featured Rust implementation of Bitwarden. description: Lightweight fully featured Rust implementation of Bitwarden.
documentation: Taken from https://hub.docker.com/r/bitwardenrs/server documentation: Taken from https://hub.docker.com/r/bitwardenrs/server

View File

@ -1,94 +1,95 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-postgres: $$cap_appname-postgres:
image: postgres:12 image: postgres:12
volumes: volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data - $$cap_appname-postgres-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: chatwoot POSTGRES_USER: chatwoot
POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password
POSTGRES_DB: chatwoot POSTGRES_DB: chatwoot
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-redis: $$cap_appname-redis:
volumes: volumes:
- $$cap_appname-redis-data:/data - $$cap_appname-redis-data:/data
restart: always restart: always
environment: environment:
REDIS_PASSWORD: $$cap_chatwoot_redis_password REDIS_PASSWORD: $$cap_chatwoot_redis_password
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM redis:alpine - FROM redis:alpine
- CMD exec redis-server --requirepass "$$cap_chatwoot_redis_password" - CMD exec redis-server --requirepass "$$cap_chatwoot_redis_password"
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-web: $$cap_appname-web:
restart: always restart: always
environment: environment:
RAIL_ENV: production RAIL_ENV: production
RAILS_LOG_TO_STDOUT: "true" RAILS_LOG_TO_STDOUT: 'true'
SECRET_KEY_BASE: $$cap_chatwoot_secret_key_base SECRET_KEY_BASE: $$cap_chatwoot_secret_key_base
POSTGRES_HOST: srv-captain--$$cap_appname-postgres POSTGRES_HOST: srv-captain--$$cap_appname-postgres
POSTGRES_DATABASE: chatwoot POSTGRES_DATABASE: chatwoot
POSTGRES_USERNAME: chatwoot POSTGRES_USERNAME: chatwoot
POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password
REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379 REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379
REDIS_PASSWORD: $$cap_chatwoot_redis_password REDIS_PASSWORD: $$cap_chatwoot_redis_password
caproverExtra: caproverExtra:
containerHttpPort: "3000" containerHttpPort: '3000'
dockerfileLines: dockerfileLines:
- FROM chatwoot/chatwoot:$$cap_chatwoot_version - FROM chatwoot/chatwoot:$$cap_chatwoot_version
- RUN chmod +x docker/entrypoints/rails.sh - RUN chmod +x docker/entrypoints/rails.sh
- ENTRYPOINT ["docker/entrypoints/rails.sh"] - ENTRYPOINT ["docker/entrypoints/rails.sh"]
- EXPOSE 3000 - EXPOSE 3000
- CMD bundle exec rails db:prepare; bundle exec rails s -b 0.0.0.0 -p - CMD bundle exec rails db:prepare; bundle exec rails s -b 0.0.0.0 -p
3000 3000
$$cap_appname-worker: $$cap_appname-worker:
restart: always restart: always
environment: environment:
RAIL_ENV: production RAIL_ENV: production
RAILS_LOG_TO_STDOUT: "true" RAILS_LOG_TO_STDOUT: 'true'
SECRET_KEY_BASE: $$cap_chatwoot_secret_key_base SECRET_KEY_BASE: $$cap_chatwoot_secret_key_base
POSTGRES_HOST: srv-captain--$$cap_appname-postgres POSTGRES_HOST: srv-captain--$$cap_appname-postgres
POSTGRES_DATABASE: chatwoot POSTGRES_DATABASE: chatwoot
POSTGRES_USERNAME: chatwoot POSTGRES_USERNAME: chatwoot
POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password
REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379 REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379
REDIS_PASSWORD: $$cap_chatwoot_redis_password REDIS_PASSWORD: $$cap_chatwoot_redis_password
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM chatwoot/chatwoot:$$cap_chatwoot_version - FROM chatwoot/chatwoot:$$cap_chatwoot_version
- RUN chmod +x docker/entrypoints/rails.sh - RUN chmod +x docker/entrypoints/rails.sh
- ENTRYPOINT ["docker/entrypoints/rails.sh"] - ENTRYPOINT ["docker/entrypoints/rails.sh"]
- CMD bundle exec sidekiq -C config/sidekiq.yml - CMD bundle exec sidekiq -C config/sidekiq.yml
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_chatwoot_version - id: $$cap_chatwoot_version
label: Chatwoot Version Tag label: Chatwoot Version Tag
description: https://hub.docker.com/r/chatwoot/chatwoot/tags description: https://hub.docker.com/r/chatwoot/chatwoot/tags
defaultValue: v1.6.3 defaultValue: v1.6.3
- id: $$cap_chatwoot_secret_key_base - id: $$cap_chatwoot_secret_key_base
label: Chatwoot Secret Key Base label: Chatwoot Secret Key Base
description: The randomized string which is used to verify the integrity of description:
signed cookies. Please use a string with more than 26 characters The randomized string which is used to verify the integrity of
validRegex: /^[^\@]{26,}$/ signed cookies. Please use a string with more than 26 characters
- id: $$cap_chatwoot_postgres_password validRegex: /^[^\@]{26,}$/
label: Postgres Password - id: $$cap_chatwoot_postgres_password
description: Password must be at least 12 characters. Please use a random string. label: Postgres Password
validRegex: /^[^\@]{12,}$/ description: Password must be at least 12 characters. Please use a random string.
- id: $$cap_chatwoot_redis_password validRegex: /^[^\@]{12,}$/
label: Redis Password - id: $$cap_chatwoot_redis_password
description: Password must be at least 12 characters. Please use a random string. label: Redis Password
validRegex: /^[^\@]{12,}$/ description: Password must be at least 12 characters. Please use a random string.
instructions: validRegex: /^[^\@]{12,}$/
start: Open-source customer support saas alternative to Intercom, Drift, Crisp. instructions:
end: >- start: Open-source customer support saas alternative to Intercom, Drift, Crisp.
Your Chatwoot instance is now successfully deployed. You can create a new end: >-
account using signup option. Your Chatwoot instance is now successfully deployed. You can create a new
account using signup option.
Refer https://www.chatwoot.com/docs/environment-variables/ for full list of environment variables available. Let us know if you have any queries through hello@chatwoot.com Refer https://www.chatwoot.com/docs/environment-variables/ for full list of environment variables available. Let us know if you have any queries through hello@chatwoot.com
displayName: Chatwoot displayName: Chatwoot
isOfficial: true isOfficial: true
description: Open-source customer support saas alternative to Intercom, Drift, Crisp description: Open-source customer support saas alternative to Intercom, Drift, Crisp
documentation: "Read more at: https://www.chatwoot.com/docs" documentation: 'Read more at: https://www.chatwoot.com/docs'

View File

@ -1,28 +1,29 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: agentejo/cockpit:$$cap_cockpit_version image: agentejo/cockpit:$$cap_cockpit_version
volumes: volumes:
- $$cap_appname-storage:/var/www/html/storage - $$cap_appname-storage:/var/www/html/storage
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_cockpit_version - id: $$cap_cockpit_version
label: cockpit version tag label: cockpit version tag
description: Checkout their docker page for the valid tags @ description: Checkout their docker page for the valid tags @
https://hub.docker.com/r/agentejo/cockpit/tags https://hub.docker.com/r/agentejo/cockpit/tags
defaultValue: 0.9.3 defaultValue: 0.9.3
instructions: instructions:
start: Cockpit is Simple Content Platform to manage any structured content. A start:
self-hosted headless and api-driven CMS. Cockpit is Simple Content Platform to manage any structured content. A
end: >- self-hosted headless and api-driven CMS.
Cockpit is deployed and available as $$cap_appname. end: >-
Cockpit is deployed and available as $$cap_appname.
IMPORTANT: Navigate to /install to finish the installation and to create an admin user! IMPORTANT: Navigate to /install to finish the installation and to create an admin user!
displayName: Cockpit displayName: Cockpit
isOfficial: true isOfficial: true
description: Cockpit is Simple Content Platform to manage any structured description: Cockpit is Simple Content Platform to manage any structured
content. A self-hosted headless and api-driven CMS. content. A self-hosted headless and api-driven CMS.
documentation: Read the documentation @ https://github.com/agentejo/cockpit-docker documentation: Read the documentation @ https://github.com/agentejo/cockpit-docker

View File

@ -1,69 +1,70 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: collabora/code:$$cap_collabora_version image: collabora/code:$$cap_collabora_version
restart: always restart: always
environment: environment:
domain: $$cap_wopihost_domain domain: $$cap_wopihost_domain
cert_domain: $$cap_appname.$$cap_root_domain cert_domain: $$cap_appname.$$cap_root_domain
server_name: $$cap_appname.$$cap_root_domain server_name: $$cap_appname.$$cap_root_domain
extra_params: --o:ssl.enable=false --o:ssl.termination=true extra_params: --o:ssl.enable=false --o:ssl.termination=true
username: $$cap_admin_user username: $$cap_admin_user
password: $$cap_admin_pass password: $$cap_admin_pass
caproverExtra: caproverExtra:
containerHttpPort: "9980" containerHttpPort: '9980'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_admin_user - id: $$cap_admin_user
label: Admin user label: Admin user
description: permit access to the web admin interface description: permit access to the web admin interface
defaultValue: adminuser defaultValue: adminuser
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_admin_pass - id: $$cap_admin_pass
label: Admin password label: Admin password
description: admin password description: admin password
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_collabora_version - id: $$cap_collabora_version
label: Collabora CODE Version label: Collabora CODE Version
defaultValue: 4.2.4.4 defaultValue: 4.2.4.4
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/collabora/code/tags/ https://hub.docker.com/r/collabora/code/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_wopihost_domain - id: $$cap_wopihost_domain
label: WOPI host domain - yournextcloud.your.rootdomain.com label: WOPI host domain - yournextcloud.your.rootdomain.com
description: |- description: |-
Your Nextcloud host domain. Your Nextcloud host domain.
Caution ! you must add a backslash before each dot of the url Caution ! you must add a backslash before each dot of the url
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
Collabora CODE version is an online Office Suite. Collabora CODE version is an online Office Suite.
When you are using Nextcloud or ownCloud you can use it to enhance your online office document experience. When you are using Nextcloud or ownCloud you can use it to enhance your online office document experience.
The install will take about a minute for the process to finish. The install will take about a minute for the process to finish.
end: >- end: >-
Collabora is deployed and available as $$cap_appname. Collabora is deployed and available as $$cap_appname.
IMPORTANT: You need do 5 manual steps before access. IMPORTANT: You need do 5 manual steps before access.
1 - enable websocket on HTTP settings tab 1 - enable websocket on HTTP settings tab
2 - add the "proxy_read_timeout 36000s;" instruction below "proxy_http_version 1.1;" 2 - add the "proxy_read_timeout 36000s;" instruction below "proxy_http_version 1.1;"
3 - Enable and force HTTPS and wait few minutes. 3 - Enable and force HTTPS and wait few minutes.
4 - add the Collabora Online extension for Nextcloud (3.7.0 for now) 4 - add the Collabora Online extension for Nextcloud (3.7.0 for now)
5 - go to your Nextcloud plugin configuration > collabora online > use your own server > paste the FQDN of your new instance of collabora > save 5 - go to your Nextcloud plugin configuration > collabora online > use your own server > paste the FQDN of your new instance of collabora > save
That's all, you can use collabora online to all your Nextcloud instance. That's all, you can use collabora online to all your Nextcloud instance.
displayName: Collabora Online displayName: Collabora Online
isOfficial: true isOfficial: true
description: Collabora Online is an online and collaborating office suite description: Collabora Online is an online and collaborating office suite
documentation: Inspired by https://github.com/caprover/one-click-apps/pull/111 documentation:
and from https://www.collaboraoffice.com/code/docker/ Inspired by https://github.com/caprover/one-click-apps/pull/111
and from https://www.collaboraoffice.com/code/docker/

View File

@ -1,44 +1,46 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: couchdb:$$cap_couchdb_version image: couchdb:$$cap_couchdb_version
volumes: volumes:
- $$cap_appname-db-data:/opt/couchdb/data - $$cap_appname-db-data:/opt/couchdb/data
- $$cap_appname-db-etc:/opt/couchdb/etc - $$cap_appname-db-etc:/opt/couchdb/etc
restart: always restart: always
environment: environment:
COUCHDB_USER: $$cap_couchdb_user COUCHDB_USER: $$cap_couchdb_user
COUCHDB_PASSWORD: $$cap_couchdb_password COUCHDB_PASSWORD: $$cap_couchdb_password
caproverExtra: caproverExtra:
containerHttpPort: "5984" containerHttpPort: '5984'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_couchdb_version - id: $$cap_couchdb_version
label: CouchDB Version Tag label: CouchDB Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/couchdb/tags/ https://hub.docker.com/r/library/couchdb/tags/
defaultValue: "2" defaultValue: '2'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_couchdb_user - id: $$cap_couchdb_user
label: CouchDB Username label: CouchDB Username
defaultValue: mainuser defaultValue: mainuser
validRegex: /^([a-zA-Z0-9_])+$/ validRegex: /^([a-zA-Z0-9_])+$/
- id: $$cap_couchdb_password - id: $$cap_couchdb_password
label: CouchDB Password label: CouchDB Password
defaultValue: "" defaultValue: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: >- start: >-
CouchDB is a database that uses JSON for documents, an HTTP API, & CouchDB is a database that uses JSON for documents, an HTTP API, &
JavaScript/declarative indexing. JavaScript/declarative indexing.
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 5984 to other CapRover apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 5984 to other CapRover apps.
Enter your CouchDB Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your CouchDB Configuration parameters and click on next. It will take about a minute for the process to finish.
end: CouchDB is deployed and available as $$cap_appname at port 5984 to other end:
apps CouchDB is deployed and available as $$cap_appname at port 5984 to other
displayName: CouchDB apps
isOfficial: true displayName: CouchDB
description: Apache CouchDB is an open-source document-oriented NoSQL database, isOfficial: true
implemented in Erlang description:
documentation: Taken from https://hub.docker.com/_/couchdb/ Apache CouchDB is an open-source document-oriented NoSQL database,
implemented in Erlang
documentation: Taken from https://hub.docker.com/_/couchdb/

View File

@ -1,24 +1,25 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: countly/countly-server:$$cap_countly_version image: countly/countly-server:$$cap_countly_version
volumes: volumes:
- $$cap_appname-data:/var/lib/mongodb - $$cap_appname-data:/var/lib/mongodb
restart: always restart: always
environment: {} environment: {}
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_countly_version - id: $$cap_countly_version
label: What version/tag do you want? label: What version/tag do you want?
description: Go here to see all versions description: Go here to see all versions
https://hub.docker.com/r/countly/countly-server/tags https://hub.docker.com/r/countly/countly-server/tags
defaultValue: 19.08.1 defaultValue: 19.08.1
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: Countly. This will only work over HTTPS, so enable plz :) | Product start:
Analytics for Mobile, Web, Desktop and IoT | https://count.ly Countly. This will only work over HTTPS, so enable plz :) | Product
end: Countly is deployed and available as $$cap_appname Analytics for Mobile, Web, Desktop and IoT | https://count.ly
displayName: "" end: Countly is deployed and available as $$cap_appname
isOfficial: true displayName: ''
description: Countly helps you get insights from your application isOfficial: true
documentation: Taken from https://hub.docker.com/r/countly/countly-server description: Countly helps you get insights from your application
documentation: Taken from https://hub.docker.com/r/countly/countly-server

View File

@ -1,111 +1,113 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mysql:5.7 image: mysql:5.7
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql/ - $$cap_appname-db-data:/var/lib/mysql/
environment: environment:
MYSQL_DATABASE: $$cap_mysql_database_name MYSQL_DATABASE: $$cap_mysql_database_name
MYSQL_ROOT_PASSWORD: $$cap_mysql_root_passwd MYSQL_ROOT_PASSWORD: $$cap_mysql_root_passwd
MYSQL_USER: $$cap_mysql_user MYSQL_USER: $$cap_mysql_user
MYSQL_PASSWORD: $$cap_mysql_passwd MYSQL_PASSWORD: $$cap_mysql_passwd
healthcheck: healthcheck:
test: mysql -u$$cap_mysql_user -p$$cap_mysql_passwd -e "SHOW DATABASES;" test: mysql -u$$cap_mysql_user -p$$cap_mysql_passwd -e "SHOW DATABASES;"
interval: 10s interval: 10s
timeout: 6s timeout: 6s
retries: "10" retries: '10'
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-directus: $$cap_appname-directus:
depends_on: depends_on:
$$cap_appname-db: $$cap_appname-db:
condition: service_healthy condition: service_healthy
image: directus/directus:$$cap_directus_tag image: directus/directus:$$cap_directus_tag
volumes: volumes:
- $$cap_appname-directus-uploads:/var/directus/public/uploads - $$cap_appname-directus-uploads:/var/directus/public/uploads
restart: always restart: always
environment: environment:
DIRECTUS_DATABASE_HOST: srv-captain--$$cap_appname-db DIRECTUS_DATABASE_HOST: srv-captain--$$cap_appname-db
DIRECTUS_DATABASE_NAME: $$cap_mysql_database_name DIRECTUS_DATABASE_NAME: $$cap_mysql_database_name
DIRECTUS_DATABASE_USERNAME: $$cap_mysql_user DIRECTUS_DATABASE_USERNAME: $$cap_mysql_user
DIRECTUS_DATABASE_PASSWORD: $$cap_mysql_passwd DIRECTUS_DATABASE_PASSWORD: $$cap_mysql_passwd
DIRECTUS_AUTH_SECRETKEY: $$cap_directus_auth_secret_key DIRECTUS_AUTH_SECRETKEY: $$cap_directus_auth_secret_key
DIRECTUS_AUTH_PUBLICKEY: $$cap_directus_auth_public_key DIRECTUS_AUTH_PUBLICKEY: $$cap_directus_auth_public_key
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- description: Tag of Directus image on https://hub.docker.com/r/directus/directus/tags - description: Tag of Directus image on https://hub.docker.com/r/directus/directus/tags
defaultValue: v8.8.0-apache defaultValue: v8.8.0-apache
id: $$cap_directus_tag id: $$cap_directus_tag
label: Directus image tag label: Directus image tag
validRegex: /.{1,}/ validRegex: /.{1,}/
- description: Name of the Directus backing database instance. - description: Name of the Directus backing database instance.
defaultValue: directus defaultValue: directus
id: $$cap_mysql_database_name id: $$cap_mysql_database_name
label: mySQL Database Name label: mySQL Database Name
validRegex: /.{1,}/ validRegex: /.{1,}/
- description: Master password for the Directus backing database instance. - description: Master password for the Directus backing database instance.
defaultValue: L4fCizKUZtX4Htwi defaultValue: L4fCizKUZtX4Htwi
id: $$cap_mysql_root_passwd id: $$cap_mysql_root_passwd
label: mySQL Root Password label: mySQL Root Password
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- description: User for the Directus backing database instance. - description: User for the Directus backing database instance.
defaultValue: directus defaultValue: directus
id: $$cap_mysql_user id: $$cap_mysql_user
label: mySQL User label: mySQL User
validRegex: /.{1,}/ validRegex: /.{1,}/
- description: User password for the Directus backing database instance. - description: User password for the Directus backing database instance.
defaultValue: N2cQ4J9VzsfvXwzM defaultValue: N2cQ4J9VzsfvXwzM
id: $$cap_mysql_passwd id: $$cap_mysql_passwd
label: mySQL User Password label: mySQL User Password
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- description: Directus Auth Secret Key (must not be the same as Directus Auth - description:
Public Key) Directus Auth Secret Key (must not be the same as Directus Auth
defaultValue: nsQocnfPjh3Udjyw Public Key)
id: $$cap_directus_auth_secret_key defaultValue: nsQocnfPjh3Udjyw
label: Directus Auth Secret Key id: $$cap_directus_auth_secret_key
validRegex: /^(?=.*\d).{10,}$/ label: Directus Auth Secret Key
- description: Directus Auth Public Key (must not be the same as Directus Auth validRegex: /^(?=.*\d).{10,}$/
Secret Key) - description:
defaultValue: 8QQc2mv6PXuEcsfw Directus Auth Public Key (must not be the same as Directus Auth
id: $$cap_directus_auth_public_key Secret Key)
label: Directus Auth Public Key defaultValue: 8QQc2mv6PXuEcsfw
validRegex: /^(?=.*\d).{10,}$/ id: $$cap_directus_auth_public_key
- description: Directus admin user email label: Directus Auth Public Key
defaultValue: admin@example.com validRegex: /^(?=.*\d).{10,}$/
id: $$cap_directus_install_email - description: Directus admin user email
label: Directus admin user email defaultValue: admin@example.com
validRegex: /.{1,}/ id: $$cap_directus_install_email
- description: Directus admin user password label: Directus admin user email
defaultValue: yM7iT3ijt95pyeJP validRegex: /.{1,}/
id: $$cap_directus_install_password - description: Directus admin user password
label: Directus admin user password defaultValue: yM7iT3ijt95pyeJP
validRegex: /^(?=.*\d).{10,}$/ id: $$cap_directus_install_password
instructions: label: Directus admin user password
end: > validRegex: /^(?=.*\d).{10,}$/
THE INSTALLATION PROCESS IS NOT FINISHED !!! instructions:
end: >
THE INSTALLATION PROCESS IS NOT FINISHED !!!
As said in the documentation (https://docs.directus.io/installation/docker.html#step-4-initialize-the-database-and-an-admin-user), currently (30/06/2020), Directus does not support automatic database setup so you need to do it yourself the first time you launch directus. As said in the documentation (https://docs.directus.io/installation/docker.html#step-4-initialize-the-database-and-an-admin-user), currently (30/06/2020), Directus does not support automatic database setup so you need to do it yourself the first time you launch directus.
But since Caprover does not use standard docker-compose file, you need to run a slightly uglier command than the one shown in the documentation. But since Caprover does not use standard docker-compose file, you need to run a slightly uglier command than the one shown in the documentation.
Run the following command on your server (using SSH for example, you might need to be root): Run the following command on your server (using SSH for example, you might need to be root):
docker run -e DIRECTUS_DATABASE_HOST=srv-captain--$$cap_appname-db -e DIRECTUS_DATABASE_NAME=$$cap_mysql_database_name -e DIRECTUS_DATABASE_USERNAME=$$cap_mysql_user -e DIRECTUS_DATABASE_PASSWORD=$$cap_mysql_passwd -e DIRECTUS_AUTH_SECRETKEY=$$cap_directus_auth_secret_key -e DIRECTUS_AUTH_PUBLICKEY=$$cap_directus_auth_public_key --network $(docker network ls | grep "captain-overlay-network" | awk '{print $1}') --rm directus/directus:$$cap_directus_tag install --email $$cap_directus_install_email --password $$cap_directus_install_password docker run -e DIRECTUS_DATABASE_HOST=srv-captain--$$cap_appname-db -e DIRECTUS_DATABASE_NAME=$$cap_mysql_database_name -e DIRECTUS_DATABASE_USERNAME=$$cap_mysql_user -e DIRECTUS_DATABASE_PASSWORD=$$cap_mysql_passwd -e DIRECTUS_AUTH_SECRETKEY=$$cap_directus_auth_secret_key -e DIRECTUS_AUTH_PUBLICKEY=$$cap_directus_auth_public_key --network $(docker network ls | grep "captain-overlay-network" | awk '{print $1}') --rm directus/directus:$$cap_directus_tag install --email $$cap_directus_install_email --password $$cap_directus_install_password
Once this is done, Directus is deployed and available as $$cap_appname-directus. Once this is done, Directus is deployed and available as $$cap_appname-directus.
It may take a few minutes for Directus to initialize. It may take a few minutes for Directus to initialize.
start: >- start: >-
Directus is an open-source suite of software that wraps custom SQL Directus is an open-source suite of software that wraps custom SQL
databases with a dynamic API and intuitive Admin App. databases with a dynamic API and intuitive Admin App.
For more information and available options, see https://github.com/directus/docker or the official documentation at https://docs.directus.io For more information and available options, see https://github.com/directus/docker or the official documentation at https://docs.directus.io
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: Directus is an open-source tool for managing content across all description: Directus is an open-source tool for managing content across all
your omni-channel digital experiences your omni-channel digital experiences
documentation: Taken from https://github.com/directus/docker. documentation: Taken from https://github.com/directus/docker.

View File

@ -1,153 +1,155 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-postgresql: $$cap_appname-postgresql:
documentation: Taken from https://hub.docker.com/r/bitnami/postgresql documentation: Taken from https://hub.docker.com/r/bitnami/postgresql
image: docker.io/bitnami/postgresql:$$cap_postgresql_version image: docker.io/bitnami/postgresql:$$cap_postgresql_version
restart: always restart: always
environment: environment:
ALLOW_EMPTY_PASSWORD: yes ALLOW_EMPTY_PASSWORD: yes
volumes: volumes:
- $$cap_appname-postgresql-data:/bitnami/postgresql - $$cap_appname-postgresql-data:/bitnami/postgresql
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-redis: $$cap_appname-redis:
documentation: Taken from https://hub.docker.com/r/bitnami/redis documentation: Taken from https://hub.docker.com/r/bitnami/redis
image: docker.io/bitnami/redis:$$cap_redis_version image: docker.io/bitnami/redis:$$cap_redis_version
restart: always restart: always
environment: environment:
ALLOW_EMPTY_PASSWORD: yes ALLOW_EMPTY_PASSWORD: yes
volumes: volumes:
- $$cap_appname-redis-data:/bitnami - $$cap_appname-redis-data:/bitnami
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
documentation: Taken from https://hub.docker.com/r/bitnami/discourse documentation: Taken from https://hub.docker.com/r/bitnami/discourse
image: docker.io/bitnami/discourse:$$cap_discourse_version image: docker.io/bitnami/discourse:$$cap_discourse_version
depends_on: depends_on:
- $$cap_appname-postgresql - $$cap_appname-postgresql
- $$cap_appname-redis - $$cap_appname-redis
volumes: volumes:
- $$cap_appname-data:/bitnami - $$cap_appname-data:/bitnami
environment: environment:
POSTGRESQL_HOST: srv-captain--$$cap_appname-postgresql POSTGRESQL_HOST: srv-captain--$$cap_appname-postgresql
POSTGRESQL_ROOT_USER: postgres POSTGRESQL_ROOT_USER: postgres
POSTGRESQL_CLIENT_CREATE_DATABASE_NAME: $$cap_db_name POSTGRESQL_CLIENT_CREATE_DATABASE_NAME: $$cap_db_name
POSTGRESQL_CLIENT_CREATE_DATABASE_USERNAME: $$cap_db_user POSTGRESQL_CLIENT_CREATE_DATABASE_USERNAME: $$cap_db_user
POSTGRESQL_CLIENT_CREATE_DATABASE_PASSWORD: $$cap_db_pass POSTGRESQL_CLIENT_CREATE_DATABASE_PASSWORD: $$cap_db_pass
DISCOURSE_USERNAME: $$cap_admin_user DISCOURSE_USERNAME: $$cap_admin_user
DISCOURSE_PASSWORD: $$cap_admin_pass DISCOURSE_PASSWORD: $$cap_admin_pass
DISCOURSE_EMAIL: $$cap_admin_email DISCOURSE_EMAIL: $$cap_admin_email
DISCOURSE_SITENAME: $$cap_sitename DISCOURSE_SITENAME: $$cap_sitename
DISCOURSE_POSTGRESQL_NAME: $$cap_db_name DISCOURSE_POSTGRESQL_NAME: $$cap_db_name
DISCOURSE_POSTGRESQL_USERNAME: $$cap_db_user DISCOURSE_POSTGRESQL_USERNAME: $$cap_db_user
DISCOURSE_POSTGRESQL_PASSWORD: $$cap_db_pass DISCOURSE_POSTGRESQL_PASSWORD: $$cap_db_pass
DISCOURSE_HOSTNAME: $$cap_appname.$$cap_root_domain DISCOURSE_HOSTNAME: $$cap_appname.$$cap_root_domain
REDIS_HOST: srv-captain--$$cap_appname-redis REDIS_HOST: srv-captain--$$cap_appname-redis
SMTP_HOST: $$cap_smtp_host SMTP_HOST: $$cap_smtp_host
SMTP_PORT: $$cap_smtp_port SMTP_PORT: $$cap_smtp_port
SMTP_USER: $$cap_smtp_user SMTP_USER: $$cap_smtp_user
SMTP_PASSWORD: $$cap_smtp_pass SMTP_PASSWORD: $$cap_smtp_pass
caproverExtra: caproverExtra:
containerHttpPort: "3000" containerHttpPort: '3000'
$$cap_appname-sidekiq: $$cap_appname-sidekiq:
documentaion: Taken from https://hub.docker.com/r/bitnami/discourse documentaion: Taken from https://hub.docker.com/r/bitnami/discourse
depends_on: depends_on:
- $$cap_appname - $$cap_appname
volumes: volumes:
- $$cap_appname-data:/bitnami - $$cap_appname-data:/bitnami
environment: environment:
DISCOURSE_POSTGRESQL_NAME: $$cap_db_name DISCOURSE_POSTGRESQL_NAME: $$cap_db_name
DISCOURSE_POSTGRESQL_USERNAME: $$cap_db_user DISCOURSE_POSTGRESQL_USERNAME: $$cap_db_user
DISCOURSE_POSTGRESQL_PASSWORD: $$cap_db_pass DISCOURSE_POSTGRESQL_PASSWORD: $$cap_db_pass
DISCOURSE_HOST: srv-captain--$$cap_appname DISCOURSE_HOST: srv-captain--$$cap_appname
DISCOURSE_PORT: "3000" DISCOURSE_PORT: '3000'
DISCOURSE_HOSTNAME: $$cap_appname.$$cap_root_domain DISCOURSE_HOSTNAME: $$cap_appname.$$cap_root_domain
POSTGRESQL_HOST: srv-captain--$$cap_appname-postgresql POSTGRESQL_HOST: srv-captain--$$cap_appname-postgresql
REDIS_HOST: srv-captain--$$cap_appname-redis REDIS_HOST: srv-captain--$$cap_appname-redis
SMTP_HOST: $$cap_smtp_host SMTP_HOST: $$cap_smtp_host
SMTP_PORT: $$cap_smtp_port SMTP_PORT: $$cap_smtp_port
SMTP_USER: $$cap_smtp_user SMTP_USER: $$cap_smtp_user
SMTP_PASSWORD: $$cap_smtp_pass SMTP_PASSWORD: $$cap_smtp_pass
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM docker.io/bitnami/discourse:$$cap_discourse_version - FROM docker.io/bitnami/discourse:$$cap_discourse_version
- CMD ["nami" , "start" , "--foreground" , "discourse-sidekiq"] - CMD ["nami" , "start" , "--foreground" , "discourse-sidekiq"]
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_discourse_version - id: $$cap_discourse_version
label: Discourse Version label: Discourse Version
defaultValue: 2.4.4 defaultValue: 2.4.4
description: Version of Discourse description: Version of Discourse
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_postgresql_version - id: $$cap_postgresql_version
label: Postgresql (database) version label: Postgresql (database) version
defaultValue: "11" defaultValue: '11'
description: Version of Postgresql description: Version of Postgresql
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_sitename - id: $$cap_sitename
label: Sitename label: Sitename
defaultValue: My site! defaultValue: My site!
description: The title of the site, the words on the tab description: The title of the site, the words on the tab
- id: $$cap_redis_version - id: $$cap_redis_version
label: Redis version label: Redis version
defaultValue: "5.0" defaultValue: '5.0'
description: Version of Redis description: Version of Redis
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_admin_user - id: $$cap_admin_user
label: Admin username label: Admin username
defaultValue: admin defaultValue: admin
description: Name of the admin account description: Name of the admin account
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_admin_pass - id: $$cap_admin_pass
label: Admin password label: Admin password
defaultValue: sTr0nG_p@s$wo%d defaultValue: sTr0nG_p@s$wo%d
description: Password of the admin account description: Password of the admin account
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_admin_email - id: $$cap_admin_email
label: Admin email label: Admin email
defaultValue: your_email@gmail.com defaultValue: your_email@gmail.com
description: Email of the admin account description: Email of the admin account
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_db_name - id: $$cap_db_name
label: Database name label: Database name
defaultValue: discourse_db defaultValue: discourse_db
description: Name for the database using postgresql description: Name for the database using postgresql
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: discourse_user defaultValue: discourse_user
description: Username for the database using postgresql description: Username for the database using postgresql
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
defaultValue: sTr0nG_p@s$wo%d defaultValue: sTr0nG_p@s$wo%d
description: Password for the database user and root using postgresql description: Password for the database user and root using postgresql
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_smtp_host - id: $$cap_smtp_host
label: SMPT host label: SMPT host
defaultValue: smtp.gmail.com defaultValue: smtp.gmail.com
description: The host for your smtp server description: The host for your smtp server
- id: $$cap_smtp_port - id: $$cap_smtp_port
label: SMTP port label: SMTP port
defaultValue: "587" defaultValue: '587'
description: The port for your smtp server description: The port for your smtp server
- id: $$cap_smtp_user - id: $$cap_smtp_user
label: SMTP user label: SMTP user
defaultValue: your_email@gmail.com defaultValue: your_email@gmail.com
description: The user for your smtp server description: The user for your smtp server
- id: $$cap_smtp_pass - id: $$cap_smtp_pass
label: SMTP password label: SMTP password
defaultValue: sTr0nG_p@s$wo%d defaultValue: sTr0nG_p@s$wo%d
description: The password for your smtp server description: The password for your smtp server
instructions: instructions:
start: Discourse is a relatively heavy application, atleast 2GB RAM is start: Discourse is a relatively heavy application, atleast 2GB RAM is
recommended to run Discourse recommended to run Discourse
end: Discourse image is deployed and the installation process has begun. The end:
installation process takes about 10 minutes. Discourse image is deployed and the installation process has begun. The
displayName: Discourse installation process takes about 10 minutes.
isOfficial: true displayName: Discourse
description: Discourse is the 100% open source discussion platform built for the isOfficial: true
next decade of the Internet. Use it as a mailing list, discussion forum, description:
long-form chat room, and more! Discourse is the 100% open source discussion platform built for the
documentation: Taken from https://hub.docker.com/r/bitnami/discourse next decade of the Internet. Use it as a mailing list, discussion forum,
long-form chat room, and more!
documentation: Taken from https://hub.docker.com/r/bitnami/discourse

View File

@ -1,54 +1,55 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: linuxserver/dokuwiki:$$cap_dokuwiki_version image: linuxserver/dokuwiki:$$cap_dokuwiki_version
environment: environment:
TZ: $$cap_tz TZ: $$cap_tz
PUID: $$cap_puid PUID: $$cap_puid
PGID: $$cap_guid PGID: $$cap_guid
volumes: volumes:
- $$cap_appname-config:/config - $$cap_appname-config:/config
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_dokuwiki_version - id: $$cap_dokuwiki_version
label: DokuWiki Version label: DokuWiki Version
defaultValue: 2018-04-22c-ls37 defaultValue: 2018-04-22c-ls37
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/linuxserver/dokuwiki/tags https://hub.docker.com/r/linuxserver/dokuwiki/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_puid - id: $$cap_puid
label: User ID label: User ID
defaultValue: "1000" defaultValue: '1000'
description: User ID that the process uses description: User ID that the process uses
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_guid - id: $$cap_guid
label: Group ID label: Group ID
defaultValue: "1000" defaultValue: '1000'
description: Group ID that the process uses description: Group ID that the process uses
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_tz - id: $$cap_tz
label: Time Zone label: Time Zone
defaultValue: America/New_York defaultValue: America/New_York
description: Get yours from description: Get yours from
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: Dokuwiki is a simple to use and highly versatile Open Source wiki start: Dokuwiki is a simple to use and highly versatile Open Source wiki
software that doesn't require a database. It is loved by users for its software that doesn't require a database. It is loved by users for its
clean and readable syntax. The ease of maintenance, backup and integration clean and readable syntax. The ease of maintenance, backup and integration
makes it an administrator's favorite. Built in access controls and makes it an administrator's favorite. Built in access controls and
authentication connectors make DokuWiki especially useful in the authentication connectors make DokuWiki especially useful in the
enterprise context and the large number of plugins contributed by its enterprise context and the large number of plugins contributed by its
vibrant community allow for a broad range of use cases beyond a vibrant community allow for a broad range of use cases beyond a
traditional wiki. traditional wiki.
end: >- end: >-
Dokuwiki has been successfully deployed. Please wait about 2 minutes Dokuwiki has been successfully deployed. Please wait about 2 minutes
before accessing Dokuwiki. before accessing Dokuwiki.
Navigate to /install.php to finish the installation! More details: https://github.com/linuxserver/docker-dokuwiki#application-setup Navigate to /install.php to finish the installation! More details: https://github.com/linuxserver/docker-dokuwiki#application-setup
displayName: DokuWiki displayName: DokuWiki
isOfficial: true isOfficial: true
description: Dokuwiki is a simple to use and highly versatile Open Source wiki description:
software that doesn't require a database. Dokuwiki is a simple to use and highly versatile Open Source wiki
documentation: Taken from https://hub.docker.com/r/linuxserver/dokuwiki/tags software that doesn't require a database.
documentation: Taken from https://hub.docker.com/r/linuxserver/dokuwiki/tags

View File

@ -1,70 +1,71 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres-version image: postgres:$$cap_postgres-version
volumes: volumes:
- $$cap_appname-db:/var/lib/postgresql/data - $$cap_appname-db:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: dolibarr POSTGRES_USER: dolibarr
POSTGRES_PASSWORD: $$cap_pg-pass POSTGRES_PASSWORD: $$cap_pg-pass
POSTGRES_DB: dolibarr POSTGRES_DB: dolibarr
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: upshift/dolibarr:$$cap_dolibarr-version image: upshift/dolibarr:$$cap_dolibarr-version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
volumes: volumes:
- $$cap_appname-html:/var/www/html - $$cap_appname-html:/var/www/html
- $$cap_appname-docs:/var/www/documents - $$cap_appname-docs:/var/www/documents
restart: always restart: always
environment: environment:
DOLI_DB_HOST: srv-captain--$$cap_appname-db DOLI_DB_HOST: srv-captain--$$cap_appname-db
DOLI_DB_NAME: dolibarr DOLI_DB_NAME: dolibarr
DOLI_DB_ROOT_LOGIN: dolibarr DOLI_DB_ROOT_LOGIN: dolibarr
DOLI_DB_ROOT_PASSWOORD: $$cap_pg-pass DOLI_DB_ROOT_PASSWOORD: $$cap_pg-pass
DOLI_DB_USER: dolibarr DOLI_DB_USER: dolibarr
DOLI_DB_PORT: 5432 DOLI_DB_PORT: 5432
DOLI_DB_TYPE: pgsql DOLI_DB_TYPE: pgsql
DOLI_DB_PASSWORD: $$cap_pg-pass DOLI_DB_PASSWORD: $$cap_pg-pass
DOLI_ADMIN_LOGIN: $$cap_admin-login DOLI_ADMIN_LOGIN: $$cap_admin-login
DOLI_ADMIN_PASSWORD: $$cap_admin-pass DOLI_ADMIN_PASSWORD: $$cap_admin-pass
DOLI_URL_ROOT: http://$$cap_appname.$$cap_root_domain DOLI_URL_ROOT: http://$$cap_appname.$$cap_root_domain
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres-version - id: $$cap_postgres-version
label: Postgres Version label: Postgres Version
defaultValue: 9.6-alpine defaultValue: 9.6-alpine
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_dolibarr-version - id: $$cap_dolibarr-version
label: Dolibarr Version label: Dolibarr Version
defaultValue: "11.0" defaultValue: '11.0'
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_pg-pass - id: $$cap_pg-pass
label: Postgres Password label: Postgres Password
description: The password of the PostgreSQL Database description: The password of the PostgreSQL Database
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_admin-login - id: $$cap_admin-login
label: Dolibarr Admin Login label: Dolibarr Admin Login
defaultValue: admin defaultValue: admin
description: The login of the fisrt admin user of Dolibarr description: The login of the fisrt admin user of Dolibarr
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_admin-pass - id: $$cap_admin-pass
label: Dolibarr Admin Password label: Dolibarr Admin Password
description: The password of the first admin user of Dolibarr description: The password of the first admin user of Dolibarr
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: Dolibarr is an Open Source ERP & CRM for Business start: Dolibarr is an Open Source ERP & CRM for Business
end: Dolibarr is deployed and available as srv-captain--$$cap_appname:8080 to end:
other apps. Dolibarr is deployed and available as srv-captain--$$cap_appname:8080 to
displayName: Dolibarr other apps.
description: Open Source ERP & CRM for Business (sme or large companies, displayName: Dolibarr
freelancers, foundations) description: Open Source ERP & CRM for Business (sme or large companies,
documentation: https://hub.docker.com/r/upshift/dolibarr freelancers, foundations)
documentation: https://hub.docker.com/r/upshift/dolibarr

View File

@ -1,96 +1,100 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-agent: $$cap_appname-agent:
image: drone/agent:$$cap_drone_version image: drone/agent:$$cap_drone_version
restart: always restart: always
environment: environment:
DRONE_SERVER: srv-captain--$$cap_appname-server:9000 DRONE_SERVER: srv-captain--$$cap_appname-server:9000
DRONE_SECRET: $$cap_drone_secret DRONE_SECRET: $$cap_drone_secret
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-server: $$cap_appname-server:
depends_on: depends_on:
- $$cap_appname-agent - $$cap_appname-agent
image: drone/drone:$$cap_drone_version image: drone/drone:$$cap_drone_version
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
- $$cap_appname-server:/data - $$cap_appname-server:/data
restart: always restart: always
environment: environment:
DRONE_GITEA_SERVER: $$cap_drone_gitea_server DRONE_GITEA_SERVER: $$cap_drone_gitea_server
DRONE_GIT_ALWAYS_AUTH: $$cap_drone_gitea_always_auth DRONE_GIT_ALWAYS_AUTH: $$cap_drone_gitea_always_auth
DRONE_RUNNER_CAPACITY: $$cap_drone_runner_capacity DRONE_RUNNER_CAPACITY: $$cap_drone_runner_capacity
DRONE_SERVER_PROTO: $$cap_drone_server_proto DRONE_SERVER_PROTO: $$cap_drone_server_proto
DRONE_SERVER_HOST: $$cap_drone_server_host DRONE_SERVER_HOST: $$cap_drone_server_host
DRONE_TLS_AUTOCERT: $$cap_drone_tls_autocert DRONE_TLS_AUTOCERT: $$cap_drone_tls_autocert
DRONE_SECRET: $$cap_drone_secret DRONE_SECRET: $$cap_drone_secret
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_drone_version - id: $$cap_drone_version
label: drone Version label: drone Version
defaultValue: 1.0.0-rc.5 defaultValue: 1.0.0-rc.5
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/drone/drone/tags https://hub.docker.com/r/drone/drone/tags
validRegex: "" validRegex: ''
- id: $$cap_drone_gitea_server - id: $$cap_drone_gitea_server
label: DRONE_GITEA_SERVER label: DRONE_GITEA_SERVER
defaultValue: https://your.server defaultValue: https://your.server
description: A string containing your Gitea server address. description: A string containing your Gitea server address.
validRegex: "" validRegex: ''
- id: $$cap_drone_gitea_always_auth - id: $$cap_drone_gitea_always_auth
label: DRONE_GIT_ALWAYS_AUTH label: DRONE_GIT_ALWAYS_AUTH
defaultValue: "false" defaultValue: 'false'
description: Boolean value configures Drone to authenticate when cloning public description:
repositories. This is only required when your source code management Boolean value configures Drone to authenticate when cloning public
system (e.g. GitHub Enterprise) has private mode enabled. repositories. This is only required when your source code management
validRegex: "" system (e.g. GitHub Enterprise) has private mode enabled.
- id: $$cap_drone_runner_capacity validRegex: ''
label: DRONE_RUNNER_CAPACITY - id: $$cap_drone_runner_capacity
defaultValue: "2" label: DRONE_RUNNER_CAPACITY
description: An integer defining the maximum number of pipelines the agent defaultValue: '2'
should execute concurrently. The default value is two pipelines. description:
validRegex: /^[0-9]+$/ An integer defining the maximum number of pipelines the agent
- id: $$cap_drone_server_proto should execute concurrently. The default value is two pipelines.
label: DRONE_SERVER_PROTO validRegex: /^[0-9]+$/
defaultValue: https - id: $$cap_drone_server_proto
description: A string containing your Drone server protocol scheme. This value label: DRONE_SERVER_PROTO
should be set to http or https. This field defaults to https if you defaultValue: https
configure ssl or acme. description:
validRegex: /^([Hh][Tt][Tt][Pp]|[Hh][Tt][Tt][Pp][Ss])$/ A string containing your Drone server protocol scheme. This value
- id: $$cap_drone_server_host should be set to http or https. This field defaults to https if you
label: DRONE_SERVER_HOST configure ssl or acme.
defaultValue: drone.yourhost.com validRegex: /^([Hh][Tt][Tt][Pp]|[Hh][Tt][Tt][Pp][Ss])$/
description: A string containing your Drone server hostname or IP address. - id: $$cap_drone_server_host
validRegex: "" label: DRONE_SERVER_HOST
- id: $$cap_drone_tls_autocert defaultValue: drone.yourhost.com
label: DRONE_TLS_AUTOCERT description: A string containing your Drone server hostname or IP address.
defaultValue: "false" validRegex: ''
description: An boolean indicating debug level logs should be use for automatic - id: $$cap_drone_tls_autocert
SSL certification generation and configuration. The default value is label: DRONE_TLS_AUTOCERT
false.. defaultValue: 'false'
validRegex: /^([Tt][Rr][Uu][Ee]|[Ff][Aa][Ll][Ss][Ee])$/ description:
- id: $$cap_drone_secret An boolean indicating debug level logs should be use for automatic
label: secret for linking drone and agent SSL certification generation and configuration. The default value is
description: some random secret here (min 10 characters) false..
defaultValue: "" validRegex: /^([Tt][Rr][Uu][Ee]|[Ff][Aa][Ll][Ss][Ee])$/
validRegex: /.{10,}/ - id: $$cap_drone_secret
instructions: label: secret for linking drone and agent
start: >- description: some random secret here (min 10 characters)
Drone is a self-service Continuous Delivery platform for busy development defaultValue: ''
teams. It can be used with different GIT servers like gogs, gitea as well validRegex: /.{10,}/
as services like gitlab and github. This installer is gitea focused and instructions:
requires a running gitea instances (which you can install via start: >-
one-click-apps in caprover). Drone is a self-service Continuous Delivery platform for busy development
teams. It can be used with different GIT servers like gogs, gitea as well
as services like gitlab and github. This installer is gitea focused and
requires a running gitea instances (which you can install via
one-click-apps in caprover).
Enter your Drone for Gitea configuration parameters and click on next. The process will take about a minute to finish. Enter your Drone for Gitea configuration parameters and click on next. The process will take about a minute to finish.
end: > end: >
Drone is deployed and available as $$cap_appname-server. Drone is deployed and available as $$cap_appname-server.
IMPORTANT: It will take up to 2 minutes for Drone for Gitea to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Drone for Gitea to be ready. Before that, you might see 502 error page.
displayName: Drone.io displayName: Drone.io
isOfficial: true isOfficial: true
description: Drone is a self-service Continuous Delivery platform for busy description: Drone is a self-service Continuous Delivery platform for busy
development teams development teams
documentation: Taken from https://docs.drone.io/intro/gitea/single-machine/ documentation: Taken from https://docs.drone.io/intro/gitea/single-machine/

View File

@ -1,26 +1,26 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: silverwind/droppy:$$cap_droppy_version image: silverwind/droppy:$$cap_droppy_version
volumes: volumes:
- $$cap_appname-config:/config - $$cap_appname-config:/config
- $$cap_appname-files:/files - $$cap_appname-files:/files
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "8989" containerHttpPort: '8989'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_droppy_version - id: $$cap_droppy_version
label: droppy version tag label: droppy version tag
description: Checkout their docker page for the valid tags @ description: Checkout their docker page for the valid tags @
https://hub.docker.com/r/silverwind/droppy/tags https://hub.docker.com/r/silverwind/droppy/tags
defaultValue: 11.1.0 defaultValue: 11.1.0
instructions: instructions:
start: droppy is a self-hosted file storage server with a web interface. start: droppy is a self-hosted file storage server with a web interface.
end: >- end: >-
droppy is deployed and available as $$cap_appname. droppy is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for droppy to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for droppy to be ready. Before that, you might see 502 error page.
displayName: "" displayName: ''
description: droppy is a self-hosted file storage server with a web interface description: droppy is a self-hosted file storage server with a web interface
documentation: Read the documentation @ https://github.com/silverwind/droppy documentation: Read the documentation @ https://github.com/silverwind/droppy

View File

@ -1,32 +1,35 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: eclipse-mosquitto:$$cap_eclipse_version image: eclipse-mosquitto:$$cap_eclipse_version
volumes: volumes:
- $$cap_appname-eclipse-config:/mosquitto/config/ - $$cap_appname-eclipse-config:/mosquitto/config/
- $$cap_appname-eclipse-data:/mosquitto/data/ - $$cap_appname-eclipse-data:/mosquitto/data/
- $$cap_appname-eclipse-log:/mosquitto/log/ - $$cap_appname-eclipse-log:/mosquitto/log/
ports: [] ports: []
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_eclipse_version - id: $$cap_eclipse_version
label: Eclipes-Mosquitto Image Version label: Eclipes-Mosquitto Image Version
defaultValue: latest defaultValue: latest
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: Eclipse Mosquitto is an open source message broker which implements MQTT start:
version 5, 3.1.1 and 3.1. Enter Parameters below Eclipse Mosquitto is an open source message broker which implements MQTT
end: Eclipes-Mosquitto is deployed and available as version 5, 3.1.1 and 3.1. Enter Parameters below
srv-captain--$$cap_appname:1883 to other apps and end: Eclipes-Mosquitto is deployed and available as
srv-captain--$$cap_appname:9001 as a websocket. srv-captain--$$cap_appname:1883 to other apps and
displayName: Eclipse Mosquitto - A MQTT Broker srv-captain--$$cap_appname:9001 as a websocket.
isOfficial: true displayName: Eclipse Mosquitto - A MQTT Broker
description: Eclipse Mosquitto is an open source message broker which implements isOfficial: true
MQTT version 5, 3.1.1 and 3.1 description:
documentation: Taken from https://github.com/eclipse/mosquitto. Mosquitto is an Eclipse Mosquitto is an open source message broker which implements
open source implementation of a server for version 5.0, 3.1.1, and 3.1 of MQTT version 5, 3.1.1 and 3.1
the MQTT protocol. It also includes a C and C++ client library, and the documentation:
mosquitto_pub and mosquitto_sub utilities for publishing and subscribing. Taken from https://github.com/eclipse/mosquitto. Mosquitto is an
open source implementation of a server for version 5.0, 3.1.1, and 3.1 of
the MQTT protocol. It also includes a C and C++ client library, and the
mosquitto_pub and mosquitto_sub utilities for publishing and subscribing.

View File

@ -1,74 +1,77 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version
volumes: volumes:
- $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data - $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data
restart: always restart: always
environment: environment:
ES_JAVA_OPTS: -Xms512m -Xmx512m ES_JAVA_OPTS: -Xms512m -Xmx512m
cluster.name: $$cap_elasticsearch_cluster_name cluster.name: $$cap_elasticsearch_cluster_name
cluster.initial_master_nodes: $$cap_elasticsearch_cluster_initial_master_nodes cluster.initial_master_nodes: $$cap_elasticsearch_cluster_initial_master_nodes
http.port: $$cap_container_port http.port: $$cap_container_port
node.name: $$cap_appname node.name: $$cap_appname
node.master: $$cap_elasticsearch_node_master node.master: $$cap_elasticsearch_node_master
node.data: $$cap_elasticsearch_node_data node.data: $$cap_elasticsearch_node_data
discovery.seed_hosts: $$cap_elasticsearch_discovery_seed_hosts discovery.seed_hosts: $$cap_elasticsearch_discovery_seed_hosts
caproverExtra: caproverExtra:
containerHttpPort: $$cap_container_port containerHttpPort: $$cap_container_port
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_elasticsearch_version - id: $$cap_elasticsearch_version
label: "Elasticsearch Version Tag " label: 'Elasticsearch Version Tag '
description: "Checkout the releases overview: description: 'Checkout the releases overview:
https://www.elastic.co/de/downloads/elasticsearch" https://www.elastic.co/de/downloads/elasticsearch'
defaultValue: 7.8.0 defaultValue: 7.8.0
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_cluster_name - id: $$cap_elasticsearch_cluster_name
label: Cluster Name label: Cluster Name
description: Only nodes within the same cluster name can be combined description: Only nodes within the same cluster name can be combined
defaultValue: elasticsearch-cluster defaultValue: elasticsearch-cluster
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_cluster_initial_master_nodes - id: $$cap_elasticsearch_cluster_initial_master_nodes
label: Cluster Initial Master Nodes label: Cluster Initial Master Nodes
description: Nodes to be used as master nodes. If this is the master node, put description:
the 'App Name' selected above Nodes to be used as master nodes. If this is the master node, put
defaultValue: "" the 'App Name' selected above
validRegex: /^([^\s^\/])+$/ defaultValue: ''
- id: $$cap_elasticsearch_node_data validRegex: /^([^\s^\/])+$/
label: Node Data - id: $$cap_elasticsearch_node_data
description: Should the node used for storing data? (true / false) label: Node Data
defaultValue: "true" description: Should the node used for storing data? (true / false)
validRegex: /^([^\s^\/])+$/ defaultValue: 'true'
- id: $$cap_elasticsearch_node_master validRegex: /^([^\s^\/])+$/
label: Node Master - id: $$cap_elasticsearch_node_master
description: Define node as master-eligible (usual first node TRUE, others FALSE). label: Node Master
defaultValue: "true" description: Define node as master-eligible (usual first node TRUE, others FALSE).
validRegex: /^([^\s^\/])+$/ defaultValue: 'true'
- id: $$cap_elasticsearch_discovery_seed_hosts validRegex: /^([^\s^\/])+$/
label: Discovery seed hosts - id: $$cap_elasticsearch_discovery_seed_hosts
defaultValue: srv-captain--XXX label: Discovery seed hosts
description: Domains to start the discovery of other nodes defaultValue: srv-captain--XXX
validRegex: /^([^\s^\/])+$/ description: Domains to start the discovery of other nodes
- id: $$cap_container_port validRegex: /^([^\s^\/])+$/
label: Container TCP Port - id: $$cap_container_port
defaultValue: "9200" label: Container TCP Port
description: Internal port for Elasticsearch the container listens to. defaultValue: '9200'
validRegex: /^([0-9])+$/ description: Internal port for Elasticsearch the container listens to.
instructions: validRegex: /^([0-9])+$/
start: "Elasticsearch is a distributed, RESTful search and analytics engine. instructions:
This image can be used for single nodes and cluster setups. IMPORTANT: Be start:
sure to extend the virtual memory on all your hosts! (increase \"echo 'Elasticsearch is a distributed, RESTful search and analytics engine.
'vm.max_map_count=262144' >> /etc/sysctl.conf\" and restart \"sysctl This image can be used for single nodes and cluster setups. IMPORTANT: Be
-p\")" sure to extend the virtual memory on all your hosts! (increase "echo
end: "Deployment of Elasticsearch is finished. You might see 502 errors for the ''vm.max_map_count=262144'' >> /etc/sysctl.conf" and restart "sysctl
next 2 minutes. Goto <YOUR-APP-URL>/_cat/health to check the health of -p")'
your cluster. IMPORTANT: Be sure to extend the virtual memory on all your end:
hosts! (increase \"echo 'vm.max_map_count=262144' >> /etc/sysctl.conf\" 'Deployment of Elasticsearch is finished. You might see 502 errors for the
and restart \"sysctl -p\")" next 2 minutes. Goto <YOUR-APP-URL>/_cat/health to check the health of
displayName: "" your cluster. IMPORTANT: Be sure to extend the virtual memory on all your
isOfficial: true hosts! (increase "echo ''vm.max_map_count=262144'' >> /etc/sysctl.conf"
description: Elasticsearch is a search engine based on the Lucene library and restart "sysctl -p")'
documentation: Look at displayName: ''
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html isOfficial: true
for further assistance using Elasticsearch with docker. description: Elasticsearch is a search engine based on the Lucene library
documentation: Look at
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
for further assistance using Elasticsearch with docker.

View File

@ -1,41 +1,43 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: grburst/etesync:$$cap_version image: grburst/etesync:$$cap_version
volumes: volumes:
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
environment: environment:
SUPER_USER: $$cap_SUPER_USER SUPER_USER: $$cap_SUPER_USER
SUPER_EMAIL: $$cap_SUPER_EMAIL SUPER_EMAIL: $$cap_SUPER_EMAIL
SUPER_PASS: $$cap_SUPER_PASS SUPER_PASS: $$cap_SUPER_PASS
caproverExtra: caproverExtra:
containerHttpPort: "3735" containerHttpPort: '3735'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_version - id: $$cap_version
label: version tag label: version tag
description: Checkout their docker page for the valid tags @ description: Checkout their docker page for the valid tags @
https://hub.docker.com/r/grburst/etesync https://hub.docker.com/r/grburst/etesync
defaultValue: alpine defaultValue: alpine
- id: $$cap_SUPER_USER - id: $$cap_SUPER_USER
label: user name label: user name
description: etesync super user name description: etesync super user name
defaultValue: root defaultValue: root
- id: $$cap_SUPER_EMAIL - id: $$cap_SUPER_EMAIL
label: email label: email
description: etesync super user email description: etesync super user email
defaultValue: x@x.com defaultValue: x@x.com
- id: $$cap_SUPER_PASS - id: $$cap_SUPER_PASS
label: password label: password
description: etesync super user password description: etesync super user password
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
instructions: instructions:
start: ETESync is a open source and privacy focuse sync service start: ETESync is a open source and privacy focuse sync service
end: Deployment of ETEsync is finished. You might see 502 errors for the next 2 end:
minutes. Goto <YOUR-APP-URL>/admin to manage your users for ETEsync. Deployment of ETEsync is finished. You might see 502 errors for the next 2
displayName: ETESync minutes. Goto <YOUR-APP-URL>/admin to manage your users for ETEsync.
description: ETESync is a self hosted syning solution, it is secure, end-to-end displayName: ETESync
encrypted, and privacy respecting sync for your contacts, calendars and description:
tasks. ETESync is a self hosted syning solution, it is secure, end-to-end
documentation: Read the documentation @ https://github.com/GRBurst/docker-etesync-server encrypted, and privacy respecting sync for your contacts, calendars and
tasks.
documentation: Read the documentation @ https://github.com/GRBurst/docker-etesync-server

View File

@ -1,57 +1,58 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: etherpad/etherpad:$$cap_etherpad_version image: etherpad/etherpad:$$cap_etherpad_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
environment: environment:
NODE_ENV: production NODE_ENV: production
DB_TYPE: mysql DB_TYPE: mysql
DB_HOST: srv-captain--$$cap_appname-db DB_HOST: srv-captain--$$cap_appname-db
DB_PORT: "3306" DB_PORT: '3306'
DB_NAME: etherpad DB_NAME: etherpad
DB_USER: etherpad DB_USER: etherpad
DB_PASS: $$cap_db_pass DB_PASS: $$cap_db_pass
DB_CHARSET: utf8mb4 DB_CHARSET: utf8mb4
TRUST_PROXY: "true" TRUST_PROXY: 'true'
caproverExtra: caproverExtra:
containerHttpPort: "9001" containerHttpPort: '9001'
$$cap_appname-db: $$cap_appname-db:
image: mysql:$$cap_mysql_version image: mysql:$$cap_mysql_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: etherpad MYSQL_DATABASE: etherpad
MYSQL_USER: etherpad MYSQL_USER: etherpad
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_etherpad_version - id: $$cap_etherpad_version
label: Etherpad Docker Image label: Etherpad Docker Image
defaultValue: 1.8.0 defaultValue: 1.8.0
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/etherpad/etherpad/tags - default is 1.8.0 as of https://hub.docker.com/r/etherpad/etherpad/tags - default is 1.8.0 as of
2020-04-09 2020-04-09
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_mysql_version - id: $$cap_mysql_version
label: MySQL Version label: MySQL Version
defaultValue: "5.7" defaultValue: '5.7'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mysql/tags/ https://hub.docker.com/r/library/mysql/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: Etherpad is a real-time collaborative editor for the web start: Etherpad is a real-time collaborative editor for the web
end: Etherpad is a real-time collaborative editor for the web is deployed and end:
available as srv-captain--$$cap_appname. Note that the application may Etherpad is a real-time collaborative editor for the web is deployed and
take some time to become available. available as srv-captain--$$cap_appname. Note that the application may
displayName: Etherpad take some time to become available.
isOfficial: true displayName: Etherpad
description: Etherpad is a real-time collaborative editor for the web isOfficial: true
documentation: "https://github.com/ether/etherpad-lite/blob/develop/doc/docker.md " description: Etherpad is a real-time collaborative editor for the web
documentation: 'https://github.com/ether/etherpad-lite/blob/develop/doc/docker.md '

View File

@ -1,68 +1,69 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
volumes: volumes:
- $$cap_appname-database:/database - $$cap_appname-database:/database
- $$cap_appname-files:/srv - $$cap_appname-files:/srv
restart: always restart: always
environment: {} environment: {}
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM alpine:latest as helper - FROM alpine:latest as helper
- "# Similar to the original file, except, /database.db is inside a - '# Similar to the original file, except, /database.db is inside a
directory now so that we can assign a volume to it." directory now so that we can assign a volume to it.'
- RUN echo - RUN echo
"{'port':80,'baseURL':'','address':'','log':'stdout','database':'/database/database.db','root':'/srv'}" "{'port':80,'baseURL':'','address':'','log':'stdout','database':'/database/database.db','root':'/srv'}"
| sed "s/\'/\"/g" >/.edited.json | sed "s/\'/\"/g" >/.edited.json
- FROM filebrowser/filebrowser:$$cap_filebrowser_version - FROM filebrowser/filebrowser:$$cap_filebrowser_version
- COPY --from=helper /.edited.json /.filebrowser.json - COPY --from=helper /.edited.json /.filebrowser.json
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_filebrowser_version - id: $$cap_filebrowser_version
label: File Browser Version Tag label: File Browser Version Tag
description: "Check out their Docker page for the valid tags: description: 'Check out their Docker page for the valid tags:
https://hub.docker.com/r/filebrowser/filebrowser/tags" https://hub.docker.com/r/filebrowser/filebrowser/tags'
defaultValue: v2.0.16 defaultValue: v2.0.16
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
filebrowser provides a file managing interface within a specified filebrowser provides a file managing interface within a specified
directory and it can be used to upload, delete, preview, rename and edit directory and it can be used to upload, delete, preview, rename and edit
your files. It allows the creation of multiple users and each user can your files. It allows the creation of multiple users and each user can
have its own directory. have its own directory.
IMPORTANT: IMPORTANT:
The default image maps an empty volume to FileBrowser in order to avoid exposing your files, but after you finished installation and changed the password you can mount the root directory of host. i.e. / to /srv in the app. The default image maps an empty volume to FileBrowser in order to avoid exposing your files, but after you finished installation and changed the password you can mount the root directory of host. i.e. / to /srv in the app.
end: >- end: >-
Important! Read this and take a screenshot so you can refer to it! Important! Read this and take a screenshot so you can refer to it!
username and password are both "admin". username and password are both "admin".
By default, $$cap_appname-files volume, which is an empty directory, is mapped to your file browser content which is at /srv inside the app. To change this: By default, $$cap_appname-files volume, which is an empty directory, is mapped to your file browser content which is at /srv inside the app. To change this:
1- Go to FileBrowser and change password to something else to avoid having your files exposed 1- Go to FileBrowser and change password to something else to avoid having your files exposed
2- Go to CapRover > Apps > FileBrowser > App Config tab and change $$cap_appname-files to 2- Go to CapRover > Apps > FileBrowser > App Config tab and change $$cap_appname-files to
2a) some other volume name such as "cap_name-myappvolume" if you want to view the content of that volume 2a) some other volume name such as "cap_name-myappvolume" if you want to view the content of that volume
2b) "/some/existing/path/on/host" if you want to view a specific path on the host. 2b) "/some/existing/path/on/host" if you want to view a specific path on the host.
2c) "/" to view the entire content of your host! 2c) "/" to view the entire content of your host!
Don't change the "/srv" part of the mapping. "/srv" is the directory inside FileBrowser which is used to display content in FileBrowser. Don't change the "/srv" part of the mapping. "/srv" is the directory inside FileBrowser which is used to display content in FileBrowser.
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: filebrowser provides a file managing interface within a specified description:
directory and it can be used to upload, delete, preview, rename and edit filebrowser provides a file managing interface within a specified
your files with supports for multi users. directory and it can be used to upload, delete, preview, rename and edit
documentation: Taken from https://filebrowser.xyz/installation#docker except your files with supports for multi users.
moved the database to a directory to be able to associate with a volume documentation: Taken from https://filebrowser.xyz/installation#docker except
moved the database to a directory to be able to associate with a volume

View File

@ -1,25 +1,28 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: machines/filestash:$$cap_filestash_version image: machines/filestash:$$cap_filestash_version
volumes: volumes:
- $$cap_appname-app-data-state:/app/data/state - $$cap_appname-app-data-state:/app/data/state
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "8334" containerHttpPort: '8334'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_filestash_version - id: $$cap_filestash_version
label: Filestash Version label: Filestash Version
defaultValue: b7b45f2 defaultValue: b7b45f2
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/machines/filestash/tags https://hub.docker.com/r/machines/filestash/tags
instructions: instructions:
start: Filestash is a modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, start:
LDAP, CalDAV, CardDAV, Mysql, Backblaze, ... Filestash is a modern web client for SFTP, S3, FTP, WebDAV, Git, Minio,
end: Filestash is deployed and available as srv-captain--$$cap_appname-db:8334 LDAP, CalDAV, CardDAV, Mysql, Backblaze, ...
to other apps. end:
displayName: Filestash Filestash is deployed and available as srv-captain--$$cap_appname-db:8334
description: A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, to other apps.
CalDAV, CardDAV, Mysql, Backblaze, ... displayName: Filestash
documentation: Filestash https://www.filestash.app description:
A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP,
CalDAV, CardDAV, Mysql, Backblaze, ...
documentation: Filestash https://www.filestash.app

View File

@ -1,77 +1,80 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: jc5x/firefly-iii:$$cap_firefly_version image: jc5x/firefly-iii:$$cap_firefly_version
volumes: volumes:
- $$cap_appname-export:/var/www/firefly-iii/storage/export - $$cap_appname-export:/var/www/firefly-iii/storage/export
- $$cap_appname-upload:/var/www/firefly-iii/storage/upload - $$cap_appname-upload:/var/www/firefly-iii/storage/upload
restart: always restart: always
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
environment: environment:
SITE_OWNER: $$cap_firefly_site-owner SITE_OWNER: $$cap_firefly_site-owner
TZ: $$cap_firefly_time-zone TZ: $$cap_firefly_time-zone
TRUSTED_PROXIES: "**" TRUSTED_PROXIES: '**'
DB_CONNECTION: mysql DB_CONNECTION: mysql
DB_PORT: 3306 DB_PORT: 3306
DB_DATABASE: firefly DB_DATABASE: firefly
DB_USERNAME: firefly DB_USERNAME: firefly
DB_HOST: srv-captain--$$cap_appname-db DB_HOST: srv-captain--$$cap_appname-db
DB_PASSWORD: $$cap_mariadb_password DB_PASSWORD: $$cap_mariadb_password
APP_KEY: $$cap_firefly_app-key APP_KEY: $$cap_firefly_app-key
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
$$cap_appname-db: $$cap_appname-db:
image: mariadb:$$cap_mariadb_version image: mariadb:$$cap_mariadb_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_mariadb_password MYSQL_ROOT_PASSWORD: $$cap_mariadb_password
MYSQL_DATABASE: firefly MYSQL_DATABASE: firefly
MYSQL_USER: firefly MYSQL_USER: firefly
MYSQL_PASSWORD: $$cap_mariadb_password MYSQL_PASSWORD: $$cap_mariadb_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mariadb_version - id: $$cap_mariadb_version
label: Mariadb Version Tag label: Mariadb Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
defaultValue: 10.5.4 defaultValue: 10.5.4
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb_password - id: $$cap_mariadb_password
label: Mariadb Password label: Mariadb Password
description: The password of the Mariadb Database" description: The password of the Mariadb Database"
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_firefly_version - id: $$cap_firefly_version
label: Firefly Version Tag label: Firefly Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/jc5x/firefly-iii/tags https://hub.docker.com/r/jc5x/firefly-iii/tags
defaultValue: release-5.3.0 defaultValue: release-5.3.0
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_firefly_site-owner - id: $$cap_firefly_site-owner
label: Firefly Site Owner Mail label: Firefly Site Owner Mail
description: The email address of the owner of the app. description: The email address of the owner of the app.
validRegex: /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/ validRegex: /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/
- id: $$cap_firefly_time-zone - id: $$cap_firefly_time-zone
label: Time zone label: Time zone
description: The preferred time zone. Check out the available time zone on description:
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones The preferred time zone. Check out the available time zone on
defaultValue: Europe/Brussels https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: /.{1,}/ defaultValue: Europe/Brussels
- id: $$cap_firefly_app-key validRegex: /.{1,}/
label: Firefly APP KEY - id: $$cap_firefly_app-key
description: The key from which everything is encrypted. Generate one on label: Firefly APP KEY
https://passwordsgenerator.net/?length=32&symbols=0&numbers=1&lowercase=1&uppercase=1&similar=0&ambiguous=0&client=1&autoselect=0 description:
defaultValue: qSAY3tVhAHgz87gusKFoPbg9hpCnMVTR The key from which everything is encrypted. Generate one on
validRegex: /^[A-Za-z0-9]{32}$/ https://passwordsgenerator.net/?length=32&symbols=0&numbers=1&lowercase=1&uppercase=1&similar=0&ambiguous=0&client=1&autoselect=0
instructions: defaultValue: qSAY3tVhAHgz87gusKFoPbg9hpCnMVTR
start: Enter your Firefly III Configuration parameters and click on next. It validRegex: /^[A-Za-z0-9]{32}$/
will take about a minute for the process to finish. instructions:
end: Firefly III is deployed and available from the url start:
http://$$cap_appname.$$cap_root_domain Enter your Firefly III Configuration parameters and click on next. It
displayName: Firefly III will take about a minute for the process to finish.
description: Firefly III - A free and open source personal finance manager end: Firefly III is deployed and available from the url
documentation: Taken from https://docs.firefly-iii.org/installation/docker http://$$cap_appname.$$cap_root_domain
displayName: Firefly III
description: Firefly III - A free and open source personal finance manager
documentation: Taken from https://docs.firefly-iii.org/installation/docker

View File

@ -1,128 +1,128 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
environment: environment:
POSTGRES_USER: $$cap_db_user POSTGRES_USER: $$cap_db_user
POSTGRES_PASSWORD: $$cap_db_pass POSTGRES_PASSWORD: $$cap_db_pass
POSTGRES_DB: fusionauth POSTGRES_DB: fusionauth
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-elasticsearch: $$cap_appname-elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version
volumes: volumes:
- $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data - $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data
restart: always restart: always
environment: environment:
ES_JAVA_OPTS: -Xms512m -Xmx512m ES_JAVA_OPTS: -Xms512m -Xmx512m
cluster.name: $$cap_elasticsearch_cluster_name cluster.name: $$cap_elasticsearch_cluster_name
http.port: $$cap_container_search_port http.port: $$cap_container_search_port
node.master: $$cap_elasticsearch_node_master node.master: $$cap_elasticsearch_node_master
node.data: $$cap_elasticsearch_node_data node.data: $$cap_elasticsearch_node_data
discovery.type: single-node discovery.type: single-node
discovery.zen.minimum_master_nodes: $$cap_elasticsearch_minimum_master_nodes discovery.zen.minimum_master_nodes: $$cap_elasticsearch_minimum_master_nodes
discovery.zen.ping.unicast.hosts: $$cap_elasticsearch_unicast_hosts discovery.zen.ping.unicast.hosts: $$cap_elasticsearch_unicast_hosts
caproverExtra: caproverExtra:
containerHttpPort: $$cap_container_search_port containerHttpPort: $$cap_container_search_port
$$cap_appname-fusionauth: $$cap_appname-fusionauth:
image: fusionauth/fusionauth-app:$$cap_fusionauth_version image: fusionauth/fusionauth-app:$$cap_fusionauth_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
- $$cap_appname-elasticsearch - $$cap_appname-elasticsearch
environment: environment:
DATABASE_URL: jdbc:postgresql://srv-captain--$$cap_appname-db:5432/fusionauth DATABASE_URL: jdbc:postgresql://srv-captain--$$cap_appname-db:5432/fusionauth
DATABASE_ROOT_USER: $$cap_db_user DATABASE_ROOT_USER: $$cap_db_user
DATABASE_ROOT_PASSWORD: $$cap_db_pass DATABASE_ROOT_PASSWORD: $$cap_db_pass
DATABASE_USER: $$cap_db_user DATABASE_USER: $$cap_db_user
DATABASE_PASSWORD: $$cap_db_pass DATABASE_PASSWORD: $$cap_db_pass
FUSIONAUTH_MEMORY: $$cap_fusion_memory FUSIONAUTH_MEMORY: $$cap_fusion_memory
FUSIONAUTH_SEARCH_SERVERS: http://srv-captain--$$cap_appname-elasticsearch:9200 FUSIONAUTH_SEARCH_SERVERS: http://srv-captain--$$cap_appname-elasticsearch:9200
FUSIONAUTH_URL: http://srv-captain--$$cap_appname-fusionauth:9011 FUSIONAUTH_URL: http://srv-captain--$$cap_appname-fusionauth:9011
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- $$cap_appname-fusionauth-config:/usr/local/fusionauth/config - $$cap_appname-fusionauth-config:/usr/local/fusionauth/config
caproverExtra: caproverExtra:
containerHttpPort: $$cap_container_port containerHttpPort: $$cap_container_port
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: fusion defaultValue: fusion
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_fusionauth_version - id: $$cap_fusionauth_version
label: FusionAuth Version label: FusionAuth Version
defaultValue: 1.7.2 defaultValue: 1.7.2
description: "See tags at: https://hub.docker.com/r/fusionauth/fusionauth-app/tags" description: 'See tags at: https://hub.docker.com/r/fusionauth/fusionauth-app/tags'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_fusion_memory - id: $$cap_fusion_memory
label: Fusion Memory label: Fusion Memory
defaultValue: 256M defaultValue: 256M
description: "" description: ''
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
defaultValue: "9.6" defaultValue: '9.6'
description: "" description: ''
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_container_port - id: $$cap_container_port
label: Container TCP Port label: Container TCP Port
defaultValue: "9011" defaultValue: '9011'
description: Internal port for Fusion Auth container to listens to. description: Internal port for Fusion Auth container to listens to.
validRegex: /^([0-9])+$/ validRegex: /^([0-9])+$/
- id: $$cap_container_search_port - id: $$cap_container_search_port
label: Container TCP Port label: Container TCP Port
defaultValue: "9200" defaultValue: '9200'
description: Internal port for Elasticsearch the container listens to. description: Internal port for Elasticsearch the container listens to.
validRegex: /^([0-9])+$/ validRegex: /^([0-9])+$/
- id: $$cap_elasticsearch_version - id: $$cap_elasticsearch_version
label: "Elasticsearch Version Tag " label: 'Elasticsearch Version Tag '
description: "Checkout the releases overview: description: 'Checkout the releases overview:
https://www.elastic.co/de/downloads/elasticsearch" https://www.elastic.co/de/downloads/elasticsearch'
defaultValue: 6.7.1 defaultValue: 6.7.1
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_cluster_name - id: $$cap_elasticsearch_cluster_name
label: Cluster Name label: Cluster Name
description: Only nodes within the same cluster name can be combined description: Only nodes within the same cluster name can be combined
defaultValue: elasticsearch-cluster defaultValue: elasticsearch-cluster
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_unicast_hosts - id: $$cap_elasticsearch_unicast_hosts
label: Unicasts hosts label: Unicasts hosts
description: "References to other node to attach to. (for example: srv-captain--XXX)" description: 'References to other node to attach to. (for example: srv-captain--XXX)'
defaultValue: "false" defaultValue: 'false'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_node_data - id: $$cap_elasticsearch_node_data
label: Node Data label: Node Data
description: Should the node used for storing data? (true / false) description: Should the node used for storing data? (true / false)
defaultValue: "true" defaultValue: 'true'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_node_master - id: $$cap_elasticsearch_node_master
label: Node Master label: Node Master
description: Define node as master-eligible (usual first node YES, others NO). description: Define node as master-eligible (usual first node YES, others NO).
defaultValue: "true" defaultValue: 'true'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_minimum_master_nodes - id: $$cap_elasticsearch_minimum_master_nodes
label: Minimum Master Nodes label: Minimum Master Nodes
description: "Define minimum amount of master (N) ( best practice: ceil(N/2 + 1) )." description: 'Define minimum amount of master (N) ( best practice: ceil(N/2 + 1) ).'
defaultValue: "1" defaultValue: '1'
validRegex: /^([0-9])+$/ validRegex: /^([0-9])+$/
instructions: instructions:
start: >- start: >-
NOTE: This app requires at least 4GB of RAM. Without this requirement it NOTE: This app requires at least 4GB of RAM. Without this requirement it
fails to start up. fails to start up.
FusionAuth is a modern platform for Customer Identity and Access Management (CIAM). FusionAuth provides APIs and a responsive web user interface to support login, registration, localized email, multi-factor authentication, reporting and much more. See: https://fusionauth.io/docs/v1/tech/getting-started/ and https://github.com/FusionAuth/fusionauth-containers FusionAuth is a modern platform for Customer Identity and Access Management (CIAM). FusionAuth provides APIs and a responsive web user interface to support login, registration, localized email, multi-factor authentication, reporting and much more. See: https://fusionauth.io/docs/v1/tech/getting-started/ and https://github.com/FusionAuth/fusionauth-containers
end: FusionAuth is deployed and available as end: FusionAuth is deployed and available as
srv-captain--$$cap_appname-fusionauth:9011 to other apps srv-captain--$$cap_appname-fusionauth:9011 to other apps
displayName: FusionAuth displayName: FusionAuth
isOfficial: true isOfficial: true
description: FusionAuth is a scalable, identity and user management platform description: FusionAuth is a scalable, identity and user management platform
built for devs built for devs
documentation: "Adapted from: https://github.com/FusionAuth/fusionauth-containers" documentation: 'Adapted from: https://github.com/FusionAuth/fusionauth-containers'

View File

@ -1,117 +1,119 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
environment: environment:
GHOST_DATABASE_NAME: $$cap_ghost_database_name GHOST_DATABASE_NAME: $$cap_ghost_database_name
GHOST_DATABASE_PASSWORD: $$cap_ghost_database_password GHOST_DATABASE_PASSWORD: $$cap_ghost_database_password
GHOST_DATABASE_USER: $$cap_ghost_database_user GHOST_DATABASE_USER: $$cap_ghost_database_user
GHOST_EMAIL: $$cap_ghost_email GHOST_EMAIL: $$cap_ghost_email
GHOST_HOST: $$cap_ghost_host GHOST_HOST: $$cap_ghost_host
GHOST_PASSWORD: $$cap_ghost_password GHOST_PASSWORD: $$cap_ghost_password
GHOST_PROTOCOL: $$cap_ghost_protocol GHOST_PROTOCOL: $$cap_ghost_protocol
GHOST_PORT_NUMBER: $$cap_ghost_port GHOST_PORT_NUMBER: $$cap_ghost_port
MARIADB_HOST: $$cap_mariadb_host MARIADB_HOST: $$cap_mariadb_host
MARIADB_PORT_NUMBER: $$cap_mariadb_port_number MARIADB_PORT_NUMBER: $$cap_mariadb_port_number
SMTP_FROM_ADDRESS: $$cap_ghost_smtp_from SMTP_FROM_ADDRESS: $$cap_ghost_smtp_from
SMTP_HOST: $$cap_ghost_smtp_host SMTP_HOST: $$cap_ghost_smtp_host
SMTP_PASSWORD: $$cap_ghost_smtp_password SMTP_PASSWORD: $$cap_ghost_smtp_password
SMTP_PORT: $$cap_ghost_smtp_port SMTP_PORT: $$cap_ghost_smtp_port
SMTP_SERVICE: $$cap_ghost_smtp_service SMTP_SERVICE: $$cap_ghost_smtp_service
SMTP_USER: $$cap_ghost_smtp_user SMTP_USER: $$cap_ghost_smtp_user
image: bitnami/ghost:$$cap_ghost_version image: bitnami/ghost:$$cap_ghost_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/bitnami - $$cap_appname-data:/bitnami
caproverExtra: caproverExtra:
containerHttpPort: "2368" containerHttpPort: '2368'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- defaultValue: 3.4.0 - defaultValue: 3.4.0
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/bitnami/ghost/tags https://hub.docker.com/r/bitnami/ghost/tags
id: $$cap_ghost_version id: $$cap_ghost_version
label: Ghost Version label: Ghost Version
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: Maria DB Host - description: Maria DB Host
defaultValue: localhost defaultValue: localhost
id: $$cap_mariadb_host id: $$cap_mariadb_host
label: Maria DB Host label: Maria DB Host
- description: Maria DB port - description: Maria DB port
defaultValue: "3306" defaultValue: '3306'
id: $$cap_mariadb_port_number id: $$cap_mariadb_port_number
label: MariaDB user label: MariaDB user
- description: Database name - description: Database name
defaultValue: ghost defaultValue: ghost
id: $$cap_ghost_database_name id: $$cap_ghost_database_name
label: MariaDB Database name label: MariaDB Database name
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: User for database - description: User for database
id: $$cap_ghost_database_user id: $$cap_ghost_database_user
label: MariaDB User label: MariaDB User
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: Password for database - description: Password for database
id: $$cap_ghost_database_password id: $$cap_ghost_database_password
label: MariaDB Ghost password label: MariaDB Ghost password
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- defaultValue: youremail@example.com - defaultValue: youremail@example.com
description: Ghost application email, you will use it to login description: Ghost application email, you will use it to login
id: $$cap_ghost_email id: $$cap_ghost_email
label: Ghost email label: Ghost email
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: The admin password must be at least 10 characters, and at least one - description:
number and letter The admin password must be at least 10 characters, and at least one
id: $$cap_ghost_password number and letter
label: Ghost password id: $$cap_ghost_password
validRegex: /^(?=.*\d).{10,}$/ label: Ghost password
- defaultValue: blog.example.com validRegex: /^(?=.*\d).{10,}$/
description: Enter the URL that is used to access your publication - defaultValue: blog.example.com
id: $$cap_ghost_host description: Enter the URL that is used to access your publication
label: Ghost Host id: $$cap_ghost_host
validRegex: /^([^\s^\/])+$/ label: Ghost Host
- defaultValue: http validRegex: /^([^\s^\/])+$/
description: Protocol that you will be using - defaultValue: http
id: $$cap_ghost_protocol description: Protocol that you will be using
label: Ghost Protocol id: $$cap_ghost_protocol
validRegex: /^([^\s^\/])+$/ label: Ghost Protocol
- defaultValue: "80" validRegex: /^([^\s^\/])+$/
description: Port that you will be using - defaultValue: '80'
id: $$cap_ghost_port description: Port that you will be using
label: Ghost Port id: $$cap_ghost_port
- defaultValue: GMail label: Ghost Port
description: Ghost uses node mailer, check this docs - defaultValue: GMail
https://docs.ghost.org/concepts/config/#mail description: Ghost uses node mailer, check this docs
id: $$cap_ghost_smtp_service https://docs.ghost.org/concepts/config/#mail
label: STMP service to use id: $$cap_ghost_smtp_service
- defaultValue: smtp.gmail.com label: STMP service to use
description: The STMP host you will be using - defaultValue: smtp.gmail.com
id: $$cap_ghost_smtp_host description: The STMP host you will be using
label: STMP host id: $$cap_ghost_smtp_host
- defaultValue: "465" label: STMP host
description: The SMTP port you will be using - defaultValue: '465'
id: $$cap_ghost_smtp_port description: The SMTP port you will be using
label: SMTP port id: $$cap_ghost_smtp_port
- defaultValue: your_email@gmail.com label: SMTP port
description: Your user on the SMTP service - defaultValue: your_email@gmail.com
id: $$cap_ghost_smtp_user description: Your user on the SMTP service
label: SMTP user id: $$cap_ghost_smtp_user
- description: Your password on the SMTP service label: SMTP user
id: $$cap_ghost_smtp_password - description: Your password on the SMTP service
label: SMTP password id: $$cap_ghost_smtp_password
- defaultValue: your_email@gmail.com label: SMTP password
description: SMTP from address - defaultValue: your_email@gmail.com
id: $$cap_ghost_smtp_from description: SMTP from address
label: SMTP from address id: $$cap_ghost_smtp_from
instructions: label: SMTP from address
end: > instructions:
Ghost is deployed and available as $$cap_appname. end: >
Ghost is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for Ghost to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Ghost to be ready. Before that, you might see 502 error page.
start: Ghost is a fully open source, adaptable platform for building and running start:
a modern online publication. We power blogs, magazines and journalists Ghost is a fully open source, adaptable platform for building and running
from Zappos to Sky News. a modern online publication. We power blogs, magazines and journalists
displayName: Ghost - No Database from Zappos to Sky News.
isOfficial: true displayName: Ghost - No Database
description: This will create a Ghost blog without a database. After isOfficial: true
installation you will need to change config.production.json, theres a bug description: This will create a Ghost blog without a database. After
where the port number is in the url. installation you will need to change config.production.json, theres a bug
documentation: Taken from https://docs.ghost.org/ where the port number is in the url.
documentation: Taken from https://docs.ghost.org/

View File

@ -1,121 +1,123 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
environment: environment:
GHOST_DATABASE_NAME: ghost GHOST_DATABASE_NAME: ghost
GHOST_DATABASE_PASSWORD: $$cap_db_ghost_password GHOST_DATABASE_PASSWORD: $$cap_db_ghost_password
GHOST_DATABASE_USER: ghost GHOST_DATABASE_USER: ghost
GHOST_EMAIL: $$cap_ghost_email GHOST_EMAIL: $$cap_ghost_email
GHOST_HOST: $$cap_ghost_host GHOST_HOST: $$cap_ghost_host
GHOST_PASSWORD: $$cap_ghost_password GHOST_PASSWORD: $$cap_ghost_password
GHOST_PROTOCOL: $$cap_ghost_protocol GHOST_PROTOCOL: $$cap_ghost_protocol
GHOST_PORT_NUMBER: $$cap_ghost_port GHOST_PORT_NUMBER: $$cap_ghost_port
MARIADB_HOST: srv-captain--$$cap_appname-db MARIADB_HOST: srv-captain--$$cap_appname-db
MARIADB_PORT_NUMBER: "3306" MARIADB_PORT_NUMBER: '3306'
SMTP_FROM_ADDRESS: $$cap_ghost_smtp_from SMTP_FROM_ADDRESS: $$cap_ghost_smtp_from
SMTP_HOST: $$cap_ghost_smtp_host SMTP_HOST: $$cap_ghost_smtp_host
SMTP_PASSWORD: $$cap_ghost_smtp_password SMTP_PASSWORD: $$cap_ghost_smtp_password
SMTP_PORT: $$cap_ghost_smtp_port SMTP_PORT: $$cap_ghost_smtp_port
SMTP_SERVICE: $$cap_ghost_smtp_service SMTP_SERVICE: $$cap_ghost_smtp_service
SMTP_USER: $$cap_ghost_smtp_user SMTP_USER: $$cap_ghost_smtp_user
image: bitnami/ghost:$$cap_ghost_version image: bitnami/ghost:$$cap_ghost_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/bitnami - $$cap_appname-data:/bitnami
caproverExtra: caproverExtra:
containerHttpPort: "2368" containerHttpPort: '2368'
$$cap_appname-db: $$cap_appname-db:
environment: environment:
MARIADB_DATABASE: ghost MARIADB_DATABASE: ghost
MARIADB_PASSWORD: $$cap_db_ghost_password MARIADB_PASSWORD: $$cap_db_ghost_password
MARIADB_ROOT_PASSWORD: $$cap_db_password MARIADB_ROOT_PASSWORD: $$cap_db_password
MARIADB_ROOT_USER: $$cap_db_user MARIADB_ROOT_USER: $$cap_db_user
MARIADB_USER: ghost MARIADB_USER: ghost
image: bitnami/mariadb:10.1 image: bitnami/mariadb:10.1
restart: always restart: always
volumes: volumes:
- $$cap_appname-mariadb-data:/bitnami - $$cap_appname-mariadb-data:/bitnami
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- defaultValue: 2.16.4 - defaultValue: 2.16.4
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/bitnami/ghost/tags https://hub.docker.com/r/bitnami/ghost/tags
id: $$cap_ghost_version id: $$cap_ghost_version
label: Ghost Version label: Ghost Version
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- defaultValue: admin - defaultValue: admin
description: Root user that will be created on MariaDB description: Root user that will be created on MariaDB
id: $$cap_db_user id: $$cap_db_user
label: MariaDB root user label: MariaDB root user
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: Root password that will be created on MariaDB - description: Root password that will be created on MariaDB
id: $$cap_db_password id: $$cap_db_password
label: MariaDB root password label: MariaDB root password
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- description: Password for database user named `ghost` - description: Password for database user named `ghost`
id: $$cap_db_ghost_password id: $$cap_db_ghost_password
label: MariaDB Ghost password label: MariaDB Ghost password
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- defaultValue: youremail@example.com - defaultValue: youremail@example.com
description: Ghost application email, you will use it to login description: Ghost application email, you will use it to login
id: $$cap_ghost_email id: $$cap_ghost_email
label: Ghost email label: Ghost email
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: The admin password must be at least 10 characters, and at least one - description:
number and letter The admin password must be at least 10 characters, and at least one
id: $$cap_ghost_password number and letter
label: Ghost password id: $$cap_ghost_password
validRegex: /^(?=.*\d).{10,}$/ label: Ghost password
- defaultValue: blog.example.com validRegex: /^(?=.*\d).{10,}$/
description: Enter the URL that is used to access your publication - defaultValue: blog.example.com
id: $$cap_ghost_host description: Enter the URL that is used to access your publication
label: Ghost Host id: $$cap_ghost_host
validRegex: /^([^\s^\/])+$/ label: Ghost Host
- defaultValue: http validRegex: /^([^\s^\/])+$/
description: Protocol that you will be using - defaultValue: http
id: $$cap_ghost_protocol description: Protocol that you will be using
label: Ghost Protocol id: $$cap_ghost_protocol
validRegex: /^([^\s^\/])+$/ label: Ghost Protocol
- defaultValue: "80" validRegex: /^([^\s^\/])+$/
description: Port that you will be using - defaultValue: '80'
id: $$cap_ghost_port description: Port that you will be using
label: Ghost Port id: $$cap_ghost_port
- defaultValue: GMail label: Ghost Port
description: Ghost uses node mailer, check this docs - defaultValue: GMail
https://docs.ghost.org/concepts/config/#mail description: Ghost uses node mailer, check this docs
id: $$cap_ghost_smtp_service https://docs.ghost.org/concepts/config/#mail
label: STMP service to use id: $$cap_ghost_smtp_service
- defaultValue: smtp.gmail.com label: STMP service to use
description: The STMP host you will be using - defaultValue: smtp.gmail.com
id: $$cap_ghost_smtp_host description: The STMP host you will be using
label: STMP host id: $$cap_ghost_smtp_host
- defaultValue: "465" label: STMP host
description: The STMP port you will be using - defaultValue: '465'
id: $$cap_ghost_smtp_port description: The STMP port you will be using
label: STMP port id: $$cap_ghost_smtp_port
- defaultValue: your_email@gmail.com label: STMP port
description: Your user on the SMTP service - defaultValue: your_email@gmail.com
id: $$cap_ghost_smtp_user description: Your user on the SMTP service
label: STMP user id: $$cap_ghost_smtp_user
- description: Your password on the SMTP service label: STMP user
id: $$cap_ghost_smtp_password - description: Your password on the SMTP service
label: STMP password id: $$cap_ghost_smtp_password
- defaultValue: your_email@gmail.com label: STMP password
description: STMP from address - defaultValue: your_email@gmail.com
id: $$cap_ghost_smtp_from description: STMP from address
label: STMP from address id: $$cap_ghost_smtp_from
instructions: label: STMP from address
end: > instructions:
Ghost is deployed and available as $$cap_appname. end: >
Ghost is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for Ghost to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Ghost to be ready. Before that, you might see 502 error page.
start: Ghost is a fully open source, adaptable platform for building and running start:
a modern online publication. We power blogs, magazines and journalists Ghost is a fully open source, adaptable platform for building and running
from Zappos to Sky News. a modern online publication. We power blogs, magazines and journalists
displayName: "" from Zappos to Sky News.
isOfficial: true displayName: ''
description: Ghost is a free and open source blogging platform written in isOfficial: true
JavaScript and distributed under the MIT License description: Ghost is a free and open source blogging platform written in
documentation: Taken from https://docs.ghost.org/ JavaScript and distributed under the MIT License
documentation: Taken from https://docs.ghost.org/

View File

@ -1,64 +1,65 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mysql:$$cap_mysql_version image: mysql:$$cap_mysql_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: gitea MYSQL_DATABASE: gitea
MYSQL_USER: gitea MYSQL_USER: gitea
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-gitea: $$cap_appname-gitea:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
image: gitea/gitea:$$cap_gitea_version image: gitea/gitea:$$cap_gitea_version
volumes: volumes:
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
environment: environment:
RUN_MODE: prod RUN_MODE: prod
DB_TYPE: mysql DB_TYPE: mysql
DB_HOST: srv-captain--$$cap_appname-db:3306 DB_HOST: srv-captain--$$cap_appname-db:3306
DB_USER: gitea DB_USER: gitea
DB_PASSWD: $$cap_db_pass DB_PASSWD: $$cap_db_pass
caproverExtra: caproverExtra:
containerHttpPort: "3000" containerHttpPort: '3000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_db_pass - id: $$cap_db_pass
label: MySQL Root password label: MySQL Root password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_gitea_version - id: $$cap_gitea_version
label: Gitea Version label: Gitea Version
defaultValue: "1.7" defaultValue: '1.7'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/gitea/gitea/tags https://hub.docker.com/r/gitea/gitea/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mysql_version - id: $$cap_mysql_version
label: MySQL Version label: MySQL Version
defaultValue: "5.7" defaultValue: '5.7'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mysql/tags/ https://hub.docker.com/r/library/mysql/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
A painless self-hosted Git service. Gitea is a community managed fork of A painless self-hosted Git service. Gitea is a community managed fork of
Gogs. Gogs.
Enter your Gitea Configuration parameters and click on next. A MySQL (database) and a Gitea container will be created for you. The process will take about a minute to finish. Enter your Gitea Configuration parameters and click on next. A MySQL (database) and a Gitea container will be created for you. The process will take about a minute to finish.
end: > end: >
Gitea is deployed and available as $$cap_appname-gitea. Gitea is deployed and available as $$cap_appname-gitea.
Since Gitea is running inside a container, you can optionally map a port (not 22) of the host to port 22 of the container, if you want to use git commands over SSH. You can perform port mapping in your CapRover dashboard, in App Config section. Since Gitea is running inside a container, you can optionally map a port (not 22) of the host to port 22 of the container, if you want to use git commands over SSH. You can perform port mapping in your CapRover dashboard, in App Config section.
IMPORTANT: It will take up to 2 minutes for Gitea to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Gitea to be ready. Before that, you might see 502 error page.
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: Gitea is a software package for hosting software development using description:
Git as well as bug tracking, wikis and code review Gitea is a software package for hosting software development using
documentation: Taken from https://hub.docker.com/r/gitea/gitea/ Git as well as bug tracking, wikis and code review
documentation: Taken from https://hub.docker.com/r/gitea/gitea/

View File

@ -1,52 +1,53 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: gitlab/gitlab-ce:$$cap_gitlab_version image: gitlab/gitlab-ce:$$cap_gitlab_version
volumes: volumes:
- "$$cap_appname-config: /etc/gitlab" - '$$cap_appname-config: /etc/gitlab'
- "$$cap_appname-logs: /var/log/gitlab" - '$$cap_appname-logs: /var/log/gitlab'
- "$$cap_appname-data: /var/opt/gitlab" - '$$cap_appname-data: /var/opt/gitlab'
restart: always restart: always
environment: environment:
GITLAB_OMNIBUS_CONFIG: $$cap_gitlab_omnibus_config GITLAB_OMNIBUS_CONFIG: $$cap_gitlab_omnibus_config
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_gitlab_version - id: $$cap_gitlab_version
label: Gitlab-CE Version Tag label: Gitlab-CE Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/gitlab/gitlab-ce/tags https://hub.docker.com/r/gitlab/gitlab-ce/tags
defaultValue: 11.9.8-ce.0 defaultValue: 11.9.8-ce.0
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_gitlab_omnibus_config - id: $$cap_gitlab_omnibus_config
label: Omnibus Config (Optional) label: Omnibus Config (Optional)
description: "More information here: description: 'More information here:
https://docs.gitlab.com/omnibus/docker/#pre-configure-docker-container" https://docs.gitlab.com/omnibus/docker/#pre-configure-docker-container'
instructions: instructions:
start: >- start: >-
GitLab is a single application for the entire software development GitLab is a single application for the entire software development
lifecycle. From project planning and source code management to CI/CD, lifecycle. From project planning and source code management to CI/CD,
monitoring, and security. monitoring, and security.
More about this container: More about this container:
https://hub.docker.com/r/gitlab/gitlab-ce/ https://hub.docker.com/r/gitlab/gitlab-ce/
Hardware and Software requeriments can be found here: Hardware and Software requeriments can be found here:
https://docs.gitlab.com/ce/install/requirements.html https://docs.gitlab.com/ce/install/requirements.html
For security reasons, no port mapping is created, those can be created after deploying the app. For security reasons, no port mapping is created, those can be created after deploying the app.
More information about Caprover's Firewall & Port Forwarding and configuration can be found here: More information about Caprover's Firewall & Port Forwarding and configuration can be found here:
https://caprover.com/docs/firewall.html https://caprover.com/docs/firewall.html
More information about gitlab's docker configuration can be found here: More information about gitlab's docker configuration can be found here:
https://docs.gitlab.com/omnibus/docker/#configure-gitlab https://docs.gitlab.com/omnibus/docker/#configure-gitlab
It can take some time (2-3 minutes) for the service to launch in a new container. Check the "Deployment" tab logs to determine once GitLab is ready. It can take some time (2-3 minutes) for the service to launch in a new container. Check the "Deployment" tab logs to determine once GitLab is ready.
end: Gitlab-CE is deployed and available as srv-captain--$$cap_appname:80 to end:
other apps. Gitlab-CE is deployed and available as srv-captain--$$cap_appname:80 to
displayName: Gitlab (CE) other apps.
isOfficial: true displayName: Gitlab (CE)
description: CE version of GitLab for CI/CD pipeline isOfficial: true
documentation: Taken from https://docs.gitlab.com/omnibus/docker/ description: CE version of GitLab for CI/CD pipeline
documentation: Taken from https://docs.gitlab.com/omnibus/docker/

View File

@ -1,36 +1,39 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: gitlab/gitlab-runner:$$cap_gitlab-runner_version image: gitlab/gitlab-runner:$$cap_gitlab-runner_version
volumes: volumes:
- $$cap_appname-data:/etc/gitlab-runner - $$cap_appname-data:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_gitlab-runner_version - id: $$cap_gitlab-runner_version
label: GitLab-Runner Version label: GitLab-Runner Version
defaultValue: v11.11.0 defaultValue: v11.11.0
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/gitlab/gitlab-runner/tags https://hub.docker.com/r/gitlab/gitlab-runner/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: GitLab CI/CD is the CI/CD solution integrated into GitLab. With this start:
one-click-app, you receive a self-hosted runner for your pipelines. To GitLab CI/CD is the CI/CD solution integrated into GitLab. With this
enable you to build Docker Images in your pipelines, we mount one-click-app, you receive a self-hosted runner for your pipelines. To
/var/run/docker.sock into the container of the runner (see enable you to build Docker Images in your pipelines, we mount
https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#use-docker-socket-binding /var/run/docker.sock into the container of the runner (see
for more info). As a consequence, this container will have full access to https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#use-docker-socket-binding
all your other containers. If you don't need this functionality, feel free for more info). As a consequence, this container will have full access to
to manually remove the mounted Docker socket from the volumes. all your other containers. If you don't need this functionality, feel free
end: Head over to https://docs.gitlab.com/runner/register/ to register your to manually remove the mounted Docker socket from the volumes.
newly installed runner. You can run 'docker exec -ti <runner-image-name> end:
/bin/sh' to connect to the newly created container and follow the Head over to https://docs.gitlab.com/runner/register/ to register your
tutorial. newly installed runner. You can run 'docker exec -ti <runner-image-name>
displayName: Gitlab (runner) /bin/sh' to connect to the newly created container and follow the
isOfficial: true tutorial.
description: Runner version of GitLab for CI/CD pipeline displayName: Gitlab (runner)
documentation: Taken from https://docs.gitlab.com/runner/install/docker.html and isOfficial: true
https://docs.gitlab.com/runner/register/ description: Runner version of GitLab for CI/CD pipeline
documentation:
Taken from https://docs.gitlab.com/runner/install/docker.html and
https://docs.gitlab.com/runner/register/

View File

@ -1,26 +1,28 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: grafana/grafana@$$cap_version image: grafana/grafana@$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-config:/etc/grafana - $$cap_appname-config:/etc/grafana
- $$cap_appname-data:/var/lib/grafana - $$cap_appname-data:/var/lib/grafana
caproverExtra: caproverExtra:
containerHttpPort: "3000" containerHttpPort: '3000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Grafana Docker Hash - label: Grafana Docker Hash
defaultValue: sha256:4171e7e8c44bb17f9e5bffdcd3710a6d624828d73b4eb638682543c5ce86bbe9 defaultValue: sha256:4171e7e8c44bb17f9e5bffdcd3710a6d624828d73b4eb638682543c5ce86bbe9
description: Starts with 'sha256:'. Find on Docker Hub. Default is latest as description:
of 2020-06-30. Starts with 'sha256:'. Find on Docker Hub. Default is latest as
id: $$cap_version of 2020-06-30.
instructions: id: $$cap_version
end: Grafana is now starting. You can log in with the default login/password of instructions:
admin/admin. end:
start: "Read more about Grafana: https://grafana.com/" Grafana is now starting. You can log in with the default login/password of
displayName: Grafana admin/admin.
isOfficial: true start: 'Read more about Grafana: https://grafana.com/'
description: Grafana allows you to query, visualize, alert on and understand displayName: Grafana
your metrics no matter where they are stored. isOfficial: true
documentation: https://hub.docker.com/r/grafana/grafana description: Grafana allows you to query, visualize, alert on and understand
your metrics no matter where they are stored.
documentation: https://hub.docker.com/r/grafana/grafana

View File

@ -1,110 +1,112 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-mongodb: $$cap_appname-mongodb:
image: mongo:$$cap_mongo_version image: mongo:$$cap_mongo_version
volumes: volumes:
- $$cap_appname-db-data:/data/db - $$cap_appname-db-data:/data/db
- $$cap_appname-db-config:/data/configdb - $$cap_appname-db-config:/data/configdb
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-elasticsearch: $$cap_appname-elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version
volumes: volumes:
- $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data - $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data
restart: always restart: always
environment: environment:
ES_JAVA_OPTS: -Xms512m -Xmx512m ES_JAVA_OPTS: -Xms512m -Xmx512m
cluster.name: $$cap_elasticsearch_cluster_name cluster.name: $$cap_elasticsearch_cluster_name
http.port: $$cap_container_port http.port: $$cap_container_port
node.master: $$cap_elasticsearch_node_master node.master: $$cap_elasticsearch_node_master
node.data: $$cap_elasticsearch_node_data node.data: $$cap_elasticsearch_node_data
discovery.zen.minimum_master_nodes: $$cap_elasticsearch_minimum_master_nodes discovery.zen.minimum_master_nodes: $$cap_elasticsearch_minimum_master_nodes
discovery.zen.ping.unicast.hosts: $$cap_elasticsearch_unicast_hosts discovery.zen.ping.unicast.hosts: $$cap_elasticsearch_unicast_hosts
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-mongodb - $$cap_appname-mongodb
- $$cap_appname-elasticsearch - $$cap_appname-elasticsearch
image: graylog/graylog:$$cap_graylog_version image: graylog/graylog:$$cap_graylog_version
restart: always restart: always
environment: environment:
GRAYLOG_MONGODB_URI: mongodb://srv-captain--$$cap_appname-mongodb/graylog GRAYLOG_MONGODB_URI: mongodb://srv-captain--$$cap_appname-mongodb/graylog
GRAYLOG_ELASTICSEARCH_HOSTS: http://srv-captain--$$cap_appname-elasticsearch:$$cap_container_port GRAYLOG_ELASTICSEARCH_HOSTS: http://srv-captain--$$cap_appname-elasticsearch:$$cap_container_port
GRAYLOG_HTTP_EXTERNAL_URI: //$$cap_appname.$$cap_root_domain/ GRAYLOG_HTTP_EXTERNAL_URI: //$$cap_appname.$$cap_root_domain/
GRAYLOG_ROOT_PASSWORD_SHA2: $$cap_graylog_password GRAYLOG_ROOT_PASSWORD_SHA2: $$cap_graylog_password
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_graylog_version - id: $$cap_graylog_version
label: Graylog Version label: Graylog Version
defaultValue: "3.1" defaultValue: '3.1'
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/graylog/graylog/tags https://hub.docker.com/r/graylog/graylog/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_graylog_password - id: $$cap_graylog_password
label: Graylog Admin Password label: Graylog Admin Password
defaultValue: "" defaultValue: ''
description: 'Admin password SHA256 encoded. Generate with: echo -n "<password>" description:
| shasum -a 256 | cut -d" " -f1' 'Admin password SHA256 encoded. Generate with: echo -n "<password>"
validRegex: /^([^\s^\/])+$/ | shasum -a 256 | cut -d" " -f1'
- id: $$cap_mongo_version validRegex: /^([^\s^\/])+$/
label: MongoDB Version - id: $$cap_mongo_version
defaultValue: "4" label: MongoDB Version
description: Checkout their docker page for the valid tags defaultValue: '4'
https://hub.docker.com/r/library/mongo/tags/ description: Checkout their docker page for the valid tags
validRegex: /^([^\s^\/])+$/ https://hub.docker.com/r/library/mongo/tags/
- id: $$cap_elasticsearch_version validRegex: /^([^\s^\/])+$/
label: "Elasticsearch Version Tag " - id: $$cap_elasticsearch_version
description: "Checkout the releases overview: label: 'Elasticsearch Version Tag '
https://www.elastic.co/de/downloads/elasticsearch" description: 'Checkout the releases overview:
defaultValue: 6.7.1 https://www.elastic.co/de/downloads/elasticsearch'
validRegex: /^([^\s^\/])+$/ defaultValue: 6.7.1
- id: $$cap_elasticsearch_cluster_name validRegex: /^([^\s^\/])+$/
label: Elasticsearch Cluster Name - id: $$cap_elasticsearch_cluster_name
description: Only nodes within the same cluster name can be combined label: Elasticsearch Cluster Name
defaultValue: elasticsearch-cluster description: Only nodes within the same cluster name can be combined
validRegex: /^([^\s^\/])+$/ defaultValue: elasticsearch-cluster
- id: $$cap_elasticsearch_unicast_hosts validRegex: /^([^\s^\/])+$/
label: Elasticsearch Unicasts hosts - id: $$cap_elasticsearch_unicast_hosts
description: "References to other node to attach to. (for example: srv-captain--XXX)" label: Elasticsearch Unicasts hosts
defaultValue: "false" description: 'References to other node to attach to. (for example: srv-captain--XXX)'
validRegex: /^([^\s^\/])+$/ defaultValue: 'false'
- id: $$cap_elasticsearch_node_data validRegex: /^([^\s^\/])+$/
label: Elasticsearch Node Data - id: $$cap_elasticsearch_node_data
description: Should the node used for storing data? (true / false) label: Elasticsearch Node Data
defaultValue: "true" description: Should the node used for storing data? (true / false)
validRegex: /^([^\s^\/])+$/ defaultValue: 'true'
- id: $$cap_elasticsearch_node_master validRegex: /^([^\s^\/])+$/
label: Elasticsearch Node Master - id: $$cap_elasticsearch_node_master
description: Define node as master-eligible (usual first node YES, others NO). label: Elasticsearch Node Master
defaultValue: "true" description: Define node as master-eligible (usual first node YES, others NO).
validRegex: /^([^\s^\/])+$/ defaultValue: 'true'
- id: $$cap_elasticsearch_minimum_master_nodes validRegex: /^([^\s^\/])+$/
label: Elasticsearch Minimum Master Nodes - id: $$cap_elasticsearch_minimum_master_nodes
description: "Define minimum amount of master (N) ( best practice: ceil(N/2 + 1) )." label: Elasticsearch Minimum Master Nodes
defaultValue: "1" description: 'Define minimum amount of master (N) ( best practice: ceil(N/2 + 1) ).'
validRegex: /^([0-9])+$/ defaultValue: '1'
- id: $$cap_container_port validRegex: /^([0-9])+$/
label: Elasticsearch Container TCP Port - id: $$cap_container_port
defaultValue: "9200" label: Elasticsearch Container TCP Port
description: Internal port for Elasticsearch the container listens to. defaultValue: '9200'
validRegex: /^([0-9])+$/ description: Internal port for Elasticsearch the container listens to.
instructions: validRegex: /^([0-9])+$/
start: |- instructions:
Graylog Log Management. start: |-
Graylog Log Management.
NOTICE!: NOTICE!:
Be sure to extend the virtual memory on all your hosts! Be sure to extend the virtual memory on all your hosts!
1. echo 'vm.max_map_count=262144' >> /etc/sysctl.conf 1. echo 'vm.max_map_count=262144' >> /etc/sysctl.conf
2. sysctl -p 2. sysctl -p
end: Deployment of Graylog if finished. You will see 502 errors for the next 5+ end:
minutes while Graylog starts up. Goto <YOUR-APP-URL> and login as "admin" Deployment of Graylog if finished. You will see 502 errors for the next 5+
with your unhashed password. minutes while Graylog starts up. Goto <YOUR-APP-URL> and login as "admin"
displayName: "" with your unhashed password.
isOfficial: true displayName: ''
description: Graylog is used for log management of both structured and isOfficial: true
unstructured data along with debugging applications. description: Graylog is used for log management of both structured and
documentation: Taken from https://hub.docker.com/r/graylog/graylog unstructured data along with debugging applications.
documentation: Taken from https://hub.docker.com/r/graylog/graylog

View File

@ -1,51 +1,53 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: linuxserver/grocy:$$cap_grocy_version image: linuxserver/grocy:$$cap_grocy_version
environment: environment:
TZ: $$cap_tz TZ: $$cap_tz
PUID: $$cap_puid PUID: $$cap_puid
PGID: $$cap_guid PGID: $$cap_guid
volumes: volumes:
- $$cap_appname-config:/config - $$cap_appname-config:/config
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_grocy_version - id: $$cap_grocy_version
label: Grocy Version label: Grocy Version
defaultValue: v2.7.1-ls58 defaultValue: v2.7.1-ls58
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/linuxserver/grocy/tags https://hub.docker.com/r/linuxserver/grocy/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_puid - id: $$cap_puid
label: User ID label: User ID
defaultValue: "1000" defaultValue: '1000'
description: User ID that the process uses description: User ID that the process uses
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_guid - id: $$cap_guid
label: Group ID label: Group ID
defaultValue: "1000" defaultValue: '1000'
description: Group ID that the process uses description: Group ID that the process uses
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_tz - id: $$cap_tz
label: Time Zone label: Time Zone
defaultValue: America/New_York defaultValue: America/New_York
description: Get yours from description: Get yours from
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: Grocy is an ERP system for your kitchen and groceries! Cut down on food start:
waste, and manage your chores with this brilliant utulity. Keep track of Grocy is an ERP system for your kitchen and groceries! Cut down on food
your purchaes, how much food you are wasting, what chores need doing and waste, and manage your chores with this brilliant utulity. Keep track of
what batteries need charging with this proudly Open Source tool. your purchaes, how much food you are wasting, what chores need doing and
end: >- what batteries need charging with this proudly Open Source tool.
Grocy has been successfully deployed. Please wait about 2-5 minutes before end: >-
accessing Grocy. Grocy has been successfully deployed. Please wait about 2-5 minutes before
accessing Grocy.
Username and password are both admin. Username and password are both admin.
displayName: Grocy displayName: Grocy
isOfficial: true isOfficial: true
description: Grocy is an ERP system for your kitchen and groceries! Cut down on description:
food waste, and manage your chores with this brilliant utulity. Grocy is an ERP system for your kitchen and groceries! Cut down on
documentation: Taken from https://hub.docker.com/r/linuxserver/grocy/tags food waste, and manage your chores with this brilliant utulity.
documentation: Taken from https://hub.docker.com/r/linuxserver/grocy/tags

View File

@ -1,38 +1,38 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: hasura/graphql-engine:$$cap_hasura_version image: hasura/graphql-engine:$$cap_hasura_version
restart: always restart: always
environment: environment:
HASURA_GRAPHQL_DATABASE_URL: $$cap_database_url HASURA_GRAPHQL_DATABASE_URL: $$cap_database_url
HASURA_GRAPHQL_ENABLE_CONSOLE: "true" HASURA_GRAPHQL_ENABLE_CONSOLE: 'true'
HASURA_GRAPHQL_ADMIN_SECRET: $$cap_admin_secret HASURA_GRAPHQL_ADMIN_SECRET: $$cap_admin_secret
HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- defaultValue: v1.2.2 - defaultValue: v1.2.2
description: Check out their GitHub page for their latest version description: Check out their GitHub page for their latest version
https://github.com/hasura/graphql-engine https://github.com/hasura/graphql-engine
id: $$cap_hasura_version id: $$cap_hasura_version
label: Hasura Version label: Hasura Version
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: The admin secret gives you access to the console. - description: The admin secret gives you access to the console.
id: $$cap_admin_secret id: $$cap_admin_secret
label: Hasura admin secret(password) label: Hasura admin secret(password)
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- id: $$cap_database_url - id: $$cap_database_url
label: Postgres Connection URL label: Postgres Connection URL
description: postgres://username:password@host/database description: postgres://username:password@host/database
validRegex: /postgres://.+/.+/ validRegex: /postgres://.+/.+/
instructions: instructions:
end: > end: >
Hasura is deployed and available as $$cap_appname. Hasura is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for Hasura to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Hasura to be ready. Before that, you might see 502 error page.
start: Instant Realtime GraphQL on Postgres with web admin console. start: Instant Realtime GraphQL on Postgres with web admin console.
displayName: Hasura - No Database displayName: Hasura - No Database
isOfficial: true isOfficial: true
description: Instant realtime GraphQL APIs on any Postgres application, existing or new description: Instant realtime GraphQL APIs on any Postgres application, existing or new
documentation: Hasura GraphQL Engine documentation: Hasura GraphQL Engine

View File

@ -1,70 +1,71 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: $$cap_pg_user POSTGRES_USER: $$cap_pg_user
POSTGRES_PASSWORD: $$cap_pg_pass POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: $$cap_pg_db POSTGRES_DB: $$cap_pg_db
POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: hasura/graphql-engine:$$cap_hasura_version image: hasura/graphql-engine:$$cap_hasura_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
restart: always restart: always
environment: environment:
HASURA_GRAPHQL_DATABASE_URL: postgres://$$cap_pg_user:$$cap_pg_pass@srv-captain--$$cap_appname-db:5432/$$cap_pg_db HASURA_GRAPHQL_DATABASE_URL: postgres://$$cap_pg_user:$$cap_pg_pass@srv-captain--$$cap_appname-db:5432/$$cap_pg_db
HASURA_GRAPHQL_ENABLE_CONSOLE: "true" HASURA_GRAPHQL_ENABLE_CONSOLE: 'true'
HASURA_GRAPHQL_ADMIN_SECRET: $$cap_admin_secret HASURA_GRAPHQL_ADMIN_SECRET: $$cap_admin_secret
HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- defaultValue: v1.2.2 - defaultValue: v1.2.2
description: Check out their GitHub page for their latest version description: Check out their GitHub page for their latest version
https://github.com/hasura/graphql-engine https://github.com/hasura/graphql-engine
id: $$cap_hasura_version id: $$cap_hasura_version
label: Hasura Version label: Hasura Version
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- defaultValue: "12" - defaultValue: '12'
id: $$cap_postgres_version id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- description: The admin secret gives you access to the console. - description: The admin secret gives you access to the console.
id: $$cap_admin_secret id: $$cap_admin_secret
label: Hasura admin secret(password) label: Hasura admin secret(password)
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- id: $$cap_pg_user - id: $$cap_pg_user
label: Postgres Username label: Postgres Username
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_pass - id: $$cap_pg_pass
label: Postgres Password label: Postgres Password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_db - id: $$cap_pg_db
label: Postgres Default Database label: Postgres Default Database
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_initdb_args - id: $$cap_pg_initdb_args
label: "OPTIONAL: Arguments for 'postgres initdb'" label: "OPTIONAL: Arguments for 'postgres initdb'"
description: For example, --data-checksums description: For example, --data-checksums
validRegex: /.{0,}/ validRegex: /.{0,}/
instructions: instructions:
end: > end: >
Hasura is deployed and available as $$cap_appname. Hasura is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for Hasura to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Hasura to be ready. Before that, you might see 502 error page.
start: Instant Realtime GraphQL on Postgres with web admin console. This Docker start:
Compose setup runs Hasura GraphQL Engine along with a Postgres database Instant Realtime GraphQL on Postgres with web admin console. This Docker
with the PostGIS extension. Compose setup runs Hasura GraphQL Engine along with a Postgres database
displayName: "" with the PostGIS extension.
isOfficial: true displayName: ''
description: Instant realtime GraphQL APIs on any Postgres application, existing or new isOfficial: true
documentation: Hasura GraphQL Engine description: Instant realtime GraphQL APIs on any Postgres application, existing or new
documentation: Hasura GraphQL Engine

View File

@ -1,115 +1,122 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: influxdb:$$cap_influx_version image: influxdb:$$cap_influx_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/influxdb - $$cap_appname-db-data:/var/lib/influxdb
restart: always restart: always
ports: ports:
- $$cap_influxdb_port:8086 - $$cap_influxdb_port:8086
- $$cap_graphite_port:2003 - $$cap_graphite_port:2003
environment: environment:
INFLUXDB_DB: $$cap_influx_db INFLUXDB_DB: $$cap_influx_db
INFLUXDB_HTTP_AUTH_ENABLED: $$cap_influx_auth_enabled INFLUXDB_HTTP_AUTH_ENABLED: $$cap_influx_auth_enabled
INFLUXDB_ADMIN_USER: $$cap_influx_admin_user INFLUXDB_ADMIN_USER: $$cap_influx_admin_user
INFLUXDB_ADMIN_PASSWORD: $$cap_influx_admin_password INFLUXDB_ADMIN_PASSWORD: $$cap_influx_admin_password
INFLUXDB_USER: $$cap_influx_user INFLUXDB_USER: $$cap_influx_user
INFLUXDB_USER_PASSWORD: $$cap_influx_user_password INFLUXDB_USER_PASSWORD: $$cap_influx_user_password
INFLUXDB_READ_USER: $$cap_influx_read_user INFLUXDB_READ_USER: $$cap_influx_read_user
INFLUXDB_READ_USER_PASSWORD: $$cap_influx_read_user_password INFLUXDB_READ_USER_PASSWORD: $$cap_influx_read_user_password
INFLUXDB_WRITE_USER: $$cap_influx_write_user INFLUXDB_WRITE_USER: $$cap_influx_write_user
INFLUXDB_WRITE_USER_PASSWORD: $$cap_influx_write_password INFLUXDB_WRITE_USER_PASSWORD: $$cap_influx_write_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_influx_version - id: $$cap_influx_version
label: InfluxDb Version label: InfluxDb Version
defaultValue: "1.8" defaultValue: '1.8'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/influxdb/tags/ https://hub.docker.com/r/library/influxdb/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- label: Influxdb port - label: Influxdb port
description: The port to make queries to influxdb. description: The port to make queries to influxdb.
defaultValue: "8086" defaultValue: '8086'
id: $$cap_influxdb_port id: $$cap_influxdb_port
- label: Graphite port - label: Graphite port
description: The port for graphite protocol description: The port for graphite protocol
defaultValue: "2003" defaultValue: '2003'
id: $$cap_graphite_port id: $$cap_graphite_port
- label: Influx DB - label: Influx DB
description: Automatically initializes a database with the name of this description:
environment variable. Automatically initializes a database with the name of this
defaultValue: "" environment variable.
id: $$cap_influx_db defaultValue: ''
- label: Auth enabled (true/false) id: $$cap_influx_db
description: Enables authentication. Either this must be set or auth-enabled = - label: Auth enabled (true/false)
true must be set within the configuration file for any authentication description:
related options below to work. Enables authentication. Either this must be set or auth-enabled =
defaultValue: "" true must be set within the configuration file for any authentication
id: $$cap_influx_auth_enabled related options below to work.
- label: Admin User defaultValue: ''
description: The name of the admin user to be created. If this is unset, no id: $$cap_influx_auth_enabled
admin user is created. - label: Admin User
defaultValue: "" description:
id: $$cap_influx_admin_user The name of the admin user to be created. If this is unset, no
- label: Admin password admin user is created.
description: The password for the admin user configured with defaultValue: ''
INFLUXDB_ADMIN_USER. If this is unset, a random password is generated id: $$cap_influx_admin_user
and printed to standard out. - label: Admin password
defaultValue: "" description: The password for the admin user configured with
id: $$cap_influx_admin_password INFLUXDB_ADMIN_USER. If this is unset, a random password is generated
- label: Inlfux user and printed to standard out.
description: The name of a user to be created with no privileges. If INFLUXDB_DB defaultValue: ''
is set, this user will be granted read and write permissions for that id: $$cap_influx_admin_password
database. - label: Inlfux user
defaultValue: "" description:
id: $$cap_influx_user The name of a user to be created with no privileges. If INFLUXDB_DB
- label: Influx password is set, this user will be granted read and write permissions for that
description: The password for the user configured with INFLUXDB_USER. If this is database.
unset, a random password is generated and printed to standard out. defaultValue: ''
defaultValue: "" id: $$cap_influx_user
id: $$cap_influx_user_password - label: Influx password
- label: Influx read user description:
description: The name of a user to be created with read privileges on The password for the user configured with INFLUXDB_USER. If this is
INFLUXDB_DB. If INFLUXDB_DB is not set, this user will have no granted unset, a random password is generated and printed to standard out.
permissions. defaultValue: ''
defaultValue: "" id: $$cap_influx_user_password
id: $$cap_influx_read_user - label: Influx read user
- label: Influx read user password description: The name of a user to be created with read privileges on
description: The password for the user configured with INFLUXDB_READ_USER. If INFLUXDB_DB. If INFLUXDB_DB is not set, this user will have no granted
this is unset, a random password is generated and printed to standard permissions.
out defaultValue: ''
defaultValue: "" id: $$cap_influx_read_user
id: $$cap_influx_read_user_password - label: Influx read user password
- label: Influx write user description:
description: The name of a user to be created with write privileges on The password for the user configured with INFLUXDB_READ_USER. If
INFLUXDB_DB. If INFLUXDB_DB is not set, this user will have no granted this is unset, a random password is generated and printed to standard
permissions. out
defaultValue: "" defaultValue: ''
id: $$cap_influx_write_user id: $$cap_influx_read_user_password
- label: Influx write user password - label: Influx write user
description: The password for the user configured with INFLUXDB_WRITE_USER. If description: The name of a user to be created with write privileges on
this is unset, a random password is generated and printed to standard INFLUXDB_DB. If INFLUXDB_DB is not set, this user will have no granted
out. permissions.
defaultValue: "" defaultValue: ''
id: $$cap_influx_write_password id: $$cap_influx_write_user
instructions: - label: Influx write user password
start: >- description:
Influxdb is a time series database, and part of the tickstack. After The password for the user configured with INFLUXDB_WRITE_USER. If
installation on CapRover, it will be available as this is unset, a random password is generated and printed to standard
srv-captain--YOUR_CONTAINER_NAME at the port you choose (8086 by default) out.
to other CapRover apps. defaultValue: ''
id: $$cap_influx_write_password
instructions:
start: >-
Influxdb is a time series database, and part of the tickstack. After
installation on CapRover, it will be available as
srv-captain--YOUR_CONTAINER_NAME at the port you choose (8086 by default)
to other CapRover apps.
Enter your Influxdb configuration parameters and click on next. The default configuration has no users or authentication and is only accessible to other Caprover apps. It will take about a minute for the process to finish. Enter your Influxdb configuration parameters and click on next. The default configuration has no users or authentication and is only accessible to other Caprover apps. It will take about a minute for the process to finish.
end: All set. Influx is deployed and available as end: All set. Influx is deployed and available as
srv-captain--$$cap_appname-db:$$cap_influxdb_port to other apps. For srv-captain--$$cap_appname-db:$$cap_influxdb_port to other apps. For
example with curl 'curl -G example with curl 'curl -G
http://srv-captain--$$cap_appname-db:$$cap_influxdb_port/query http://srv-captain--$$cap_appname-db:$$cap_influxdb_port/query
--data-urlencode "q=CREATE DATABASE mydb"' --data-urlencode "q=CREATE DATABASE mydb"'
displayName: InfluxDb displayName: InfluxDb
isOfficial: true isOfficial: true
description: InfluxDB is a time series database. It stores large amounts of description: InfluxDB is a time series database. It stores large amounts of
timestamped data, including DevOps monitoring, application metrics, IoT timestamped data, including DevOps monitoring, application metrics, IoT
sensor data, and real-time analytics. sensor data, and real-time analytics.
documentation: Taken from https://hub.docker.com/_/influxdb documentation: Taken from https://hub.docker.com/_/influxdb

View File

@ -1,39 +1,39 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: jenkins/jenkins:$$cap_jenkins_version image: jenkins/jenkins:$$cap_jenkins_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-jenkins-home:/var/jenkins_home - $$cap_appname-jenkins-home:/var/jenkins_home
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_jenkins_version - id: $$cap_jenkins_version
label: Jenkins Version label: Jenkins Version
defaultValue: lts-jdk11 defaultValue: lts-jdk11
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/jenkins/jenkins/tags https://hub.docker.com/r/jenkins/jenkins/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
Jenkins is a self-contained, open source automation server which can be Jenkins is a self-contained, open source automation server which can be
used to automate all sorts of tasks related to building, testing, and used to automate all sorts of tasks related to building, testing, and
delivering or deploying software. delivering or deploying software.
It's documentation is available at: https://jenkins.io/doc/ It's documentation is available at: https://jenkins.io/doc/
For more details about this container, see: https://hub.docker.com/r/jenkins/jenkins/ For more details about this container, see: https://hub.docker.com/r/jenkins/jenkins/
Enter your Jenkins Configuration parameters and click on next. Enter your Jenkins Configuration parameters and click on next.
To ensure Jenkins is securely set up by the administrator, an initial administrative password will be written to the log, available at the app Deployment tab, and this file on the server: /var/jenkins_home/secrets/initialAdminPassword. To ensure Jenkins is securely set up by the administrator, an initial administrative password will be written to the log, available at the app Deployment tab, and this file on the server: /var/jenkins_home/secrets/initialAdminPassword.
It will take about a minute for the process to finish. It will take about a minute for the process to finish.
end: Jenkins is deployed and available as $$cap_appname end: Jenkins is deployed and available as $$cap_appname
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: Jenkins helps to automate the non-human part of the software description: Jenkins helps to automate the non-human part of the software
development process, with continuous integration and facilitating technical development process, with continuous integration and facilitating technical
aspects of continuous delivery aspects of continuous delivery
documentation: "Taken from https://hub.docker.com/r/jenkins/jenkins/ " documentation: 'Taken from https://hub.docker.com/r/jenkins/jenkins/ '

View File

@ -1,242 +1,243 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-web: $$cap_appname-web:
image: jitsi/web:$$cap_tag_version image: jitsi/web:$$cap_tag_version
restart: unless-stopped restart: unless-stopped
ports: ports:
- $$cap_https_port:443 - $$cap_https_port:443
- $$cap_http_port:80 - $$cap_http_port:80
volumes: volumes:
- $$cap_appname-web:/config - $$cap_appname-web:/config
- $$cap_appname-web-transcripts:/usr/share/jitsi-meet/transcripts - $$cap_appname-web-transcripts:/usr/share/jitsi-meet/transcripts
environment: environment:
JICOFO_COMPONENT_SECRET: $$cap_password JICOFO_COMPONENT_SECRET: $$cap_password
JICOFO_AUTH_PASSWORD: $$cap_password JICOFO_AUTH_PASSWORD: $$cap_password
JVB_AUTH_PASSWORD: $$cap_password JVB_AUTH_PASSWORD: $$cap_password
JIGASI_XMPP_PASSWORD: $$cap_password JIGASI_XMPP_PASSWORD: $$cap_password
JIBRI_RECORDER_PASSWORD: $$cap_password JIBRI_RECORDER_PASSWORD: $$cap_password
JIBRI_XMPP_PASSWORD: $$cap_password JIBRI_XMPP_PASSWORD: $$cap_password
HTTP_PORT: $$cap_http_port HTTP_PORT: $$cap_http_port
HTTPS_PORT: $$cap_https_port HTTPS_PORT: $$cap_https_port
TZ: $$cap_timezone TZ: $$cap_timezone
XMPP_DOMAIN: meet.jitsi XMPP_DOMAIN: meet.jitsi
XMPP_SERVER: srv-captain--$$cap_appname-prosody XMPP_SERVER: srv-captain--$$cap_appname-prosody
XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280 XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280
XMPP_AUTH_DOMAIN: auth.meet.jitsi XMPP_AUTH_DOMAIN: auth.meet.jitsi
XMPP_MUC_DOMAIN: muc.meet.jitsi XMPP_MUC_DOMAIN: muc.meet.jitsi
XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi
XMPP_GUEST_DOMAIN: guest.meet.jitsi XMPP_GUEST_DOMAIN: guest.meet.jitsi
XMPP_MODULES: "" XMPP_MODULES: ''
XMPP_MUC_MODULES: "" XMPP_MUC_MODULES: ''
XMPP_INTERNAL_MUC_MODULES: "" XMPP_INTERNAL_MUC_MODULES: ''
JVB_BREWERY_MUC: jvbbrewery JVB_BREWERY_MUC: jvbbrewery
JVB_AUTH_USER: jvb JVB_AUTH_USER: jvb
JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443 JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443
JVB_PORT: $$cap_jvb_udp JVB_PORT: $$cap_jvb_udp
JVB_TCP_HARVESTER_DISABLED: "true" JVB_TCP_HARVESTER_DISABLED: 'true'
JVB_TCP_PORT: $$cap_jvb_tcp JVB_TCP_PORT: $$cap_jvb_tcp
JICOFO_AUTH_USER: focus JICOFO_AUTH_USER: focus
JIGASI_XMPP_USER: jigasi JIGASI_XMPP_USER: jigasi
JIGASI_BREWERY_MUC: jigasibrewery JIGASI_BREWERY_MUC: jigasibrewery
JIGASI_PORT_MIN: "20000" JIGASI_PORT_MIN: '20000'
JIGASI_PORT_MAX: "20050" JIGASI_PORT_MAX: '20050'
XMPP_RECORDER_DOMAIN: recorder.meet.jitsi XMPP_RECORDER_DOMAIN: recorder.meet.jitsi
JIBRI_RECORDER_USER: recorder JIBRI_RECORDER_USER: recorder
JIBRI_RECORDING_DIR: /config/recordings JIBRI_RECORDING_DIR: /config/recordings
JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh
JIBRI_XMPP_USER: jibri JIBRI_XMPP_USER: jibri
JIBRI_BREWERY_MUC: jibribrewery JIBRI_BREWERY_MUC: jibribrewery
JIBRI_PENDING_TIMEOUT: "90" JIBRI_PENDING_TIMEOUT: '90'
JIBRI_STRIP_DOMAIN_JID: muc JIBRI_STRIP_DOMAIN_JID: muc
JIBRI_LOGS_DIR: /config/logs JIBRI_LOGS_DIR: /config/logs
$$cap_appname-prosody: $$cap_appname-prosody:
image: jitsi/prosody:$$cap_tag_version image: jitsi/prosody:$$cap_tag_version
restart: unless-stopped restart: unless-stopped
expose: expose:
- "5222" - '5222'
- "5347" - '5347'
- "5280" - '5280'
volumes: volumes:
- $$cap_appname-prosody:/config - $$cap_appname-prosody:/config
environment: environment:
JICOFO_COMPONENT_SECRET: $$cap_password JICOFO_COMPONENT_SECRET: $$cap_password
JICOFO_AUTH_PASSWORD: $$cap_password JICOFO_AUTH_PASSWORD: $$cap_password
JVB_AUTH_PASSWORD: $$cap_password JVB_AUTH_PASSWORD: $$cap_password
JIGASI_XMPP_PASSWORD: $$cap_password JIGASI_XMPP_PASSWORD: $$cap_password
JIBRI_RECORDER_PASSWORD: $$cap_password JIBRI_RECORDER_PASSWORD: $$cap_password
JIBRI_XMPP_PASSWORD: $$cap_password JIBRI_XMPP_PASSWORD: $$cap_password
HTTP_PORT: $$cap_http_port HTTP_PORT: $$cap_http_port
HTTPS_PORT: $$cap_https_port HTTPS_PORT: $$cap_https_port
TZ: $$cap_timezone TZ: $$cap_timezone
XMPP_DOMAIN: meet.jitsi XMPP_DOMAIN: meet.jitsi
XMPP_SERVER: srv-captain--$$cap_appname-prosody XMPP_SERVER: srv-captain--$$cap_appname-prosody
XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280 XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280
XMPP_AUTH_DOMAIN: auth.meet.jitsi XMPP_AUTH_DOMAIN: auth.meet.jitsi
XMPP_MUC_DOMAIN: muc.meet.jitsi XMPP_MUC_DOMAIN: muc.meet.jitsi
XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi
XMPP_GUEST_DOMAIN: guest.meet.jitsi XMPP_GUEST_DOMAIN: guest.meet.jitsi
XMPP_MODULES: "" XMPP_MODULES: ''
XMPP_MUC_MODULES: "" XMPP_MUC_MODULES: ''
XMPP_INTERNAL_MUC_MODULES: "" XMPP_INTERNAL_MUC_MODULES: ''
JVB_BREWERY_MUC: jvbbrewery JVB_BREWERY_MUC: jvbbrewery
JVB_AUTH_USER: jvb JVB_AUTH_USER: jvb
JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443 JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443
JVB_PORT: $$cap_jvb_udp JVB_PORT: $$cap_jvb_udp
JVB_TCP_HARVESTER_DISABLED: "true" JVB_TCP_HARVESTER_DISABLED: 'true'
JVB_TCP_PORT: $$cap_jvb_tcp JVB_TCP_PORT: $$cap_jvb_tcp
JICOFO_AUTH_USER: focus JICOFO_AUTH_USER: focus
JIGASI_XMPP_USER: jigasi JIGASI_XMPP_USER: jigasi
JIGASI_BREWERY_MUC: jigasibrewery JIGASI_BREWERY_MUC: jigasibrewery
JIGASI_PORT_MIN: "20000" JIGASI_PORT_MIN: '20000'
JIGASI_PORT_MAX: "20050" JIGASI_PORT_MAX: '20050'
XMPP_RECORDER_DOMAIN: recorder.meet.jitsi XMPP_RECORDER_DOMAIN: recorder.meet.jitsi
JIBRI_RECORDER_USER: recorder JIBRI_RECORDER_USER: recorder
JIBRI_RECORDING_DIR: /config/recordings JIBRI_RECORDING_DIR: /config/recordings
JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh
JIBRI_XMPP_USER: jibri JIBRI_XMPP_USER: jibri
JIBRI_BREWERY_MUC: jibribrewery JIBRI_BREWERY_MUC: jibribrewery
JIBRI_PENDING_TIMEOUT: "90" JIBRI_PENDING_TIMEOUT: '90'
JIBRI_STRIP_DOMAIN_JID: muc JIBRI_STRIP_DOMAIN_JID: muc
JIBRI_LOGS_DIR: /config/logs JIBRI_LOGS_DIR: /config/logs
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-jicofo: $$cap_appname-jicofo:
image: jitsi/jicofo:$$cap_tag_version image: jitsi/jicofo:$$cap_tag_version
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- $$cap_appname-jicofo:/config - $$cap_appname-jicofo:/config
environment: environment:
JICOFO_COMPONENT_SECRET: $$cap_password JICOFO_COMPONENT_SECRET: $$cap_password
JICOFO_AUTH_PASSWORD: $$cap_password JICOFO_AUTH_PASSWORD: $$cap_password
JVB_AUTH_PASSWORD: $$cap_password JVB_AUTH_PASSWORD: $$cap_password
JIGASI_XMPP_PASSWORD: $$cap_password JIGASI_XMPP_PASSWORD: $$cap_password
JIBRI_RECORDER_PASSWORD: $$cap_password JIBRI_RECORDER_PASSWORD: $$cap_password
JIBRI_XMPP_PASSWORD: $$cap_password JIBRI_XMPP_PASSWORD: $$cap_password
HTTP_PORT: $$cap_http_port HTTP_PORT: $$cap_http_port
HTTPS_PORT: $$cap_https_port HTTPS_PORT: $$cap_https_port
TZ: $$cap_timezone TZ: $$cap_timezone
XMPP_DOMAIN: meet.jitsi XMPP_DOMAIN: meet.jitsi
XMPP_SERVER: srv-captain--$$cap_appname-prosody XMPP_SERVER: srv-captain--$$cap_appname-prosody
XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280 XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280
XMPP_AUTH_DOMAIN: auth.meet.jitsi XMPP_AUTH_DOMAIN: auth.meet.jitsi
XMPP_MUC_DOMAIN: muc.meet.jitsi XMPP_MUC_DOMAIN: muc.meet.jitsi
XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi
XMPP_GUEST_DOMAIN: guest.meet.jitsi XMPP_GUEST_DOMAIN: guest.meet.jitsi
XMPP_MODULES: "" XMPP_MODULES: ''
XMPP_MUC_MODULES: "" XMPP_MUC_MODULES: ''
XMPP_INTERNAL_MUC_MODULES: "" XMPP_INTERNAL_MUC_MODULES: ''
JVB_BREWERY_MUC: jvbbrewery JVB_BREWERY_MUC: jvbbrewery
JVB_AUTH_USER: jvb JVB_AUTH_USER: jvb
JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443 JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443
JVB_PORT: $$cap_jvb_udp JVB_PORT: $$cap_jvb_udp
JVB_TCP_HARVESTER_DISABLED: "true" JVB_TCP_HARVESTER_DISABLED: 'true'
JVB_TCP_PORT: $$cap_jvb_tcp JVB_TCP_PORT: $$cap_jvb_tcp
JICOFO_AUTH_USER: focus JICOFO_AUTH_USER: focus
JIGASI_XMPP_USER: jigasi JIGASI_XMPP_USER: jigasi
JIGASI_BREWERY_MUC: jigasibrewery JIGASI_BREWERY_MUC: jigasibrewery
JIGASI_PORT_MIN: "20000" JIGASI_PORT_MIN: '20000'
JIGASI_PORT_MAX: "20050" JIGASI_PORT_MAX: '20050'
XMPP_RECORDER_DOMAIN: recorder.meet.jitsi XMPP_RECORDER_DOMAIN: recorder.meet.jitsi
JIBRI_RECORDER_USER: recorder JIBRI_RECORDER_USER: recorder
JIBRI_RECORDING_DIR: /config/recordings JIBRI_RECORDING_DIR: /config/recordings
JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh
JIBRI_XMPP_USER: jibri JIBRI_XMPP_USER: jibri
JIBRI_BREWERY_MUC: jibribrewery JIBRI_BREWERY_MUC: jibribrewery
JIBRI_PENDING_TIMEOUT: "90" JIBRI_PENDING_TIMEOUT: '90'
JIBRI_STRIP_DOMAIN_JID: muc JIBRI_STRIP_DOMAIN_JID: muc
JIBRI_LOGS_DIR: /config/logs JIBRI_LOGS_DIR: /config/logs
depends_on: depends_on:
- $$cap_appname-prosody - $$cap_appname-prosody
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-jvb: $$cap_appname-jvb:
image: jitsi/jvb:$$cap_tag_version image: jitsi/jvb:$$cap_tag_version
restart: unless-stopped restart: unless-stopped
ports: ports:
- $$cap_jvb_udp:$$cap_jvb_udp - $$cap_jvb_udp:$$cap_jvb_udp
- $$cap_jvb_tcp:$$cap_jvb_tcp - $$cap_jvb_tcp:$$cap_jvb_tcp
volumes: volumes:
- $$cap_appname-jvb:/config - $$cap_appname-jvb:/config
environment: environment:
JICOFO_COMPONENT_SECRET: $$cap_password JICOFO_COMPONENT_SECRET: $$cap_password
JICOFO_AUTH_PASSWORD: $$cap_password JICOFO_AUTH_PASSWORD: $$cap_password
JVB_AUTH_PASSWORD: $$cap_password JVB_AUTH_PASSWORD: $$cap_password
JIGASI_XMPP_PASSWORD: $$cap_password JIGASI_XMPP_PASSWORD: $$cap_password
JIBRI_RECORDER_PASSWORD: $$cap_password JIBRI_RECORDER_PASSWORD: $$cap_password
JIBRI_XMPP_PASSWORD: $$cap_password JIBRI_XMPP_PASSWORD: $$cap_password
HTTP_PORT: $$cap_http_port HTTP_PORT: $$cap_http_port
HTTPS_PORT: $$cap_https_port HTTPS_PORT: $$cap_https_port
TZ: $$cap_timezone TZ: $$cap_timezone
XMPP_DOMAIN: meet.jitsi XMPP_DOMAIN: meet.jitsi
XMPP_SERVER: srv-captain--$$cap_appname-prosody XMPP_SERVER: srv-captain--$$cap_appname-prosody
XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280 XMPP_BOSH_URL_BASE: http://srv-captain--$$cap_appname-prosody:5280
XMPP_AUTH_DOMAIN: auth.meet.jitsi XMPP_AUTH_DOMAIN: auth.meet.jitsi
XMPP_MUC_DOMAIN: muc.meet.jitsi XMPP_MUC_DOMAIN: muc.meet.jitsi
XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi XMPP_INTERNAL_MUC_DOMAIN: internal-muc.meet.jitsi
XMPP_GUEST_DOMAIN: guest.meet.jitsi XMPP_GUEST_DOMAIN: guest.meet.jitsi
XMPP_MODULES: "" XMPP_MODULES: ''
XMPP_MUC_MODULES: "" XMPP_MUC_MODULES: ''
XMPP_INTERNAL_MUC_MODULES: "" XMPP_INTERNAL_MUC_MODULES: ''
JVB_BREWERY_MUC: jvbbrewery JVB_BREWERY_MUC: jvbbrewery
JVB_AUTH_USER: jvb JVB_AUTH_USER: jvb
JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443 JVB_STUN_SERVERS: meet-jit-si-turnrelay.jitsi.net:443
JVB_PORT: $$cap_jvb_udp JVB_PORT: $$cap_jvb_udp
JVB_TCP_HARVESTER_DISABLED: "true" JVB_TCP_HARVESTER_DISABLED: 'true'
JVB_TCP_PORT: $$cap_jvb_tcp JVB_TCP_PORT: $$cap_jvb_tcp
JICOFO_AUTH_USER: focus JICOFO_AUTH_USER: focus
JIGASI_XMPP_USER: jigasi JIGASI_XMPP_USER: jigasi
JIGASI_BREWERY_MUC: jigasibrewery JIGASI_BREWERY_MUC: jigasibrewery
JIGASI_PORT_MIN: "20000" JIGASI_PORT_MIN: '20000'
JIGASI_PORT_MAX: "20050" JIGASI_PORT_MAX: '20050'
XMPP_RECORDER_DOMAIN: recorder.meet.jitsi XMPP_RECORDER_DOMAIN: recorder.meet.jitsi
JIBRI_RECORDER_USER: recorder JIBRI_RECORDER_USER: recorder
JIBRI_RECORDING_DIR: /config/recordings JIBRI_RECORDING_DIR: /config/recordings
JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: /config/finalize.sh
JIBRI_XMPP_USER: jibri JIBRI_XMPP_USER: jibri
JIBRI_BREWERY_MUC: jibribrewery JIBRI_BREWERY_MUC: jibribrewery
JIBRI_PENDING_TIMEOUT: "90" JIBRI_PENDING_TIMEOUT: '90'
JIBRI_STRIP_DOMAIN_JID: muc JIBRI_STRIP_DOMAIN_JID: muc
JIBRI_LOGS_DIR: /config/logs JIBRI_LOGS_DIR: /config/logs
depends_on: depends_on:
- $$cap_appname-prosody - $$cap_appname-prosody
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Docker tag version - label: Docker tag version
description: "You can check the version in Docker Hub: description: 'You can check the version in Docker Hub:
https://hub.docker.com/r/jitsi/web/tags" https://hub.docker.com/r/jitsi/web/tags'
defaultValue: "4416" defaultValue: '4416'
id: $$cap_tag_version id: $$cap_tag_version
- label: HTTP Port - label: HTTP Port
description: This is the HTTP port to access Jitsi description: This is the HTTP port to access Jitsi
defaultValue: "8000" defaultValue: '8000'
id: $$cap_http_port id: $$cap_http_port
- label: HTTPS Port - label: HTTPS Port
description: This is the HTTPS port to access Jitsi description: This is the HTTPS port to access Jitsi
defaultValue: "8443" defaultValue: '8443'
id: $$cap_https_port id: $$cap_https_port
- label: Timezone - label: Timezone
description: This is the timezone for Jitsi description: This is the timezone for Jitsi
defaultValue: Europe/Amsterdam defaultValue: Europe/Amsterdam
id: $$cap_timezone id: $$cap_timezone
- label: JVB TCP Port - label: JVB TCP Port
description: TCP Port for JVB service description: TCP Port for JVB service
defaultValue: "4443" defaultValue: '4443'
id: $$cap_jvb_tcp id: $$cap_jvb_tcp
- label: JVB UDP Port - label: JVB UDP Port
description: UDP Port for JVB service description: UDP Port for JVB service
defaultValue: "10000" defaultValue: '10000'
id: $$cap_jvb_udp id: $$cap_jvb_udp
- label: Password - label: Password
description: This is the password for Jitsi's services description: This is the password for Jitsi's services
defaultValue: pass defaultValue: pass
id: $$cap_password id: $$cap_password
instructions: instructions:
end: Containers were created successfully. You should wait for a few minutes end:
before enter to Jitsi Web. Containers were created successfully. You should wait for a few minutes
start: This one click app is based on Jitsi docker image. before enter to Jitsi Web.
displayName: Jitsi start: This one click app is based on Jitsi docker image.
isOfficial: true displayName: Jitsi
description: Free open-source video conferencing for web & mobile isOfficial: true
documentation: https://github.com/jitsi/docker-jitsi-meet description: Free open-source video conferencing for web & mobile
documentation: https://github.com/jitsi/docker-jitsi-meet

View File

@ -1,56 +1,57 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-joomla: $$cap_appname-joomla:
image: joomla:$$cap_joomla_version image: joomla:$$cap_joomla_version
volumes: volumes:
- $$cap_appname-joomla-data:/var/www/html - $$cap_appname-joomla-data:/var/www/html
restart: always restart: always
environment: environment:
JOOMLA_DB_HOST: $$cap_db_host:3306 JOOMLA_DB_HOST: $$cap_db_host:3306
JOOMLA_DB_NAME: $$cap_db_name JOOMLA_DB_NAME: $$cap_db_name
JOOMLA_DB_USER: $$cap_db_user JOOMLA_DB_USER: $$cap_db_user
JOOMLA_DB_PASSWORD: $$cap_db_pass JOOMLA_DB_PASSWORD: $$cap_db_pass
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- description: Database Host - description: Database Host
defaultValue: srv-captain--xxx defaultValue: srv-captain--xxx
id: $$cap_db_host id: $$cap_db_host
label: Database Host label: Database Host
- description: Database Name - description: Database Name
defaultValue: joomla defaultValue: joomla
id: $$cap_db_name id: $$cap_db_name
label: DB Name label: DB Name
- id: $$cap_db_user - id: $$cap_db_user
label: Database User label: Database User
defaultValue: joomla defaultValue: joomla
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database Password label: Database Password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_joomla_version - id: $$cap_joomla_version
label: Joomla Version label: Joomla Version
defaultValue: php7.3-apache defaultValue: php7.3-apache
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/joomla?tab=tags https://hub.docker.com/_/joomla?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
Joomla! is one of world's most popular software packages. It is used to Joomla! is one of world's most popular software packages. It is used to
build, organise, manage and publish content for small businesses, build, organise, manage and publish content for small businesses,
governments, non-profits and large organisations worldwide. governments, non-profits and large organisations worldwide.
Enter your Joomla Configuration parameters and click on next. A Joomla container will be created for you. The process will take about a minute for the process to finish. Enter your Joomla Configuration parameters and click on next. A Joomla container will be created for you. The process will take about a minute for the process to finish.
Note: This app is intended for advanced users who'd like to have a central DB in a single container for multiple instances. You should start by configuring your DB first and then comeback with all the DB Information. Note: This app is intended for advanced users who'd like to have a central DB in a single container for multiple instances. You should start by configuring your DB first and then comeback with all the DB Information.
end: >- end: >-
Joomla is deployed and available as $$cap_appname-joomla . Joomla is deployed and available as $$cap_appname-joomla .
IMPORTANT: It will take up to 2 minutes for Joomla to be ready. Before that, you might see a 502 error page. IMPORTANT: It will take up to 2 minutes for Joomla to be ready. Before that, you might see a 502 error page.
Remember that this app will not create a Database by itself. You need to provide all that information. Remember that this app will not create a Database by itself. You need to provide all that information.
displayName: Joomla - No Database displayName: Joomla - No Database
isOfficial: true isOfficial: true
description: This will create a Joomla only. You will need to create and description: This will create a Joomla only. You will need to create and
configure the database information manually. Intended for advanced users. configure the database information manually. Intended for advanced users.
documentation: Taken from https://hub.docker.com/_/joomla?tab=description. Based documentation:
on Wordpress - No Database template. Taken from https://hub.docker.com/_/joomla?tab=description. Based
on Wordpress - No Database template.

View File

@ -1,43 +1,44 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: jsreport/jsreport:$$cap_jsreport_version image: jsreport/jsreport:$$cap_jsreport_version
volumes: volumes:
- $$cap_appname-data:/jsreport - $$cap_appname-data:/jsreport
restart: always restart: always
environment: environment:
extensions_authentication_admin_username: $$cap_jsreport_adminusername extensions_authentication_admin_username: $$cap_jsreport_adminusername
extensions_authentication_admin_password: $$cap_jsreport_password extensions_authentication_admin_password: $$cap_jsreport_password
extensions_authentication_cookieSession_secret: $$cap_jsreport_secret extensions_authentication_cookieSession_secret: $$cap_jsreport_secret
caproverExtra: caproverExtra:
containerHttpPort: "5488" containerHttpPort: '5488'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_jsreport_version - id: $$cap_jsreport_version
label: version label: version
defaultValue: 2.4.0-full defaultValue: 2.4.0-full
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/jsreport/jsreport/tags https://hub.docker.com/r/jsreport/jsreport/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_jsreport_adminusername - id: $$cap_jsreport_adminusername
label: Admin user name label: Admin user name
defaultValue: admin defaultValue: admin
description: Only use alphanumeric chars. description: Only use alphanumeric chars.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_jsreport_password - id: $$cap_jsreport_password
label: Admin password label: Admin password
validRegex: /^\s*\S.*$/ validRegex: /^\s*\S.*$/
- id: $$cap_jsreport_secret - id: $$cap_jsreport_secret
label: Session secret label: Session secret
defaultValue: long-secret defaultValue: long-secret
validRegex: /^\s*\S.*$/ validRegex: /^\s*\S.*$/
instructions: instructions:
start: Reporting tools for creating PDF, HTMLS, Excel by converting your HTML + start:
CSS + Javascript knowledge. Reporting tools for creating PDF, HTMLS, Excel by converting your HTML +
end: Congratulations! You have the new jsReport instance running. Happy CSS + Javascript knowledge.
reporting! end: Congratulations! You have the new jsReport instance running. Happy
displayName: "" reporting!
isOfficial: true displayName: ''
description: jsreport is an open source reporting platform where reports are isOfficial: true
designed using popular javascript templating engines description: jsreport is an open source reporting platform where reports are
documentation: Taken from https://hub.docker.com/r/jsreport/jsreport/ designed using popular javascript templating engines
documentation: Taken from https://hub.docker.com/r/jsreport/jsreport/

View File

@ -1,36 +1,37 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
restart: always restart: always
environment: environment:
JUPYTER_ENABLE_LAB: yes JUPYTER_ENABLE_LAB: yes
volumes: volumes:
- $$cap_appname:/home/jovyan/ - $$cap_appname:/home/jovyan/
caproverExtra: caproverExtra:
containerHttpPort: "8888" containerHttpPort: '8888'
dockerfileLines: dockerfileLines:
- FROM jupyter/datascience-notebook:9f9e5ca8fe5a - FROM jupyter/datascience-notebook:9f9e5ca8fe5a
- RUN pip install lxml - RUN pip install lxml
- RUN jupyter notebook --generate-config - RUN jupyter notebook --generate-config
- RUN echo 'c.NotebookApp.token = "$$cap_jupyter_default_token"' >> - RUN echo 'c.NotebookApp.token = "$$cap_jupyter_default_token"' >>
/home/jovyan/.jupyter/jupyter_notebook_config.py /home/jovyan/.jupyter/jupyter_notebook_config.py
- EXPOSE 8888 - EXPOSE 8888
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_jupyter_default_token - id: $$cap_jupyter_default_token
label: Jupyter default token label: Jupyter default token
description: The default login token allows you to set a password within the description:
application. For better experience leave empty and enable basic auth The default login token allows you to set a password within the
within the CaprRover dashboard. application. For better experience leave empty and enable basic auth
instructions: within the CaprRover dashboard.
start: JupyterLab is the next-generation user interface for Project Jupyter. instructions:
end: >- start: JupyterLab is the next-generation user interface for Project Jupyter.
JupyterLab server is deployed and is available as $$cap_appname. end: >-
JupyterLab server is deployed and is available as $$cap_appname.
IMPORTANT: Make sure to enable websocket capability in the app config on CapRover dashboard! IMPORTANT: Make sure to enable websocket capability in the app config on CapRover dashboard!
displayName: JupyterLab displayName: JupyterLab
isOfficial: true isOfficial: true
description: JupyterLab is the next-generation user interface for Project description: JupyterLab is the next-generation user interface for Project
Jupyter. It offers all the familiar building blocks of the classic Jupyter Jupyter. It offers all the familiar building blocks of the classic Jupyter
Notebook in a flexible and powerful user interface. Notebook in a flexible and powerful user interface.
documentation: "Read more at: https://jupyter-docker-stacks.readthedocs.io/" documentation: 'Read more at: https://jupyter-docker-stacks.readthedocs.io/'

View File

@ -1,80 +1,83 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: keycloak POSTGRES_USER: keycloak
POSTGRES_PASSWORD: $$cap_pg_pass POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: keycloak POSTGRES_DB: keycloak
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: jboss/keycloak:$$cap_keycloak_version image: jboss/keycloak:$$cap_keycloak_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
restart: always restart: always
environment: environment:
DB_VENDOR: postgres DB_VENDOR: postgres
DB_ADDR: srv-captain--$$cap_appname-db DB_ADDR: srv-captain--$$cap_appname-db
POSTGRES_DB: keycloak POSTGRES_DB: keycloak
DB_USER: keycloak DB_USER: keycloak
DB_PASSWORD: $$cap_pg_pass DB_PASSWORD: $$cap_pg_pass
KEYCLOAK_USER: $$cap_keycloak_user KEYCLOAK_USER: $$cap_keycloak_user
KEYCLOAK_PASSWORD: $$cap_keycloak_password KEYCLOAK_PASSWORD: $$cap_keycloak_password
PROXY_ADDRESS_FORWARDING: "true" PROXY_ADDRESS_FORWARDING: 'true'
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
defaultValue: "9.6" defaultValue: '9.6'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_keycloak_version - id: $$cap_keycloak_version
label: Keycloak Version label: Keycloak Version
defaultValue: 6.0.1 defaultValue: 6.0.1
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/jboss/keycloak/tags https://hub.docker.com/r/jboss/keycloak/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_pg_pass - id: $$cap_pg_pass
label: Postgres Password label: Postgres Password
description: "Password strength requeriments: Should contain at least one digit, description:
one lower case, one upper case and at least 12 from the mentioned 'Password strength requeriments: Should contain at least one digit,
characters." one lower case, one upper case and at least 12 from the mentioned
validRegex: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{12,}$/ characters.'
- id: $$cap_keycloak_user validRegex: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{12,}$/
label: Keycloak user - id: $$cap_keycloak_user
description: "" label: Keycloak user
validRegex: /.{1,}/ description: ''
- id: $$cap_keycloak_password validRegex: /.{1,}/
label: Keycloak password - id: $$cap_keycloak_password
description: "Password strength requeriments: Should contain at least one digit, label: Keycloak password
one lower case, one upper case and at least 12 from the mentioned description:
characters." 'Password strength requeriments: Should contain at least one digit,
validRegex: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{12,}$/ one lower case, one upper case and at least 12 from the mentioned
instructions: characters.'
start: >- validRegex: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{12,}$/
Keycloak is an Open Source Identity and Access Management solution for instructions:
modern Applications and Services. It makes it easy to secure applications start: >-
and services with little to no code. Keycloak is an Open Source Identity and Access Management solution for
modern Applications and Services. It makes it easy to secure applications
and services with little to no code.
For documentation, see: https://www.keycloak.org/documentation.html For documentation, see: https://www.keycloak.org/documentation.html
For source code, see: https://github.com/keycloak/keycloak For source code, see: https://github.com/keycloak/keycloak
For docker image, see: https://hub.docker.com/r/jboss/keycloak For docker image, see: https://hub.docker.com/r/jboss/keycloak
Enter your Keycloak Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your Keycloak Configuration parameters and click on next. It will take about a minute for the process to finish.
end: Keycloak is deployed and available as srv-captain--$$cap_appname:8080 to end:
other apps Keycloak is deployed and available as srv-captain--$$cap_appname:8080 to
displayName: "" other apps
isOfficial: true displayName: ''
description: Keycloak is an open source identity and access management solution isOfficial: true
documentation: Taken from description: Keycloak is an open source identity and access management solution
https://github.com/jboss-dockerfiles/keycloak/blob/master/server/README.md documentation: Taken from
https://github.com/jboss-dockerfiles/keycloak/blob/master/server/README.md

View File

@ -1,46 +1,49 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
environment: environment:
SERVER_NAME: $$cap_appname SERVER_NAME: $$cap_appname
KIBANA_DEFAULTAPPID: $$cap_KIBANA_DEFAULTAPPID KIBANA_DEFAULTAPPID: $$cap_KIBANA_DEFAULTAPPID
MONITORING_ENABLED: $$cap_MONITORING_ENABLED MONITORING_ENABLED: $$cap_MONITORING_ENABLED
ELASTICSEARCH_HOSTS: $$cap_ELASTICSEARCH_HOSTS ELASTICSEARCH_HOSTS: $$cap_ELASTICSEARCH_HOSTS
image: docker.elastic.co/kibana/kibana:$$cap_version image: docker.elastic.co/kibana/kibana:$$cap_version
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "5601" containerHttpPort: '5601'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Kibana version - label: Kibana version
defaultValue: 7.8.0 defaultValue: 7.8.0
description: It's highly recommended that you don't use the latest tag but description:
instead the major version you need. It's highly recommended that you don't use the latest tag but
id: $$cap_version instead the major version you need.
- label: Default App id id: $$cap_version
defaultValue: home - label: Default App id
description: The default app that is loaded when you visit Kibana. Defaults to home defaultValue: home
id: $$cap_KIBANA_DEFAULTAPPID description: The default app that is loaded when you visit Kibana. Defaults to home
- label: MONITORING_ENABLED id: $$cap_KIBANA_DEFAULTAPPID
description: Enable kibana monitoring features? - label: MONITORING_ENABLED
defaultValue: "true" description: Enable kibana monitoring features?
id: $$cap_MONITORING_ENABLED defaultValue: 'true'
- label: ELASTICSEARCH_HOSTS id: $$cap_MONITORING_ENABLED
description: URL of the elasticsearch hosts to use. Please include the http or - label: ELASTICSEARCH_HOSTS
https in the urls. eg. http://srv-captain--elastic description:
id: $$cap_ELASTICSEARCH_HOSTS URL of the elasticsearch hosts to use. Please include the http or
instructions: https in the urls. eg. http://srv-captain--elastic
end: >- id: $$cap_ELASTICSEARCH_HOSTS
That's it! If you get a 502 it might mean that kibana cannot find your instructions:
elasticsearch instance. Please recheck your configs end: >-
That's it! If you get a 502 it might mean that kibana cannot find your
elasticsearch instance. Please recheck your configs
. Ensure basic auth is enabled so your data is not publicly available. . Ensure basic auth is enabled so your data is not publicly available.
start: >- start: >-
Provide the ELASTICSEARCH_HOSTS so that kibana can find your elasticsearch Provide the ELASTICSEARCH_HOSTS so that kibana can find your elasticsearch
instance. be sure to include the http:// protocol in the url. instance. be sure to include the http:// protocol in the url.
Note that Kibana does not have persistent volumes as all data is stored in the elasticsearch instance itself. Note that Kibana does not have persistent volumes as all data is stored in the elasticsearch instance itself.
displayName: kibana displayName: kibana
isOfficial: true isOfficial: true
description: Kibana is a free and open user interface that lets you visualize description:
your Elasticsearch data and navigate the Elastic Stack. Kibana is a free and open user interface that lets you visualize
documentation: https://www.elastic.co/guide/en/kibana/current/docker.html your Elasticsearch data and navigate the Elastic Stack.
documentation: https://www.elastic.co/guide/en/kibana/current/docker.html

View File

@ -1,46 +1,47 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-mysql: $$cap_appname-mysql:
volumes: volumes:
- $$cap_appname-mysql-data:/var/lib/mysql - $$cap_appname-mysql-data:/var/lib/mysql
environment: environment:
MYSQL_DATABASE: leantime MYSQL_DATABASE: leantime
MYSQL_ROOT_PASSWORD: $$cap_mysql_passwd MYSQL_ROOT_PASSWORD: $$cap_mysql_passwd
MYSQL_USER: leantimeuser MYSQL_USER: leantimeuser
MYSQL_PASSWORD: $$cap_mysql_passwd MYSQL_PASSWORD: $$cap_mysql_passwd
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM mysql:5.7 - FROM mysql:5.7
- CMD ["--character-set-server=utf8", - CMD ["--character-set-server=utf8",
"--collation-server=utf8_unicode_ci"] "--collation-server=utf8_unicode_ci"]
$$cap_appname: $$cap_appname:
image: leantime/leantime:$$cap_leantime_ver image: leantime/leantime:$$cap_leantime_ver
container_name: leantime container_name: leantime
environment: environment:
LEAN_APP_URL: https://$$cap_appname.$$cap_root_domain LEAN_APP_URL: https://$$cap_appname.$$cap_root_domain
LEAN_DB_HOST: srv-captain--$$cap_appname-mysql LEAN_DB_HOST: srv-captain--$$cap_appname-mysql
LEAN_DB_USER: leantimeuser LEAN_DB_USER: leantimeuser
LEAN_DB_PASSWORD: $$cap_mysql_passwd LEAN_DB_PASSWORD: $$cap_mysql_passwd
LEAN_DB_DATABASE: leantime LEAN_DB_DATABASE: leantime
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- description: User password for the database instance. - description: User password for the database instance.
defaultValue: N2cQ4J9VzsfvXwzM defaultValue: N2cQ4J9VzsfvXwzM
id: $$cap_mysql_passwd id: $$cap_mysql_passwd
label: MySQL User Password label: MySQL User Password
validRegex: /^(?=.*\d).{10,}$/ validRegex: /^(?=.*\d).{10,}$/
- defaultValue: 2.1.4 - defaultValue: 2.1.4
id: $$cap_leantime_ver id: $$cap_leantime_ver
label: Leantime Version label: Leantime Version
validRegex: /.+/ validRegex: /.+/
instructions: instructions:
start: >- start: >-
Leantime is a lean project management system for innovators. Designed to Leantime is a lean project management system for innovators. Designed to
help you manage your projects from ideation to delivery. help you manage your projects from ideation to delivery.
See more details here: https://leantime.io See more details here: https://leantime.io
end: Leantime is deployed as available as $$cap_appname! You MUST ENABLE HTTPS end:
before accessing the panel. Leantime is deployed as available as $$cap_appname! You MUST ENABLE HTTPS
displayName: Leantime before accessing the panel.
isOfficial: true displayName: Leantime
description: Open source project management for small teams isOfficial: true
documentation: https://github.com/Leantime/docker-leantime/blob/master/docker-compose.yml description: Open source project management for small teams
documentation: https://github.com/Leantime/docker-leantime/blob/master/docker-compose.yml

View File

@ -1,68 +1,68 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
documentation: Taken from https://hub.docker.com/_/mariadb documentation: Taken from https://hub.docker.com/_/mariadb
image: mariadb:$$cap_mariadb_version image: mariadb:$$cap_mariadb_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: $$cap_db_name MYSQL_DATABASE: $$cap_db_name
MYSQL_USER: $$cap_db_user MYSQL_USER: $$cap_db_user
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
documentation: Taken from https://registry.hub.docker.com/r/crramirez/limesurvey documentation: Taken from https://registry.hub.docker.com/r/crramirez/limesurvey
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
image: crramirez/limesurvey:$$cap_limesurvey_version image: crramirez/limesurvey:$$cap_limesurvey_version
volumes: volumes:
- $$cap_appname-data:/app/upload - $$cap_appname-data:/app/upload
restart: always restart: always
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_limesurvey_version - id: $$cap_limesurvey_version
label: Limesurvey Version label: Limesurvey Version
defaultValue: "3" defaultValue: '3'
description: https://registry.hub.docker.com/r/crramirez/limesurvey/tags description: https://registry.hub.docker.com/r/crramirez/limesurvey/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb_version - id: $$cap_mariadb_version
label: MariaDB (database) version label: MariaDB (database) version
defaultValue: 10.5.3 defaultValue: 10.5.3
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: database password label: database password
description: Password for the database user and root using mysql. description: Password for the database user and root using mysql.
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_db_name - id: $$cap_db_name
label: database name label: database name
defaultValue: limesurvey defaultValue: limesurvey
description: name for the database. description: name for the database.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_db_user - id: $$cap_db_user
label: database user label: database user
defaultValue: limesurvey defaultValue: limesurvey
description: Username for the database using mysql. description: Username for the database using mysql.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
instructions: instructions:
start: |- start: |-
Limesurvey is an open source online survey tool. Limesurvey is an open source online survey tool.
The process will deploy a database and the App. The process will deploy a database and the App.
The process will take about a minute for the process to finish. The process will take about a minute for the process to finish.
end: >- end: >-
Limesurvey is deployed and available as $$cap_appname. Limesurvey is deployed and available as $$cap_appname.
Please use srv-captain--$$cap_appname-db as database host on your online configuration. Please use srv-captain--$$cap_appname-db as database host on your online configuration.
$$cap_db_user as user name $$cap_db_user as user name
$$cap_db_pass as password $$cap_db_pass as password
$$cap_db_name as database name $$cap_db_name as database name
displayName: Limesurvey displayName: Limesurvey
description: Limesurvey is an open source online survey tool. description: Limesurvey is an open source online survey tool.

View File

@ -1,113 +1,116 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mariadb:$$cap_mariadb_version image: mariadb:$$cap_mariadb_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_mariadb_password MYSQL_ROOT_PASSWORD: $$cap_mariadb_password
MYSQL_DATABASE: mailtrain MYSQL_DATABASE: mailtrain
MYSQL_USER: mailtrain MYSQL_USER: mailtrain
MYSQL_PASSWORD: $$cap_mariadb_password MYSQL_PASSWORD: $$cap_mariadb_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-redis: $$cap_appname-redis:
image: redis:$$cap_redis_version image: redis:$$cap_redis_version
volumes: volumes:
- $$cap_appname-redis-data:/data - $$cap_appname-redis-data:/data
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-mongo: $$cap_appname-mongo:
image: mongo:$$cap_mongo_version image: mongo:$$cap_mongo_version
volumes: volumes:
- $$cap_appname-mongo-data:/data/db - $$cap_appname-mongo-data:/data/db
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: mailtrain/mailtrain:$$cap_mailtrain_version image: mailtrain/mailtrain:$$cap_mailtrain_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
- $$cap_appname-redis - $$cap_appname-redis
- $$cap_appname-mongo - $$cap_appname-mongo
volumes: volumes:
- $$cap_appname-files:/app/server/files - $$cap_appname-files:/app/server/files
environment: environment:
URL_BASE_TRUSTED: https://$$cap_appname.$$cap_root_domain URL_BASE_TRUSTED: https://$$cap_appname.$$cap_root_domain
URL_BASE_SANDBOX: https://$$cap_appname-$$cap_mailtrain_sandbox-appname.$$cap_root_domain URL_BASE_SANDBOX: https://$$cap_appname-$$cap_mailtrain_sandbox-appname.$$cap_root_domain
URL_BASE_PUBLIC: https://$$cap_appname-$$cap_mailtrain_lists-appname.$$cap_root_domain URL_BASE_PUBLIC: https://$$cap_appname-$$cap_mailtrain_lists-appname.$$cap_root_domain
WWW_PROXY: true WWW_PROXY: true
MONGO_HOST: srv-captain--$$cap_appname-mongo MONGO_HOST: srv-captain--$$cap_appname-mongo
REDIS_HOST: srv-captain--$$cap_appname-redis REDIS_HOST: srv-captain--$$cap_appname-redis
MYSQL_HOST: srv-captain--$$cap_appname-db MYSQL_HOST: srv-captain--$$cap_appname-db
MYSQL_PASSWORD: $$cap_mariadb_password MYSQL_PASSWORD: $$cap_mariadb_password
caproverExtra: caproverExtra:
containerHttpPort: "3000" containerHttpPort: '3000'
$$cap_appname-$$cap_mailtrain_sandbox-appname: $$cap_appname-$$cap_mailtrain_sandbox-appname:
image: caprover/nginx-reverse-proxy@sha256:6bdb54abf8c3010126a532ecd6f457a1d09bdd708c40693c5762e93fe77817aa image: caprover/nginx-reverse-proxy@sha256:6bdb54abf8c3010126a532ecd6f457a1d09bdd708c40693c5762e93fe77817aa
restart: always restart: always
depends_on: depends_on:
- $$cap_appname - $$cap_appname
environment: environment:
UPSTREAM_HTTP_ADDRESS: http://srv-captain--$$cap_appname:3003 UPSTREAM_HTTP_ADDRESS: http://srv-captain--$$cap_appname:3003
$$cap_appname-$$cap_mailtrain_lists-appname: $$cap_appname-$$cap_mailtrain_lists-appname:
image: caprover/nginx-reverse-proxy@sha256:6bdb54abf8c3010126a532ecd6f457a1d09bdd708c40693c5762e93fe77817aa image: caprover/nginx-reverse-proxy@sha256:6bdb54abf8c3010126a532ecd6f457a1d09bdd708c40693c5762e93fe77817aa
restart: always restart: always
depends_on: depends_on:
- $$cap_appname - $$cap_appname
environment: environment:
UPSTREAM_HTTP_ADDRESS: http://srv-captain--$$cap_appname:3004 UPSTREAM_HTTP_ADDRESS: http://srv-captain--$$cap_appname:3004
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mariadb_version - id: $$cap_mariadb_version
label: Mariadb Version label: Mariadb Version
defaultValue: 10.5.4 defaultValue: 10.5.4
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb_password - id: $$cap_mariadb_password
label: Mariadb User password label: Mariadb User password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_redis_version - id: $$cap_redis_version
label: Redis Version label: Redis Version
defaultValue: alpine3.12 defaultValue: alpine3.12
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/redis?tab=tags https://hub.docker.com/_/redis?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mongo_version - id: $$cap_mongo_version
label: Mongo Version label: Mongo Version
defaultValue: 4.4.0-rc11 defaultValue: 4.4.0-rc11
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mongo?tab=tags https://hub.docker.com/_/mongo?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mailtrain_version - id: $$cap_mailtrain_version
label: Mailtrain Version label: Mailtrain Version
defaultValue: latest defaultValue: latest
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/mailtrain/mailtrain/tags https://hub.docker.com/r/mailtrain/mailtrain/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mailtrain_sandbox-appname - id: $$cap_mailtrain_sandbox-appname
label: Sandbox Mailtrain App Name label: Sandbox Mailtrain App Name
defaultValue: sdbx defaultValue: sdbx
description: "" description: ''
validRegex: /^[a-z]{1,}$/ validRegex: /^[a-z]{1,}$/
- id: $$cap_mailtrain_lists-appname - id: $$cap_mailtrain_lists-appname
label: Public Mailtrain App Name label: Public Mailtrain App Name
defaultValue: lists defaultValue: lists
description: "" description: ''
validRegex: /^[a-z]{1,}$/ validRegex: /^[a-z]{1,}$/
instructions: instructions:
start: Mailtrain is a self hosted newsletter application built on Node.js (v10+) start:
and MySQL (v8+) or MariaDB (v10+). Mailtrain is a self hosted newsletter application built on Node.js (v10+)
end: You can connect to http://$$cap_appname.$$cap_root_domain with the user and MySQL (v8+) or MariaDB (v10+).
admin and password test. Do not forget to update it with something more end:
secure. You can connect to http://$$cap_appname.$$cap_root_domain with the user
displayName: Mailtrain V2(Beta) admin and password test. Do not forget to update it with something more
isOfficial: true secure.
description: Mailtrain is a self hosted newsletter application built on Node.js displayName: Mailtrain V2(Beta)
(v10+) and MySQL (v8+) or MariaDB (v10+). isOfficial: true
documentation: Taken from description:
https://github.com/Mailtrain-org/mailtrain/blob/development/docker-compose.yml Mailtrain is a self hosted newsletter application built on Node.js
(v10+) and MySQL (v8+) or MariaDB (v10+).
documentation: Taken from
https://github.com/Mailtrain-org/mailtrain/blob/development/docker-compose.yml

View File

@ -1,61 +1,64 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM mariadb:$$cap_mysql_version - FROM mariadb:$$cap_mysql_version
- CMD ["--character-set-server=$$cap_charset", - CMD ["--character-set-server=$$cap_charset",
"--collation-server=$$cap_collation", "--collation-server=$$cap_collation",
"--skip-character-set-client-handshake"] "--skip-character-set-client-handshake"]
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mysql_version - id: $$cap_mysql_version
label: MariaDB Version label: MariaDB Version
defaultValue: "10.4" defaultValue: '10.4'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: MariaDB Root password label: MariaDB Root password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_charset - id: $$cap_charset
label: Default server character set label: Default server character set
description: See the MariaDB website for supported character sets description: See the MariaDB website for supported character sets
(https://mariadb.com/kb/en/library/supported-character-sets-and-collations/#character-sets) (https://mariadb.com/kb/en/library/supported-character-sets-and-collations/#character-sets)
defaultValue: utf8mb4 defaultValue: utf8mb4
- id: $$cap_collation - id: $$cap_collation
label: Default server collation label: Default server collation
description: See the MariaDB website for supported collations description: See the MariaDB website for supported collations
(https://mariadb.com/kb/en/library/supported-character-sets-and-collations/#collations) (https://mariadb.com/kb/en/library/supported-character-sets-and-collations/#collations)
defaultValue: utf8mb4_unicode_ci defaultValue: utf8mb4_unicode_ci
instructions: instructions:
start: MariaDB is a community-developed fork of the MySQL relational database start:
management system intended to remain free under the GNU GPL. Being a fork MariaDB is a community-developed fork of the MySQL relational database
of a leading open source software system, it is notable for being led by management system intended to remain free under the GNU GPL. Being a fork
the original developers of MySQL, who forked it due to concerns over its of a leading open source software system, it is notable for being led by
acquisition by Oracle. Contributors are required to share their copyright the original developers of MySQL, who forked it due to concerns over its
with the MariaDB Foundation. The intent is also to maintain high acquisition by Oracle. Contributors are required to share their copyright
compatibility with MySQL, ensuring a "drop-in" replacement capability with with the MariaDB Foundation. The intent is also to maintain high
library binary equivalency and exact matching with MySQL APIs and compatibility with MySQL, ensuring a "drop-in" replacement capability with
commands. It includes the XtraDB storage engine for replacing InnoDB, as library binary equivalency and exact matching with MySQL APIs and
well as a new storage engine, Aria, that intends to be both a commands. It includes the XtraDB storage engine for replacing InnoDB, as
transactional and non-transactional engine perhaps even included in future well as a new storage engine, Aria, that intends to be both a
versions of MySQL. transactional and non-transactional engine perhaps even included in future
end: "MariaDB has been successfully deployed. The database is accessable on port versions of MySQL.
3306 inside the container. If you need to access the database externally, end:
you will have to setup port mapping in the App configs tab. For example 'MariaDB has been successfully deployed. The database is accessable on port
serverport: 3306, containerport: 3306. You can change the serverport for 3306 inside the container. If you need to access the database externally,
connection, but the containerport is predefined." you will have to setup port mapping in the App configs tab. For example
displayName: MariaDB serverport: 3306, containerport: 3306. You can change the serverport for
isOfficial: true connection, but the containerport is predefined.'
description: MariaDB Server is one of the most popular open source relational displayName: MariaDB
databases. It's made by the original developers of MySQL and guaranteed to isOfficial: true
stay open source description:
documentation: Taken from https://hub.docker.com/_/mariadb. MariaDB Server is one of the most popular open source relational
databases. It's made by the original developers of MySQL and guaranteed to
stay open source
documentation: Taken from https://hub.docker.com/_/mariadb.

View File

@ -1,65 +1,67 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_DATABASE: matomo MYSQL_DATABASE: matomo
MYSQL_USER: matomo MYSQL_USER: matomo
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
MYSQL_ROOT_PASSWORD: $$cap_db_root_pass MYSQL_ROOT_PASSWORD: $$cap_db_root_pass
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM mariadb:$$cap_mysql_version - FROM mariadb:$$cap_mysql_version
- CMD ["--character-set-server=utf8mb4", - CMD ["--character-set-server=utf8mb4",
"--collation-server=utf8mb4_unicode_ci", "--collation-server=utf8mb4_unicode_ci",
"--skip-character-set-client-handshake", "--max-allowed-packet=64MB"] "--skip-character-set-client-handshake", "--max-allowed-packet=64MB"]
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
image: matomo:$$cap_matomo_version image: matomo:$$cap_matomo_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/var/www/html - $$cap_appname-data:/var/www/html
environment: environment:
MATOMO_DATABASE_HOST: srv-captain--$$cap_appname-db MATOMO_DATABASE_HOST: srv-captain--$$cap_appname-db
MATOMO_DATABASE_ADAPTER: mysql MATOMO_DATABASE_ADAPTER: mysql
MATOMO_DATABASE_TABLES_PREFIX: matomo_ MATOMO_DATABASE_TABLES_PREFIX: matomo_
MATOMO_DATABASE_USERNAME: matomo MATOMO_DATABASE_USERNAME: matomo
MATOMO_DATABASE_PASSWORD: $$cap_db_pass MATOMO_DATABASE_PASSWORD: $$cap_db_pass
MATOMO_DATABASE_DBNAME: matomo MATOMO_DATABASE_DBNAME: matomo
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_matomo_version - id: $$cap_matomo_version
label: Matomo Version label: Matomo Version
defaultValue: 3.11.0 defaultValue: 3.11.0
description: Check out their docker page for the valid tags description: Check out their docker page for the valid tags
https://hub.docker.com/_/matomo?tab=tags https://hub.docker.com/_/matomo?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mysql_version - id: $$cap_mysql_version
label: MariaDB Version label: MariaDB Version
defaultValue: "10.4" defaultValue: '10.4'
description: Check out their docker page for the valid tags description: Check out their docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_root_pass - id: $$cap_db_root_pass
label: MariaDB Matomo User Password label: MariaDB Matomo User Password
description: The password to use for the matomo database description: The password to use for the matomo database
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_db_pass - id: $$cap_db_pass
label: MariaDB Root Password label: MariaDB Root Password
description: The root password to use for the MariaDB instance description: The root password to use for the MariaDB instance
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: Matomo is the leading open-source analytics platform that gives you more start:
than powerful analytics. Matomo is the leading open-source analytics platform that gives you more
end: Matomo is successfully deployed! than powerful analytics.
displayName: "" end: Matomo is successfully deployed!
isOfficial: true displayName: ''
description: Matomo tracks online visits to one or more websites and displays isOfficial: true
reports on these visits for analysis description:
documentation: Taken from https://hub.docker.com/_/matomo?tab=description Matomo tracks online visits to one or more websites and displays
reports on these visits for analysis
documentation: Taken from https://hub.docker.com/_/matomo?tab=description

View File

@ -1,67 +1,67 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-postgres: $$cap_appname-postgres:
image: postgres@$$cap_postgres_version image: postgres@$$cap_postgres_version
volumes: volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data - $$cap_appname-postgres-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: mattermost POSTGRES_USER: mattermost
POSTGRES_PASSWORD: $$cap_pg_pass POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: mattermost POSTGRES_DB: mattermost
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-postgres - $$cap_appname-postgres
volumes: volumes:
- $$cap_appname-data:/mattermost/data - $$cap_appname-data:/mattermost/data
- $$cap_appname-logs:/mattermost/logs - $$cap_appname-logs:/mattermost/logs
- $$cap_appname-config:/mattermost/config - $$cap_appname-config:/mattermost/config
- $$cap_appname-plugins:/mattermost/plugins - $$cap_appname-plugins:/mattermost/plugins
- $$cap_appname-clientplugins:/mattermost/client/plugins - $$cap_appname-clientplugins:/mattermost/client/plugins
restart: always restart: always
environment: environment:
MM_SQLSETTINGS_DATASOURCE: postgres://mattermost:$$cap_pg_pass@srv-captain--$$cap_appname-postgres:5432/mattermost?sslmode=disable&connect_timeout=10 MM_SQLSETTINGS_DATASOURCE: postgres://mattermost:$$cap_pg_pass@srv-captain--$$cap_appname-postgres:5432/mattermost?sslmode=disable&connect_timeout=10
MM_SERVICESETTINGS_SITEURL: https://$$cap_appname.$$cap_root_domain MM_SERVICESETTINGS_SITEURL: https://$$cap_appname.$$cap_root_domain
MM_LOGSETTINGS_ENABLEDIAGNOSTICS: "false" MM_LOGSETTINGS_ENABLEDIAGNOSTICS: 'false'
MM_SERVICESETTINGS_ENABLESECURITYFIXALERT: "false" MM_SERVICESETTINGS_ENABLESECURITYFIXALERT: 'false'
MM_SQLSETTINGS_DRIVERNAME: postgres MM_SQLSETTINGS_DRIVERNAME: postgres
caproverExtra: caproverExtra:
containerHttpPort: "8065" containerHttpPort: '8065'
dockerfileLines: dockerfileLines:
- FROM mattermost/mattermost-team-edition@$$cap_mattermost_version - FROM mattermost/mattermost-team-edition@$$cap_mattermost_version
- RUN sed -i 's#api.segment.io#xx.example.com#gI' - RUN sed -i 's#api.segment.io#xx.example.com#gI'
/mattermost/bin/mattermost /mattermost/bin/mattermost
- RUN sed -i - RUN sed -i
's#securityupdatecheck.mattermost.com#xxxxxxxxxxxxxxxxxxxxxx.example.com#gI' 's#securityupdatecheck.mattermost.com#xxxxxxxxxxxxxxxxxxxxxx.example.com#gI'
/mattermost/bin/mattermost /mattermost/bin/mattermost
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Docker Image SHA Hash label: Postgres Docker Image SHA Hash
defaultValue: sha256:110d3325db02daa6e1541fdd37725fcbecb7d51411229d922562f208c51d35cc defaultValue: sha256:110d3325db02daa6e1541fdd37725fcbecb7d51411229d922562f208c51d35cc
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ - default is 12.2 as of https://hub.docker.com/r/library/postgres/tags/ - default is 12.2 as of
2020-03-16 2020-03-16
- id: $$cap_mattermost_version - id: $$cap_mattermost_version
label: Mattermost Docker Image SHA Hash label: Mattermost Docker Image SHA Hash
defaultValue: sha256:f8a4416d0a50a03ebacdbcd44790d5996230da3f48dbefd02307e4fd713567aa defaultValue: sha256:f8a4416d0a50a03ebacdbcd44790d5996230da3f48dbefd02307e4fd713567aa
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/mattermost/mattermost-team-edition/tags - https://hub.docker.com/r/mattermost/mattermost-team-edition/tags -
default is current as of 2020-03-16 default is current as of 2020-03-16
- id: $$cap_pg_pass - id: $$cap_pg_pass
label: Postgres Password label: Postgres Password
description: Password must be at least 30 characters. Please use a random string. description: Password must be at least 30 characters. Please use a random string.
validRegex: /^[^\@]{30,}$/ validRegex: /^[^\@]{30,}$/
instructions: instructions:
start: Open-source collaboration/chat server Mattermost Team Edition. start: Open-source collaboration/chat server Mattermost Team Edition.
end: Mattermost is deployed and available as end: Mattermost is deployed and available as
srv-captain--$$cap_appname:80. Note that the application may take up to srv-captain--$$cap_appname:80. Note that the application may take up to
ten minutes to become available. Following deployment you must verify ten minutes to become available. Following deployment you must verify
MM_SERVICESETTINGS_SITEURL in the application's environment refers to your MM_SERVICESETTINGS_SITEURL in the application's environment refers to your
app's official public URL. app's official public URL.
displayName: Mattermost displayName: Mattermost
isOfficial: true isOfficial: true
description: Mattermost Team Edition open source collaboration/chat software description: Mattermost Team Edition open source collaboration/chat software
documentation: https://github.com/mattermost/mattermost-docker documentation: https://github.com/mattermost/mattermost-docker

View File

@ -1,68 +1,68 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
documentation: Taken from https://hub.docker.com/_/percona documentation: Taken from https://hub.docker.com/_/percona
image: percona/percona-server:$$cap_percona_version image: percona/percona-server:$$cap_percona_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: mautic MYSQL_DATABASE: mautic
MYSQL_USER: $$cap_db_user MYSQL_USER: $$cap_db_user
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
image: mautic/mautic:$$cap_mautic_version image: mautic/mautic:$$cap_mautic_version
volumes: volumes:
- $$cap_appname-data:/var/www/html - $$cap_appname-data:/var/www/html
restart: always restart: always
environment: environment:
MAUTIC_DB_HOST: srv-captain--$$cap_appname-db MAUTIC_DB_HOST: srv-captain--$$cap_appname-db
MYSQL_PORT_3306_TCP: "3306" MYSQL_PORT_3306_TCP: '3306'
MAUTIC_DB_USER: $$cap_db_user MAUTIC_DB_USER: $$cap_db_user
MAUTIC_DB_PASSWORD: $$cap_db_pass MAUTIC_DB_PASSWORD: $$cap_db_pass
MAUTIC_DB_NAME: mautic MAUTIC_DB_NAME: mautic
MAUTIC_RUN_CRON_JOBS: "true" MAUTIC_RUN_CRON_JOBS: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: mauticuser defaultValue: mauticuser
description: "" description: ''
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_mautic_version - id: $$cap_mautic_version
label: Mautic Version label: Mautic Version
defaultValue: v3.0.0-beta defaultValue: v3.0.0-beta
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/mautic/mautic/tags. Please be aware, this is a https://hub.docker.com/r/mautic/mautic/tags. Please be aware, this is a
beta version. beta version.
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_percona_version - id: $$cap_percona_version
label: Percona Version (database) label: Percona Version (database)
defaultValue: "5.7" defaultValue: '5.7'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/percona?tab=tags https://hub.docker.com/_/percona?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: |- start: |-
Mautic is an online,marketing automation tool. Mautic is an online,marketing automation tool.
The process will deploy a database and the App. The process will deploy a database and the App.
The process will take about a minute for the process to finish. The process will take about a minute for the process to finish.
end: >- end: >-
Mautic is deployed and available as $$cap_appname. Mautic is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 1-2 minutes for Mautic to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 1-2 minutes for Mautic to be ready. Before that, you might see 502 error page.
If you dont have any SMTP server, I recommend you to install 'poste.io' one click app version. If you dont have any SMTP server, I recommend you to install 'poste.io' one click app version.
displayName: Mautic beta displayName: Mautic beta
isOfficial: true isOfficial: true
description: Mautic is an open source marketing automation platform. description: Mautic is an open source marketing automation platform.

View File

@ -1,56 +1,56 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: miniflux POSTGRES_USER: miniflux
POSTGRES_PASSWORD: $$cap_postgres_password POSTGRES_PASSWORD: $$cap_postgres_password
POSTGRES_DB: miniflux POSTGRES_DB: miniflux
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: miniflux/miniflux:$$cap_miniflux_version image: miniflux/miniflux:$$cap_miniflux_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
restart: always restart: always
environment: environment:
DATABASE_URL: postgres://miniflux:$$cap_postgres_password@srv-captain--$$cap_appname-db/miniflux?sslmode=disable DATABASE_URL: postgres://miniflux:$$cap_postgres_password@srv-captain--$$cap_appname-db/miniflux?sslmode=disable
RUN_MIGRATIONS: "1" RUN_MIGRATIONS: '1'
CREATE_ADMIN: "1" CREATE_ADMIN: '1'
ADMIN_USERNAME: $$cap_admin_user ADMIN_USERNAME: $$cap_admin_user
ADMIN_PASSWORD: $$cap_admin_password ADMIN_PASSWORD: $$cap_admin_password
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_miniflux_version - id: $$cap_miniflux_version
label: Miniflux version label: Miniflux version
defaultValue: 2.0.22 defaultValue: 2.0.22
description: Checkout valid tags at https://hub.docker.com/r/miniflux/miniflux/tags description: Checkout valid tags at https://hub.docker.com/r/miniflux/miniflux/tags
- id: $$cap_admin_user - id: $$cap_admin_user
label: Admin user label: Admin user
- id: $$cap_admin_password - id: $$cap_admin_password
label: Admin Password label: Admin Password
defaultValue: $$cap_gen_random_hex(10) defaultValue: $$cap_gen_random_hex(10)
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
defaultValue: 9.6.18-alpine defaultValue: 9.6.18-alpine
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_postgres_password - id: $$cap_postgres_password
label: Postgres Password label: Postgres Password
defaultValue: $$cap_gen_random_hex(10) defaultValue: $$cap_gen_random_hex(10)
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: Miniflux is a minimalist and opinionated feed reader. start: Miniflux is a minimalist and opinionated feed reader.
end: Miniflux is deployed and the dashboard is available from end: Miniflux is deployed and the dashboard is available from
http://$$cap_appname.$$cap_root_domain. http://$$cap_appname.$$cap_root_domain.
displayName: Miniflux displayName: Miniflux
isOfficial: true isOfficial: true
description: Self hosted RSS server description: Self hosted RSS server
documentation: https://miniflux.app/docs/index.html documentation: https://miniflux.app/docs/index.html

View File

@ -1,47 +1,47 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
volumes: volumes:
- $$cap_appname-db-data:/data - $$cap_appname-db-data:/data
- $$cap_appname-config-data:/root/.minio - $$cap_appname-config-data:/root/.minio
restart: always restart: always
environment: environment:
MINIO_ACCESS_KEY: $$cap_access_key MINIO_ACCESS_KEY: $$cap_access_key
MINIO_SECRET_KEY: $$cap_secret_key MINIO_SECRET_KEY: $$cap_secret_key
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
dockerfileLines: dockerfileLines:
- FROM minio/minio:$$cap_minio_version - FROM minio/minio:$$cap_minio_version
- CMD ["minio", "server", "/data"] - CMD ["minio", "server", "/data"]
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_minio_version - id: $$cap_minio_version
label: Minio Version label: Minio Version
defaultValue: latest defaultValue: latest
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/minio/minio/tags/ https://hub.docker.com/r/minio/minio/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_access_key - id: $$cap_access_key
label: Minio Access Key label: Minio Access Key
defaultValue: "" defaultValue: ''
description: Username to access minio server description: Username to access minio server
validRegex: /.{5,}/ validRegex: /.{5,}/
- id: $$cap_secret_key - id: $$cap_secret_key
label: Minio Secret Key label: Minio Secret Key
defaultValue: "" defaultValue: ''
description: Password to access minio server description: Password to access minio server
validRegex: /.{8,}/ validRegex: /.{8,}/
instructions: instructions:
start: >- start: >-
Minio is an object storage server released under Apache License v2.0. It Minio is an object storage server released under Apache License v2.0. It
is compatible with Amazon S3 cloud storage service. It is best suited for is compatible with Amazon S3 cloud storage service. It is best suited for
storing unstructured data such as photos, videos, log files, backups and storing unstructured data such as photos, videos, log files, backups and
container / VM images. Size of an object can range from a few KBs to a container / VM images. Size of an object can range from a few KBs to a
maximum of 5TB. Minio server is light enough to be bundled with the maximum of 5TB. Minio server is light enough to be bundled with the
application stack, similar to NodeJS, Redis and MySQL. application stack, similar to NodeJS, Redis and MySQL.
This one click app deploy one single instance of minio. If you are deploying minio in a high demand production environment, you should consider deploying multiple instances of minio. See minio docs for more details. https://www.minio.io/ This one click app deploy one single instance of minio. If you are deploying minio in a high demand production environment, you should consider deploying multiple instances of minio. See minio docs for more details. https://www.minio.io/
end: Minio is deployed and available as $$cap_appname end: Minio is deployed and available as $$cap_appname
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: MinIO is a cloud storage server compatible with Amazon S3 description: MinIO is a cloud storage server compatible with Amazon S3
documentation: Taken from https://hub.docker.com/r/minio/minio documentation: Taken from https://hub.docker.com/r/minio/minio

View File

@ -1,64 +1,65 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: mongo-express:$$cap_mongoexpress_version image: mongo-express:$$cap_mongoexpress_version
restart: always restart: always
environment: environment:
ME_CONFIG_MONGODB_SERVER: $$cap_me_server_address ME_CONFIG_MONGODB_SERVER: $$cap_me_server_address
ME_CONFIG_MONGODB_ADMINUSERNAME: $$cap_me_server_admin_username ME_CONFIG_MONGODB_ADMINUSERNAME: $$cap_me_server_admin_username
ME_CONFIG_MONGODB_ADMINPASSWORD: $$cap_me_server_admin_password ME_CONFIG_MONGODB_ADMINPASSWORD: $$cap_me_server_admin_password
ME_CONFIG_MONGODB_PORT: $$cap_me_server_port ME_CONFIG_MONGODB_PORT: $$cap_me_server_port
ME_CONFIG_BASICAUTH_USERNAME: $$cap_me_dashboard_username ME_CONFIG_BASICAUTH_USERNAME: $$cap_me_dashboard_username
ME_CONFIG_BASICAUTH_PASSWORD: $$cap_me_dashboard_password ME_CONFIG_BASICAUTH_PASSWORD: $$cap_me_dashboard_password
ME_CONFIG_SITE_COOKIESECRET: $$cap_appname$$cap_mongoexpress_version ME_CONFIG_SITE_COOKIESECRET: $$cap_appname$$cap_mongoexpress_version
ME_CONFIG_SITE_SESSIONSECRET: $$cap_appname$$cap_mongoexpress_version ME_CONFIG_SITE_SESSIONSECRET: $$cap_appname$$cap_mongoexpress_version
caproverExtra: caproverExtra:
containerHttpPort: "8081" containerHttpPort: '8081'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mongoexpress_version - id: $$cap_mongoexpress_version
label: Mongo Express Version Tag label: Mongo Express Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mongo-express/tags/ https://hub.docker.com/r/library/mongo-express/tags/
defaultValue: "0.49" defaultValue: '0.49'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_me_server_address - id: $$cap_me_server_address
label: MongoDB Server Address label: MongoDB Server Address
description: If MongoDB is created by CapRover, use description: If MongoDB is created by CapRover, use
srv-captain--REPLACE_THIS_WITH_CONTAINER_NAME srv-captain--REPLACE_THIS_WITH_CONTAINER_NAME
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_me_server_port - id: $$cap_me_server_port
label: MongoDB Server Port (default is 27017) label: MongoDB Server Port (default is 27017)
defaultValue: "27017" defaultValue: '27017'
validRegex: /^([0-9])+$/ validRegex: /^([0-9])+$/
- id: $$cap_me_server_admin_username - id: $$cap_me_server_admin_username
label: MongoDB Admin Username label: MongoDB Admin Username
defaultValue: "" defaultValue: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_me_server_admin_password - id: $$cap_me_server_admin_password
label: MongoDB Admin Password label: MongoDB Admin Password
defaultValue: "" defaultValue: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_me_dashboard_username - id: $$cap_me_dashboard_username
label: Choose a Mongo-Express Dashboard Username label: Choose a Mongo-Express Dashboard Username
defaultValue: admin defaultValue: admin
description: Restrict access to your Mongo Express dashboard by choosing username/pass description: Restrict access to your Mongo Express dashboard by choosing username/pass
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_me_dashboard_password - id: $$cap_me_dashboard_password
label: Mongo-Express Dashboard Password label: Mongo-Express Dashboard Password
defaultValue: "" defaultValue: ''
description: Restrict access to your Mongo Express dashboard by choosing username/pass description: Restrict access to your Mongo Express dashboard by choosing username/pass
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
instructions: instructions:
start: >- start: >-
MongoExpress is a Web-based MongoDB admin interface, written with Node.js MongoExpress is a Web-based MongoDB admin interface, written with Node.js
and express. See MongoExpress page for more details: and express. See MongoExpress page for more details:
https://github.com/mongo-express/mongo-express https://github.com/mongo-express/mongo-express
Enter your MongoExpress Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your MongoExpress Configuration parameters and click on next. It will take about a minute for the process to finish.
end: MongoExpress is deployed and available as $$cap_appname end: MongoExpress is deployed and available as $$cap_appname
displayName: Mongo Express displayName: Mongo Express
isOfficial: true isOfficial: true
description: Web-based MongoDB admin interface, written with Node.js and express description: Web-based MongoDB admin interface, written with Node.js and express
documentation: Taken from https://hub.docker.com/_/mongo-express/ except it is documentation:
manually adjusted for port 80 Taken from https://hub.docker.com/_/mongo-express/ except it is
manually adjusted for port 80

View File

@ -1,97 +1,104 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
environment: environment:
AWS_ACCESS_KEY_ID: $$cap_aws_access_key_id AWS_ACCESS_KEY_ID: $$cap_aws_access_key_id
AWS_SECRET_ACCESS_KEY: $$cap_aws_secret_access_key AWS_SECRET_ACCESS_KEY: $$cap_aws_secret_access_key
BUCKET: $$cap_bucket BUCKET: $$cap_bucket
BACKUP_FOLDER: $$cap_backup_folder BACKUP_FOLDER: $$cap_backup_folder
MONGODB_HOST: $$cap_mongodb_host MONGODB_HOST: $$cap_mongodb_host
MONGODB_PORT: $$cap_mongodb_port MONGODB_PORT: $$cap_mongodb_port
MONGODB_USER: $$cap_mongodb_user MONGODB_USER: $$cap_mongodb_user
MONGODB_PASS: $$cap_mongodb_pass MONGODB_PASS: $$cap_mongodb_pass
MONGODB_DB: $$cap_mongodb_db MONGODB_DB: $$cap_mongodb_db
EXTRA_OPTS: $$cap_extra_opts EXTRA_OPTS: $$cap_extra_opts
CRON_TIME: $$cap_cron_time CRON_TIME: $$cap_cron_time
TZ: $$cap_tz TZ: $$cap_tz
CRON_TZ: $$cap_tz CRON_TZ: $$cap_tz
INIT_BACKUP: $$cap_init_backup INIT_BACKUP: $$cap_init_backup
INIT_RESTORE: $$cap_init_restore INIT_RESTORE: $$cap_init_restore
DISABLE_CRON: $$cap_disable_cron DISABLE_CRON: $$cap_disable_cron
image: halvves/mongodb-backup-s3@sha256:e709db5e0fe5d44873ac5a385af214e951f2a0366a7c02b515ebf7c983658b0c image: halvves/mongodb-backup-s3@sha256:e709db5e0fe5d44873ac5a385af214e951f2a0366a7c02b515ebf7c983658b0c
restart: always restart: always
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- description: Your aws access key id (for your s3 bucket) - description: Your aws access key id (for your s3 bucket)
id: $$cap_aws_access_key_id id: $$cap_aws_access_key_id
label: AWS ACCESS KEY ID label: AWS ACCESS KEY ID
validRegex: /^.+$/ validRegex: /^.+$/
- description: Your aws secret access key (for your s3 bucket) - description: Your aws secret access key (for your s3 bucket)
id: $$cap_aws_secret_access_key id: $$cap_aws_secret_access_key
label: AWS SECRET ACCESS KEY label: AWS SECRET ACCESS KEY
validRegex: /^.+$/ validRegex: /^.+$/
- description: Your s3 bucket. - description: Your s3 bucket.
id: $$cap_bucket id: $$cap_bucket
label: BUCKET label: BUCKET
validRegex: /^.+$/ validRegex: /^.+$/
- description: Name of folder or path to put backups (eg myapp/db_backups/) - description: Name of folder or path to put backups (eg myapp/db_backups/)
id: $$cap_backup_folder id: $$cap_backup_folder
defaultValue: mongo_dumps/ defaultValue: mongo_dumps/
label: BACKUP_FOLDER label: BACKUP_FOLDER
- description: The host/ip of your mongodb database. For CapRover hosted database, - description:
use srv-captain--your-mongodb-name The host/ip of your mongodb database. For CapRover hosted database,
id: $$cap_mongodb_host use srv-captain--your-mongodb-name
label: MONGODB HOST id: $$cap_mongodb_host
validRegex: /^.+$/ label: MONGODB HOST
- description: The port number of your mongodb database validRegex: /^.+$/
id: $$cap_mongodb_port - description: The port number of your mongodb database
label: MONGODB PORT id: $$cap_mongodb_port
defaultValue: "27017" label: MONGODB PORT
- description: The username of your mongodb database. If MONGODB_USER is empty defaultValue: '27017'
while MONGODB_PASS is not, the image will use admin as the default - description:
username The username of your mongodb database. If MONGODB_USER is empty
id: $$cap_mongodb_user while MONGODB_PASS is not, the image will use admin as the default
label: MONGODB USER username
defaultValue: admin id: $$cap_mongodb_user
- description: The password of your mongodb database label: MONGODB USER
id: $$cap_mongodb_pass defaultValue: admin
label: MONGODB PASS - description: The password of your mongodb database
validRegex: /^.+$/ id: $$cap_mongodb_pass
- description: The database name to dump. If not specified, it will dump all the label: MONGODB PASS
databases validRegex: /^.+$/
id: $$cap_mongodb_db - description:
label: MONGODB DB The database name to dump. If not specified, it will dump all the
- description: Any extra options to pass to mongodump command. If you see databases
*Unrecognized field 'snapshot'* problem add --forceTableScan here id: $$cap_mongodb_db
id: $$cap_extra_opts label: MONGODB DB
label: EXTRA_OPTS - description:
- description: The interval of cron job to run mongodump. 0 3 * * * by default, Any extra options to pass to mongodump command. If you see
which is every day at 03:00hrs. *Unrecognized field 'snapshot'* problem add --forceTableScan here
id: $$cap_cron_time id: $$cap_extra_opts
label: CRON TIME label: EXTRA_OPTS
defaultValue: 0 3 * * * - description:
- description: timezone The interval of cron job to run mongodump. 0 3 * * * by default,
id: $$cap_tz which is every day at 03:00hrs.
label: TIMEZONE id: $$cap_cron_time
defaultValue: US/Eastern label: CRON TIME
- description: If set, create a backup when the container launched defaultValue: 0 3 * * *
id: $$cap_init_backup - description: timezone
label: INIT BACKUP id: $$cap_tz
defaultValue: "true" label: TIMEZONE
- description: If set (any string, eg. true), restore from latest when container defaultValue: US/Eastern
is launched. - description: If set, create a backup when the container launched
id: $$cap_init_restore id: $$cap_init_backup
label: INIT RESTORE label: INIT BACKUP
defaultValue: "" defaultValue: 'true'
- description: if set (any string, eg.true), it will skip setting up automated - description:
backups. good for when you want to use this container to seed a dev If set (any string, eg. true), restore from latest when container
environment. is launched.
id: $$cap_disable_cron id: $$cap_init_restore
label: DISABLE CRON label: INIT RESTORE
defaultValue: "" defaultValue: ''
instructions: - description:
start: Runs mongodump to backup data using cronjob to an s3 bucket if set (any string, eg.true), it will skip setting up automated
end: MongoDB Backup S3 is ready backups. good for when you want to use this container to seed a dev
displayName: MongoDB Backup Amazon S3 environment.
description: Runs mongodump to backup data using cronjob to an Amazon S3 bucket id: $$cap_disable_cron
documentation: https://github.com/halvves/mongodb-backup-s3 label: DISABLE CRON
defaultValue: ''
instructions:
start: Runs mongodump to backup data using cronjob to an s3 bucket
end: MongoDB Backup S3 is ready
displayName: MongoDB Backup Amazon S3
description: Runs mongodump to backup data using cronjob to an Amazon S3 bucket
documentation: https://github.com/halvves/mongodb-backup-s3

View File

@ -1,46 +1,47 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: mongo:$$cap_mongo_version image: mongo:$$cap_mongo_version
volumes: volumes:
- $$cap_appname-db-data:/data/db - $$cap_appname-db-data:/data/db
- $$cap_appname-db-config:/data/configdb - $$cap_appname-db-config:/data/configdb
restart: always restart: always
environment: environment:
MONGO_INITDB_ROOT_USERNAME: $$cap_mongo_username MONGO_INITDB_ROOT_USERNAME: $$cap_mongo_username
MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mongo_version - id: $$cap_mongo_version
label: MongoDB Version label: MongoDB Version
defaultValue: "4" defaultValue: '4'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mongo/tags/ https://hub.docker.com/r/library/mongo/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mongo_username - id: $$cap_mongo_username
label: MongoDB RootUsername label: MongoDB RootUsername
defaultValue: root defaultValue: root
description: Only use alphanumeric chars. description: Only use alphanumeric chars.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_mongo_password - id: $$cap_mongo_password
label: MongoDB password label: MongoDB password
validRegex: /^\s*\S.*$/ validRegex: /^\s*\S.*$/
instructions: instructions:
start: >- start: >-
MongoDB is a cross-platform document-oriented database. Classified as a MongoDB is a cross-platform document-oriented database. Classified as a
NoSQL database program, MongoDB uses JSON-like documents with schemas. NoSQL database program, MongoDB uses JSON-like documents with schemas.
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 27017 to other CapRover apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 27017 to other CapRover apps.
Enter your MongoDB Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your MongoDB Configuration parameters and click on next. It will take about a minute for the process to finish.
end: "MongoDB is deployed and available as srv-captain--$$cap_appname:27017 to end:
other apps. For example with NodeJS: "MongoDB is deployed and available as srv-captain--$$cap_appname:27017 to
mongoose.connect('mongodb://srv-captain--$$cap_appname/mydatabase?authSou\ other apps. For example with NodeJS:
rce=admin', {userMongoClient: true});" mongoose.connect('mongodb://srv-captain--$$cap_appname/mydatabase?authSou\
displayName: MongoDB rce=admin', {userMongoClient: true});"
isOfficial: true displayName: MongoDB
description: MongoDB is a cross-platform document-oriented database program. isOfficial: true
Classified as a NoSQL database program description: MongoDB is a cross-platform document-oriented database program.
documentation: Taken from https://hub.docker.com/r/mongo/ Classified as a NoSQL database program
documentation: Taken from https://hub.docker.com/r/mongo/

View File

@ -1,81 +1,85 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mcr.microsoft.com/mssql/server:$$cap_server_version image: mcr.microsoft.com/mssql/server:$$cap_server_version
volumes: volumes:
- $$cap_appname-db-data:/var/opt/mssql - $$cap_appname-db-data:/var/opt/mssql
restart: always restart: always
environment: environment:
ACCEPT_EULA: $$cap_accept_eula ACCEPT_EULA: $$cap_accept_eula
MSSQL_PID: $$cap_pid MSSQL_PID: $$cap_pid
MSSQL_SA_PASSWORD: $$cap_sa_pass MSSQL_SA_PASSWORD: $$cap_sa_pass
MSSQL_TCP_PORT: $$cap_container_port MSSQL_TCP_PORT: $$cap_container_port
ports: ports:
- $$cap_host_port:$$cap_container_port - $$cap_host_port:$$cap_container_port
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_server_version - id: $$cap_server_version
label: Version label: Version
defaultValue: 2017-CU12-ubuntu defaultValue: 2017-CU12-ubuntu
description: Checkout this page for the valid tags description: Checkout this page for the valid tags
https://mcr.microsoft.com/v2/mssql/server/tags/list https://mcr.microsoft.com/v2/mssql/server/tags/list
- id: $$cap_host_port - id: $$cap_host_port
label: Host Port label: Host Port
defaultValue: "1433" defaultValue: '1433'
description: Sets the TCP port that the host exposes. This is also used for description:
creating the port mapping. Sets the TCP port that the host exposes. This is also used for
validRegex: /^([0-9])+$/ creating the port mapping.
- id: $$cap_container_port validRegex: /^([0-9])+$/
label: Container TCP Port - id: $$cap_container_port
defaultValue: "1433" label: Container TCP Port
description: Sets the TCP port that SQL Server container listens to. This is defaultValue: '1433'
also used for creating the port mapping. description:
validRegex: /^([0-9])+$/ Sets the TCP port that SQL Server container listens to. This is
- id: $$cap_sa_pass also used for creating the port mapping.
label: SA Password validRegex: /^([0-9])+$/
description: "The database system administrator (userid = 'sa') password used to - id: $$cap_sa_pass
connect to SQL Server once the container is running. Important note: label: SA Password
This password needs to include at least 8 characters of at least three description:
of these four categories: uppercase letters, lowercase letters, numbers "The database system administrator (userid = 'sa') password used to
and non-alphanumeric symbols." connect to SQL Server once the container is running. Important note:
- id: $$cap_pid This password needs to include at least 8 characters of at least three
label: PID of these four categories: uppercase letters, lowercase letters, numbers
description: "Set the SQL Server edition or product key. This will run the and non-alphanumeric symbols."
container with the edition that is associated with the PID. This the - id: $$cap_pid
Product ID (PID) or Edition that the container will run with. Acceptable label: PID
values: Developer, Express, Standard, Enterprise, EnterpriseCore : More description:
info here: https://hub.docker.com/_/microsoft-mssql-server" 'Set the SQL Server edition or product key. This will run the
defaultValue: Developer container with the edition that is associated with the PID. This the
- id: $$cap_accept_eula Product ID (PID) or Edition that the container will run with. Acceptable
label: Accept EULA (Y/N) values: Developer, Express, Standard, Enterprise, EnterpriseCore : More
description: >- info here: https://hub.docker.com/_/microsoft-mssql-server'
Confirms your acceptance of the End-User Licensing Agreement defaultValue: Developer
https://go.microsoft.com/fwlink/?linkid=857698. - id: $$cap_accept_eula
By passing the value "Y", you are expressing that you have a valid and existing license for the edition and version of SQL Server that you intend to use. You also agree that your use of SQL Server software running in a Docker container image will be governed by the terms of your SQL Server license. label: Accept EULA (Y/N)
validRegex: /^Y{1}$/ description: >-
instructions: Confirms your acceptance of the End-User Licensing Agreement
start: >- https://go.microsoft.com/fwlink/?linkid=857698.
SQL Server is a central part of the Microsoft data platform. SQL Server is By passing the value "Y", you are expressing that you have a valid and existing license for the edition and version of SQL Server that you intend to use. You also agree that your use of SQL Server software running in a Docker container image will be governed by the terms of your SQL Server license.
an industry leader in operational database management systems (ODBMS). validRegex: /^Y{1}$/
instructions:
start: >-
SQL Server is a central part of the Microsoft data platform. SQL Server is
an industry leader in operational database management systems (ODBMS).
SQL Server Developer edition lets developers build any kind of application on top of SQL Server. SQL Server Developer edition lets developers build any kind of application on top of SQL Server.
It includes all the functionality of Enterprise edition, but is licensed for use as a development and test system, not as a production server. It includes all the functionality of Enterprise edition, but is licensed for use as a development and test system, not as a production server.
SQL Server Developer Edition cannot be used in a production environment. SQL Server Developer Edition cannot be used in a production environment.
The SQL Server 2017 Developer Edition license terms are located here: https://go.microsoft.com/fwlink/?linkid=857698 . The SQL Server 2017 Developer Edition license terms are located here: https://go.microsoft.com/fwlink/?linkid=857698 .
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at the port specified for "Container TCP Port" field to other apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at the port specified for "Container TCP Port" field to other apps.
Enter your SQL Server Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your SQL Server Configuration parameters and click on next. It will take about a minute for the process to finish.
end: SQL Server is deployed and available as end: SQL Server is deployed and available as
srv-captain--$$cap_appname-db:$$cap_container_port to other apps. srv-captain--$$cap_appname-db:$$cap_container_port to other apps.
displayName: Microsoft SQL displayName: Microsoft SQL
isOfficial: true isOfficial: true
description: Microsoft SQL Server is a relational database management system description: Microsoft SQL Server is a relational database management system
developed by Microsoft developed by Microsoft
documentation: Taken from https://hub.docker.com/_/microsoft-mssql-server documentation: Taken from https://hub.docker.com/_/microsoft-mssql-server

View File

@ -1,44 +1,46 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mysql:$$cap_mysql_version image: mysql:$$cap_mysql_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mysql_version - id: $$cap_mysql_version
label: MySQL Version label: MySQL Version
defaultValue: "5.7" defaultValue: '5.7'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mysql/tags/ https://hub.docker.com/r/library/mysql/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: MySQL Root password label: MySQL Root password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: >- start: >-
MySQL is the world's most popular open source database. With its proven MySQL is the world's most popular open source database. With its proven
performance, reliability and ease-of-use, MySQL has become the leading performance, reliability and ease-of-use, MySQL has become the leading
database choice for web-based applications, covering the entire range from database choice for web-based applications, covering the entire range from
personal projects and websites, via e-commerce and information services, personal projects and websites, via e-commerce and information services,
all the way to high profile web properties including Facebook, Twitter, all the way to high profile web properties including Facebook, Twitter,
YouTube, Yahoo! and many more. YouTube, Yahoo! and many more.
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 3306 to other CapRover apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 3306 to other CapRover apps.
Enter your MySQL Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your MySQL Configuration parameters and click on next. It will take about a minute for the process to finish.
end: "MySQL is deployed and available as srv-captain--$$cap_appname-db:3306 to end:
other apps. For example with NodeJS, you do 'var con = "MySQL is deployed and available as srv-captain--$$cap_appname-db:3306 to
mysql.createConnection({ host: 'srv-captain--$$cap_appname-db', user: other apps. For example with NodeJS, you do 'var con =
'root', password: '*********' });'" mysql.createConnection({ host: 'srv-captain--$$cap_appname-db', user:
displayName: MySQL 'root', password: '*********' });'"
isOfficial: true displayName: MySQL
description: MySQL is a relational database management system based on SQL isOfficial: true
documentation: Taken from https://docs.docker.com/compose/mysql/ port mapping description: MySQL is a relational database management system based on SQL
removed from WP as it's not needed documentation:
Taken from https://docs.docker.com/compose/mysql/ port mapping
removed from WP as it's not needed

View File

@ -1,99 +1,99 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
documentation: Taken from https://hub.docker.com/_/postgres documentation: Taken from https://hub.docker.com/_/postgres
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_PASSWORD: $$cap_db_pass POSTGRES_PASSWORD: $$cap_db_pass
POSTGRES_DB: n8n POSTGRES_DB: n8n
POSTGRES_USER: $$cap_db_user POSTGRES_USER: $$cap_db_user
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
documentation: Taken from https://hub.docker.com/r/n8nio/n8n documentation: Taken from https://hub.docker.com/r/n8nio/n8n
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
image: n8nio/n8n:$$cap_n8n_version image: n8nio/n8n:$$cap_n8n_version
volumes: volumes:
- $$cap_appname-data:/root/.n8n - $$cap_appname-data:/root/.n8n
environment: environment:
POSTGRES_DATABASE: n8n POSTGRES_DATABASE: n8n
POSTGRES_HOST: srv-captain--$$cap_appname-db POSTGRES_HOST: srv-captain--$$cap_appname-db
POSTGRES_PASSWORD: $$cap_db_pass POSTGRES_PASSWORD: $$cap_db_pass
POSTGRES_PORT: "5432" POSTGRES_PORT: '5432'
POSTGRES_USER: $$cap_db_user POSTGRES_USER: $$cap_db_user
GENERIC_TIMEZONE: $$cap_timezone GENERIC_TIMEZONE: $$cap_timezone
TZ: $$cap_timezone TZ: $$cap_timezone
N8N_PROTOCOL: http N8N_PROTOCOL: http
WEBHOOK_TUNNEL_URL: http://$$cap_appname.$$cap_root_domain/ WEBHOOK_TUNNEL_URL: http://$$cap_appname.$$cap_root_domain/
VUE_APP_URL_BASE_API: http://$$cap_appname.$$cap_root_domain/ VUE_APP_URL_BASE_API: http://$$cap_appname.$$cap_root_domain/
N8N_HOST: http://$$cap_appname.$$cap_root_domain/ N8N_HOST: http://$$cap_appname.$$cap_root_domain/
N8N_BASIC_AUTH_ACTIVE: "true" N8N_BASIC_AUTH_ACTIVE: 'true'
N8N_BASIC_AUTH_USER: $$cap_user N8N_BASIC_AUTH_USER: $$cap_user
N8N_BASIC_AUTH_PASSWORD: $$cap_pass N8N_BASIC_AUTH_PASSWORD: $$cap_pass
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "5678" containerHttpPort: '5678'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_n8n_version - id: $$cap_n8n_version
label: n8n.io Version label: n8n.io Version
defaultValue: 0.67.3 defaultValue: 0.67.3
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/n8nio/n8n/tags https://hub.docker.com/r/n8nio/n8n/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres (database) version label: Postgres (database) version
defaultValue: "12" defaultValue: '12'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: database password label: database password
description: Password for the database user and root using mysql. description: Password for the database user and root using mysql.
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_db_user - id: $$cap_db_user
label: database user label: database user
defaultValue: n8n defaultValue: n8n
description: Username for the database using postgres. description: Username for the database using postgres.
validRegex: /^([a-z0-9])+$/i validRegex: /^([a-z0-9])+$/i
- id: $$cap_timezone - id: $$cap_timezone
label: timezone label: timezone
defaultValue: Europe/Paris defaultValue: Europe/Paris
description: Timezone used by the server. Please check out this page description: Timezone used by the server. Please check out this page
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for valid https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for valid
time time
validRegex: /^([a-z_\+-0-9]+\/?[a-z_\+-0-9]*)$/i validRegex: /^([a-z_\+-0-9]+\/?[a-z_\+-0-9]*)$/i
- id: $$cap_user - id: $$cap_user
label: user label: user
defaultValue: root defaultValue: root
description: user you need to use to login into the web interface description: user you need to use to login into the web interface
validRegex: /^([a-z0-9])+$/i validRegex: /^([a-z0-9])+$/i
- id: $$cap_pass - id: $$cap_pass
label: password label: password
description: password you need to use to login into the web interface description: password you need to use to login into the web interface
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: |- start: |-
n8n is a free and open node based Workflow Automation Tool. n8n is a free and open node based Workflow Automation Tool.
The process will deploy a database and the App. The process will deploy a database and the App.
The process will take about a minute for the process to finish. The process will take about a minute for the process to finish.
end: >- end: >-
n8n is deployed and available as $$cap_appname. n8n is deployed and available as $$cap_appname.
Please activate Websocket Support in the app then wait few seconds before use it. Please activate Websocket Support in the app then wait few seconds before use it.
Important information, it will not work without websocket support nor with https enabled. Important information, it will not work without websocket support nor with https enabled.
Please do not activate https nor basic auth (it is setted by the docker and use the caprover one would make your webhook failed). Please do not activate https nor basic auth (it is setted by the docker and use the caprover one would make your webhook failed).
See https://github.com/n8n-io/n8n/issues/593 for more details. See https://github.com/n8n-io/n8n/issues/593 for more details.
displayName: n8n.io displayName: n8n.io
isOfficial: true isOfficial: true
description: n8n is a free and open node based Workflow Automation Tool. description: n8n is a free and open node based Workflow Automation Tool.

View File

@ -1,104 +1,106 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
documentation: Taken from https://hub.docker.com/_/mariadb documentation: Taken from https://hub.docker.com/_/mariadb
image: mariadb:$$cap_mariadb_version image: mariadb:$$cap_mariadb_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: nextcloud MYSQL_DATABASE: nextcloud
MYSQL_USER: $$cap_db_user MYSQL_USER: $$cap_db_user
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
documentation: Taken from https://hub.docker.com/_/nextcloud documentation: Taken from https://hub.docker.com/_/nextcloud
image: nextcloud:$$cap_nextcloud_version image: nextcloud:$$cap_nextcloud_version
volumes: volumes:
- $$cap_appname-data:/var/www/html - $$cap_appname-data:/var/www/html
restart: always restart: always
environment: environment:
OVERWRITEPROTOCOL: $$cap_http_https_cors OVERWRITEPROTOCOL: $$cap_http_https_cors
MYSQL_DATABASE: nextcloud MYSQL_DATABASE: nextcloud
MYSQL_USER: $$cap_db_user MYSQL_USER: $$cap_db_user
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
MYSQL_HOST: srv-captain--$$cap_appname-db MYSQL_HOST: srv-captain--$$cap_appname-db
NEXTCLOUD_ADMIN_USER: $$cap_admin_user NEXTCLOUD_ADMIN_USER: $$cap_admin_user
NEXTCLOUD_ADMIN_PASSWORD: $$cap_admin_pass NEXTCLOUD_ADMIN_PASSWORD: $$cap_admin_pass
NEXTCLOUD_TRUSTED_DOMAINS: $$cap_appname.$$cap_root_domain NEXTCLOUD_TRUSTED_DOMAINS: $$cap_appname.$$cap_root_domain
$$cap_appname-cron: $$cap_appname-cron:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
- $$cap_appname - $$cap_appname
documentation: https://github.com/nextcloud/docker/blob/master/.examples/docker-compose/insecure/mariadb-cron-redis/apache/docker-compose.yml documentation: https://github.com/nextcloud/docker/blob/master/.examples/docker-compose/insecure/mariadb-cron-redis/apache/docker-compose.yml
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/var/www/html - $$cap_appname-data:/var/www/html
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM nextcloud:$$cap_nextcloud_version - FROM nextcloud:$$cap_nextcloud_version
- 'ENTRYPOINT [ "/cron.sh" ] ' - 'ENTRYPOINT [ "/cron.sh" ] '
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_nextcloud_version - id: $$cap_nextcloud_version
label: NextCloud Version label: NextCloud Version
defaultValue: 19.0.0 defaultValue: 19.0.0
description: >- description: >-
Check out their Docker page for the valid tags Check out their Docker page for the valid tags
https://hub.docker.com/r/library/nextcloud/tags/ https://hub.docker.com/r/library/nextcloud/tags/
do not use fpm versions. do not use fpm versions.
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb_version - id: $$cap_mariadb_version
label: MariaDB (database) version label: MariaDB (database) version
defaultValue: 10.5.3 defaultValue: 10.5.3
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/mariadb?tab=tags https://hub.docker.com/_/mariadb?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: database password label: database password
description: Password for the database user and root using mysql. description: Password for the database user and root using mysql.
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_db_user - id: $$cap_db_user
label: database user label: database user
defaultValue: nextcloud defaultValue: nextcloud
description: Username for the database using mysql. description: Username for the database using mysql.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_admin_user - id: $$cap_admin_user
label: admin name label: admin name
defaultValue: admin defaultValue: admin
description: Name of the Nextcloud admin user. description: Name of the Nextcloud admin user.
validRegex: /^([a-zA-Z0-9\@\.])+$/ validRegex: /^([a-zA-Z0-9\@\.])+$/
- id: $$cap_admin_pass - id: $$cap_admin_pass
label: admin password label: admin password
description: Password for the Nextcloud admin user. description: Password for the Nextcloud admin user.
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_http_https_cors - id: $$cap_http_https_cors
label: Protocol of proxy label: Protocol of proxy
defaultValue: https defaultValue: https
description: Choose either http or https. cors configuration to login are set by description:
the docker image, if you do not set this same as your proxy Choose either http or https. cors configuration to login are set by
configuration, login will fail the docker image, if you do not set this same as your proxy
validRegex: /^http[s]?$/ configuration, login will fail
instructions: validRegex: /^http[s]?$/
start: A safe home for all your data. Access & share your files, calendars, instructions:
contacts, mail & more from any device, on your terms. http://Nextcloud.com start:
end: >- A safe home for all your data. Access & share your files, calendars,
NextCloud is deployed and will be available on few minutes as contacts, mail & more from any device, on your terms. http://Nextcloud.com
$$cap_appname. end: >-
NextCloud is deployed and will be available on few minutes as
$$cap_appname.
If you set the cors sections to https, please enable https on your app. If you do not activate it you will have an error. If you set the cors sections to https, please enable https on your app. If you do not activate it you will have an error.
For better performances and compliance, you can add "add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;" below "proxy_set_header X-Forwarded-Proto $scheme;" into the nginx configuration. For better performances and compliance, you can add "add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;" below "proxy_set_header X-Forwarded-Proto $scheme;" into the nginx configuration.
displayName: nextcloud displayName: nextcloud
isOfficial: true isOfficial: true
description: Nextcloud is a suite of client-server software for creating and description: Nextcloud is a suite of client-server software for creating and
using file hosting services using file hosting services
documentation: Taken from https://hub.docker.com/_/nextcloud documentation: Taken from https://hub.docker.com/_/nextcloud

View File

@ -1,39 +1,41 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: sonatype/nexus3:$$cap__version image: sonatype/nexus3:$$cap__version
volumes: volumes:
- $$cap_appname-data:/nexus-data - $$cap_appname-data:/nexus-data
restart: always restart: always
environment: {} environment: {}
caproverExtra: caproverExtra:
containerHttpPort: "8081" containerHttpPort: '8081'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap__version - id: $$cap__version
label: Version label: Version
defaultValue: 3.15.2 defaultValue: 3.15.2
description: "Additional tags can be found here: description: 'Additional tags can be found here:
https://hub.docker.com/r/sonatype/nexus3/tags" https://hub.docker.com/r/sonatype/nexus3/tags'
instructions: instructions:
start: >- start: >-
Nexus is the world's first and only universal repository solution that's Nexus is the world's first and only universal repository solution that's
FREE to use. It supports Bower, Docker, Git LFS, Maven, npm, NuGet, PyPI, FREE to use. It supports Bower, Docker, Git LFS, Maven, npm, NuGet, PyPI,
Ruby Gems, Yum, Apt, Conan, R, CPAN, Raw (Universal),P2 ,Helm and ELPA. Ruby Gems, Yum, Apt, Conan, R, CPAN, Raw (Universal),P2 ,Helm and ELPA.
Enter your Nexus Configuration parameters and click on next. Enter your Nexus Configuration parameters and click on next.
Notes: Notes:
Default credentials are: admin / admin123 Default credentials are: admin / admin123
It can take some time (2-3 minutes) for the service to launch in a new container. Check the "Deployment" tab logs to determine once Nexus is ready. It can take some time (2-3 minutes) for the service to launch in a new container. Check the "Deployment" tab logs to determine once Nexus is ready.
end: Nexus is deployed and available as srv-captain--$$cap_appname:8081 to other end:
apps. Nexus is deployed and available as srv-captain--$$cap_appname:8081 to other
displayName: Nexus3 apps.
isOfficial: true displayName: Nexus3
description: Nexus is a repository manager. It allows you to proxy, collect, and isOfficial: true
manage your dependencies description:
documentation: Taken from https://hub.docker.com/r/sonatype/nexus3/ Nexus is a repository manager. It allows you to proxy, collect, and
manage your dependencies
documentation: Taken from https://hub.docker.com/r/sonatype/nexus3/

View File

@ -1,25 +1,27 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: caprover/nginx-redirect@sha256:9b1037462e62d61da7357fb6b95a01f0e6533205aca79a4ce8e02d0942369a31 image: caprover/nginx-redirect@sha256:9b1037462e62d61da7357fb6b95a01f0e6533205aca79a4ce8e02d0942369a31
restart: always restart: always
environment: environment:
RETURN_LOCATION: return 301 $$cap_redirect_url$request_uri; RETURN_LOCATION: return 301 $$cap_redirect_url$request_uri;
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_redirect_url - id: $$cap_redirect_url
label: Redirect address label: Redirect address
description: For example use https://caprover.com to redirect all request to CapRover. description: For example use https://caprover.com to redirect all request to CapRover.
defaultValue: https://caprover.com defaultValue: https://caprover.com
validRegex: /^(http:\/\/|https:\/\/)\S*$/ validRegex: /^(http:\/\/|https:\/\/)\S*$/
instructions: instructions:
start: "This is a very simply redirect nginx image. It redirects all HTTP start:
requests to the HTTP address that you define. It's useful when you want to "This is a very simply redirect nginx image. It redirects all HTTP
redirect all traffic from www.example.com to example.com, see more details requests to the HTTP address that you define. It's useful when you want to
here: https://github.com/caprover/nginx-redirect" redirect all traffic from www.example.com to example.com, see more details
end: Reverse redirect is deployed and available as $$cap_appname here: https://github.com/caprover/nginx-redirect"
displayName: Nginx Redirect end: Reverse redirect is deployed and available as $$cap_appname
isOfficial: true displayName: Nginx Redirect
description: A simple nginx image preloaded with redirect config that allows you isOfficial: true
to redirect to another URL. Useful for domain alias creation. description:
documentation: Taken from https://github.com/caprover/nginx-redirect A simple nginx image preloaded with redirect config that allows you
to redirect to another URL. Useful for domain alias creation.
documentation: Taken from https://github.com/caprover/nginx-redirect

View File

@ -1,36 +1,38 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: caprover/nginx-reverse-proxy@sha256:6bdb54abf8c3010126a532ecd6f457a1d09bdd708c40693c5762e93fe77817aa image: caprover/nginx-reverse-proxy@sha256:6bdb54abf8c3010126a532ecd6f457a1d09bdd708c40693c5762e93fe77817aa
restart: always restart: always
environment: environment:
UPSTREAM_HTTP_ADDRESS: $$cap_upstream_http_address UPSTREAM_HTTP_ADDRESS: $$cap_upstream_http_address
CLIENT_MAX_BODY_SIZE: $$cap_max_body_size CLIENT_MAX_BODY_SIZE: $$cap_max_body_size
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_upstream_http_address - id: $$cap_upstream_http_address
label: Upstream address label: Upstream address
description: >- description: >-
For example use https://caprover.com to forward all request to CapRover. For example use https://caprover.com to forward all request to CapRover.
If you're forwarding http requests to a CapRover internal app use http://srv-captain--yourappnamehere or if you want a particular port, use http://srv-captain--yourappnamehere:8080 If you're forwarding http requests to a CapRover internal app use http://srv-captain--yourappnamehere or if you want a particular port, use http://srv-captain--yourappnamehere:8080
defaultValue: "" defaultValue: ''
validRegex: /^(http:\/\/|https:\/\/)\S*$/ validRegex: /^(http:\/\/|https:\/\/)\S*$/
- id: $$cap_max_body_size - id: $$cap_max_body_size
label: Client max body size label: Client max body size
description: Sets the maximum allowed size of the client request body, specified description:
in the “Content-Length” request header field. If the size in a request Sets the maximum allowed size of the client request body, specified
exceeds the configured value, the 413 (Request Entity Too Large) error in the “Content-Length” request header field. If the size in a request
is returned to the client. Please be aware that browsers cannot exceeds the configured value, the 413 (Request Entity Too Large) error
correctly display this error. Setting size to 0 disables checking of is returned to the client. Please be aware that browsers cannot
client request body size. correctly display this error. Setting size to 0 disables checking of
defaultValue: 256M client request body size.
validRegex: /^\d+M$/ defaultValue: 256M
instructions: validRegex: /^\d+M$/
start: This is a very simply reverse proxy image. It forwards all HTTP requests instructions:
to the HTTP address that you define. start:
end: Reverse Proxy is deployed and available as $$cap_appname This is a very simply reverse proxy image. It forwards all HTTP requests
displayName: Nginx Reverse Proxy to the HTTP address that you define.
isOfficial: true end: Reverse Proxy is deployed and available as $$cap_appname
description: A simple nginx image preloaded with reverse proxy config that displayName: Nginx Reverse Proxy
allows you to proxy a URL to another URL isOfficial: true
documentation: Taken from https://github.com/caprover/nginx-reverse-proxy description: A simple nginx image preloaded with reverse proxy config that
allows you to proxy a URL to another URL
documentation: Taken from https://github.com/caprover/nginx-reverse-proxy

View File

@ -1,70 +1,73 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-mongodb: $$cap_appname-mongodb:
image: mongo:$$cap_mongo_version image: mongo:$$cap_mongo_version
volumes: volumes:
- $$cap_appname-db-data:/data/db - $$cap_appname-db-data:/data/db
- $$cap_appname-db-config:/data/configdb - $$cap_appname-db-config:/data/configdb
restart: always restart: always
environment: environment:
MONGO_INITDB_ROOT_USERNAME: root MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-nightscout: $$cap_appname-nightscout:
depends_on: depends_on:
- $$cap_appname-mongodb - $$cap_appname-mongodb
restart: always restart: always
environment: environment:
PORT: "1337" PORT: '1337'
INSECURE_USE_HTTP: "true" INSECURE_USE_HTTP: 'true'
MONGO_CONNECTION: mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-mongodb:27017/nightscout?authSource=admin MONGO_CONNECTION: mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-mongodb:27017/nightscout?authSource=admin
API_SECRET: $$cap_api_secret API_SECRET: $$cap_api_secret
BASE_URL: https://replace.me.in.settings.of.website.com BASE_URL: https://replace.me.in.settings.of.website.com
DISPLAY_UNITS: mg/dl DISPLAY_UNITS: mg/dl
caproverExtra: caproverExtra:
containerHttpPort: "1337" containerHttpPort: '1337'
dockerfileLines: dockerfileLines:
- FROM node:10 - FROM node:10
- RUN mkdir -p /opt/app - RUN mkdir -p /opt/app
- WORKDIR /opt/app - WORKDIR /opt/app
- RUN git clone git://github.com/nightscout/cgm-remote-monitor.git - RUN git clone git://github.com/nightscout/cgm-remote-monitor.git
/opt/app /opt/app
- RUN cd /opt/app && git checkout $$cap_nighscout_version && rm -rf .git - RUN cd /opt/app && git checkout $$cap_nighscout_version && rm -rf .git
- RUN cd /opt/app && npm install && npm run postinstall && npm run env - RUN cd /opt/app && npm install && npm run postinstall && npm run env
- EXPOSE 1337 - EXPOSE 1337
- CMD ["node", "server.js"] - CMD ["node", "server.js"]
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mongo_version - id: $$cap_mongo_version
label: MongoDB Version label: MongoDB Version
defaultValue: "4" defaultValue: '4'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mongo/tags/ https://hub.docker.com/r/library/mongo/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mongo_password - id: $$cap_mongo_password
label: MongoDB password label: MongoDB password
description: Only use alphanumeric chars. description: Only use alphanumeric chars.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_nighscout_version - id: $$cap_nighscout_version
label: Nighscout Version label: Nighscout Version
defaultValue: 0.11.1 defaultValue: 0.11.1
description: Check out their page for the valid tags description: Check out their page for the valid tags
https://github.com/nightscout/cgm-remote-monitor/releases https://github.com/nightscout/cgm-remote-monitor/releases
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_api_secret - id: $$cap_api_secret
label: API key label: API key
description: Use a random string (alphanumberic) - minimum 12 characters. See description:
documentation for more details. Use a random string (alphanumberic) - minimum 12 characters. See
validRegex: /^([a-zA-Z0-9]){12,}$/ documentation for more details.
instructions: validRegex: /^([a-zA-Z0-9]){12,}$/
start: Nightscout acts as a web-based CGM (Continuous Glucose Monitor) to allow instructions:
multiple caregivers to remotely view a patient's glucose data in real start:
time. Nightscout acts as a web-based CGM (Continuous Glucose Monitor) to allow
end: Nightscout is deployed and available as $$cap_appname-nightscout. multiple caregivers to remotely view a patient's glucose data in real
displayName: "" time.
isOfficial: true end: Nightscout is deployed and available as $$cap_appname-nightscout.
description: Nightscout is a free and open-source project, and associated social displayName: ''
movement, that enables accessing and working with continuous glucose monitor isOfficial: true
data description:
documentation: Built from scratch (https://github.com/nightscout/cgm-remote-monitor) Nightscout is a free and open-source project, and associated social
movement, that enables accessing and working with continuous glucose monitor
data
documentation: Built from scratch (https://github.com/nightscout/cgm-remote-monitor)

View File

@ -1,58 +1,59 @@
captainVersion: 4 captainVersion: 4
networks: networks:
db: db:
driver: bridge driver: bridge
search: search:
driver: bridge driver: bridge
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: odoo POSTGRES_USER: odoo
POSTGRES_PASSWORD: $$cap_postgres_password POSTGRES_PASSWORD: $$cap_postgres_password
POSTGRES_DB: postgres POSTGRES_DB: postgres
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: odoo:$$cap_odoo_version image: odoo:$$cap_odoo_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
volumes: volumes:
- $$cap_appname-odoo-web-data:/var/lib/odoo - $$cap_appname-odoo-web-data:/var/lib/odoo
- $$cap_appname-config:/etc/odoo - $$cap_appname-config:/etc/odoo
- $$cap_appname-addons:/mnt/extra-addons - $$cap_appname-addons:/mnt/extra-addons
restart: always restart: always
environment: environment:
POSTGRES_PASSWORD: $$cap_postgres_password POSTGRES_PASSWORD: $$cap_postgres_password
HOST: srv-captain--$$cap_appname-db HOST: srv-captain--$$cap_appname-db
caproverExtra: caproverExtra:
containerHttpPort: "8069" containerHttpPort: '8069'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
defaultValue: 9.6.18-alpine defaultValue: 9.6.18-alpine
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_postgres_password - id: $$cap_postgres_password
label: Postgres Password label: Postgres Password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_odoo_version - id: $$cap_odoo_version
label: Odoo Version label: Odoo Version
defaultValue: "13.0" defaultValue: '13.0'
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/_/odoo?tab=tags https://hub.docker.com/_/odoo?tab=tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: Odoo is an open source product CRM start: Odoo is an open source product CRM
end: Odoo is deployed and the dashboard is available from end: Odoo is deployed and the dashboard is available from
http://$$cap_appname.$$cap_root_domain. http://$$cap_appname.$$cap_root_domain.
isOfficial: true isOfficial: true
description: Odoo, formerly known as OpenERP, is a suite of open-source business description:
apps written in Python and released under the AGPL license. Odoo, formerly known as OpenERP, is a suite of open-source business
documentation: https://hub.docker.com/_/odoo?tab=description apps written in Python and released under the AGPL license.
documentation: https://hub.docker.com/_/odoo?tab=description

View File

@ -1,112 +1,114 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-redis: $$cap_appname-redis:
image: redis:5 image: redis:5
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-fakes3: $$cap_appname-fakes3:
image: lphoward/fake-s3 image: lphoward/fake-s3
volumes: volumes:
- $$cap_appname-fakes3:/fakes3_root - $$cap_appname-fakes3:/fakes3_root
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-db: $$cap_appname-db:
image: postgres:12.2 image: postgres:12.2
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: $$cap_db_user POSTGRES_USER: $$cap_db_user
POSTGRES_PASSWORD: $$cap_db_pass POSTGRES_PASSWORD: $$cap_db_pass
POSTGRES_DB: outline POSTGRES_DB: outline
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-outline: $$cap_appname-outline:
depends_on: depends_on:
- $$cap_appname-fakes3 - $$cap_appname-fakes3
- $$cap_appname-redis - $$cap_appname-redis
- $$cap_appname-db - $$cap_appname-db
image: outlinewiki/outline:$$cap_outline_version image: outlinewiki/outline:$$cap_outline_version
environment: environment:
SECRET_KEY: $$cap_secret_key SECRET_KEY: $$cap_secret_key
UTILS_SECRET: $$cap_utils_secret UTILS_SECRET: $$cap_utils_secret
AWS_ACCESS_KEY_ID: get_a_key_from_aws AWS_ACCESS_KEY_ID: get_a_key_from_aws
AWS_SECRET_ACCESS_KEY: get_the_secret_of_above_key AWS_SECRET_ACCESS_KEY: get_the_secret_of_above_key
AWS_REGION: xx-xxxx-x AWS_REGION: xx-xxxx-x
AWS_S3_UPLOAD_BUCKET_URL: http://srv-captain--$$cap_appname-fakes3:4569 AWS_S3_UPLOAD_BUCKET_URL: http://srv-captain--$$cap_appname-fakes3:4569
AWS_S3_UPLOAD_BUCKET_NAME: bucket_name_here AWS_S3_UPLOAD_BUCKET_NAME: bucket_name_here
AWS_S3_UPLOAD_MAX_SIZE: "26214400" AWS_S3_UPLOAD_MAX_SIZE: '26214400'
AWS_S3_ACL: private AWS_S3_ACL: private
SLACK_KEY: $$cap_slack_key SLACK_KEY: $$cap_slack_key
SLACK_SECRET: $$cap_slack_secret SLACK_SECRET: $$cap_slack_secret
GOOGLE_CLIENT_ID: $$cap_google_client_id GOOGLE_CLIENT_ID: $$cap_google_client_id
GOOGLE_CLIENT_SECRET: $$cap_google_client_secret GOOGLE_CLIENT_SECRET: $$cap_google_client_secret
FORCE_HTTPS: "false" FORCE_HTTPS: 'false'
DEPLOYMENT: self DEPLOYMENT: self
ENABLE_UPDATES: "false" ENABLE_UPDATES: 'false'
SUBDOMAINS_ENABLED: "false" SUBDOMAINS_ENABLED: 'false'
WEBSOCKETS_ENABLED: "false" WEBSOCKETS_ENABLED: 'false'
DEBUG: cache,presenters,events DEBUG: cache,presenters,events
URL: https://$$cap_appname-outline.$$cap_root_domain URL: https://$$cap_appname-outline.$$cap_root_domain
PORT: "80" PORT: '80'
REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379 REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379
DATABASE_URL_TEST: postgres://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:5432/outline-test DATABASE_URL_TEST: postgres://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:5432/outline-test
DATABASE_URL: postgres://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:5432/outline DATABASE_URL: postgres://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:5432/outline
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: outlineuser defaultValue: outlineuser
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{8,}/ validRegex: /.{8,}/
- id: $$cap_slack_key - id: $$cap_slack_key
label: Slack Key label: Slack Key
description: "IMPORTANT: You need to, at least, set one 3rd party login method, description:
either Slack or Google" 'IMPORTANT: You need to, at least, set one 3rd party login method,
defaultValue: get_a_key_from_slack either Slack or Google'
- id: $$cap_slack_secret defaultValue: get_a_key_from_slack
label: Slack Secret - id: $$cap_slack_secret
description: "" label: Slack Secret
defaultValue: get_the_secret_of_above_key description: ''
- id: $$cap_google_client_id defaultValue: get_the_secret_of_above_key
label: Google Client ID - id: $$cap_google_client_id
- id: $$cap_google_client_secret label: Google Client ID
label: Google Client Secret - id: $$cap_google_client_secret
description: "" label: Google Client Secret
- id: $$cap_secret_key description: ''
label: SECRET_KEY - id: $$cap_secret_key
description: "Run this command to generate a key: openssl rand -hex 32" label: SECRET_KEY
defaultValue: c63eaeed7ee7459098e2901ed87c8b70817428b85fbe3ef59cb6a79abb2bbf4a description: 'Run this command to generate a key: openssl rand -hex 32'
validRegex: /^([0-9a-f]){64}$/ defaultValue: c63eaeed7ee7459098e2901ed87c8b70817428b85fbe3ef59cb6a79abb2bbf4a
- id: $$cap_utils_secret validRegex: /^([0-9a-f]){64}$/
label: UTILS_SECRET - id: $$cap_utils_secret
description: "Run this command to generate a key: openssl rand -hex 32" label: UTILS_SECRET
defaultValue: c9b4d178130f53efc7419eaec9a2e764481269c9602c2ef2e541bdadc63b5bbf description: 'Run this command to generate a key: openssl rand -hex 32'
validRegex: /^([0-9a-f]){64}$/ defaultValue: c9b4d178130f53efc7419eaec9a2e764481269c9602c2ef2e541bdadc63b5bbf
- id: $$cap_outline_version validRegex: /^([0-9a-f]){64}$/
label: Outline Version - id: $$cap_outline_version
defaultValue: version-0.41.0 label: Outline Version
description: Check out their page for the valid tags defaultValue: version-0.41.0
https://hub.docker.com/r/outlinewiki/outline/tags description: Check out their page for the valid tags
validRegex: /^([^\s^\/])+$/ https://hub.docker.com/r/outlinewiki/outline/tags
instructions: validRegex: /^([^\s^\/])+$/
start: Outline is an open, extensible, wiki for your team built using React and instructions:
Node.js. start:
end: > Outline is an open, extensible, wiki for your team built using React and
IMPORTANT: before you start using Outline, you need to Node.js.
end: >
IMPORTANT: before you start using Outline, you need to
1) Enable HTTPS 1) Enable HTTPS
2) Force HTTPS 2) Force HTTPS
3) Enable Websocket in $$cap_appname-outline. 3) Enable Websocket in $$cap_appname-outline.
4) Run database migration `npm run sequelize:migrate` within the $$cap_appname-outline docker container. 4) Run database migration `npm run sequelize:migrate` within the $$cap_appname-outline docker container.
You can customize more settings by environmental variables described here: https://github.com/outline/outline/blob/0deecfac446c37545e0787b3d32062e608a950ab/.env.sample You can customize more settings by environmental variables described here: https://github.com/outline/outline/blob/0deecfac446c37545e0787b3d32062e608a950ab/.env.sample
IMPORTANT: It will take up to 2 minutes for it to be ready. Before that, you might see a 502 error page. IMPORTANT: It will take up to 2 minutes for it to be ready. Before that, you might see a 502 error page.
displayName: Outline displayName: Outline
isOfficial: true isOfficial: true
description: An open, extensible, wiki for your team built using React and Node.js. description: An open, extensible, wiki for your team built using React and Node.js.
documentation: Taken from https://github.com/outline/outline/blob/master/docker-compose.yml documentation: Taken from https://github.com/outline/outline/blob/master/docker-compose.yml

View File

@ -1,94 +1,96 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-mongodb: $$cap_appname-mongodb:
image: mongo:$$cap_mongo_version image: mongo:$$cap_mongo_version
volumes: volumes:
- $$cap_appname-db-data:/data/db - $$cap_appname-db-data:/data/db
- $$cap_appname-db-config:/data/configdb - $$cap_appname-db-config:/data/configdb
restart: always restart: always
environment: environment:
MONGO_INITDB_ROOT_USERNAME: root MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-parse: $$cap_appname-parse:
depends_on: depends_on:
- $$cap_appname-mongodb - $$cap_appname-mongodb
image: parseplatform/parse-server:$$cap_parse_version image: parseplatform/parse-server:$$cap_parse_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-parse-cloud:/parse-server/cloud - $$cap_appname-parse-cloud:/parse-server/cloud
- $$cap_appname-parse-config:/parse-server/config - $$cap_appname-parse-config:/parse-server/config
environment: environment:
PORT: "8080" PORT: '8080'
PARSE_SERVER_APPLICATION_ID: $$cap_app_id PARSE_SERVER_APPLICATION_ID: $$cap_app_id
PARSE_SERVER_MASTER_KEY: $$cap_master_key PARSE_SERVER_MASTER_KEY: $$cap_master_key
PARSE_SERVER_DATABASE_URI: mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-mongodb:27017/parse?authSource=admin PARSE_SERVER_DATABASE_URI: mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-mongodb:27017/parse?authSource=admin
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
$$cap_appname-parse-dashboard: $$cap_appname-parse-dashboard:
depends_on: depends_on:
- $$cap_appname-parse - $$cap_appname-parse
image: parseplatform/parse-dashboard:$$cap_parse_dashboard_version image: parseplatform/parse-dashboard:$$cap_parse_dashboard_version
restart: always restart: always
environment: environment:
PORT: "4040" PORT: '4040'
PARSE_DASHBOARD_SERVER_URL: https://$$cap_appname-parse.$$cap_root_domain/parse PARSE_DASHBOARD_SERVER_URL: https://$$cap_appname-parse.$$cap_root_domain/parse
PARSE_DASHBOARD_MASTER_KEY: $$cap_master_key PARSE_DASHBOARD_MASTER_KEY: $$cap_master_key
PARSE_DASHBOARD_APP_ID: $$cap_app_id PARSE_DASHBOARD_APP_ID: $$cap_app_id
PARSE_DASHBOARD_APP_NAME: $$cap_appname-parse PARSE_DASHBOARD_APP_NAME: $$cap_appname-parse
PARSE_DASHBOARD_USER_ID: caprover PARSE_DASHBOARD_USER_ID: caprover
PARSE_DASHBOARD_ALLOW_INSECURE_HTTP: "true" PARSE_DASHBOARD_ALLOW_INSECURE_HTTP: 'true'
PARSE_DASHBOARD_USER_PASSWORD: $$cap_parse_dashboard_password PARSE_DASHBOARD_USER_PASSWORD: $$cap_parse_dashboard_password
caproverExtra: caproverExtra:
containerHttpPort: "4040" containerHttpPort: '4040'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_mongo_version - id: $$cap_mongo_version
label: MongoDB Version label: MongoDB Version
defaultValue: "4" defaultValue: '4'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mongo/tags/ https://hub.docker.com/r/library/mongo/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mongo_password - id: $$cap_mongo_password
label: MongoDB password label: MongoDB password
description: Only use alphanumeric chars. description: Only use alphanumeric chars.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_parse_dashboard_version - id: $$cap_parse_dashboard_version
label: Parse Dashboard Version label: Parse Dashboard Version
defaultValue: 2.0.5 defaultValue: 2.0.5
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/parseplatform/parse-dashboard/tags https://hub.docker.com/r/parseplatform/parse-dashboard/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_parse_dashboard_password - id: $$cap_parse_dashboard_password
label: Parse Dashboard Password label: Parse Dashboard Password
validRegex: /^\S{8,}$/ validRegex: /^\S{8,}$/
- id: $$cap_parse_version - id: $$cap_parse_version
label: Parse Version label: Parse Version
defaultValue: 3.1.3 defaultValue: 3.1.3
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/parseplatform/parse-server/tags https://hub.docker.com/r/parseplatform/parse-server/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_app_id - id: $$cap_app_id
label: Application ID label: Application ID
description: Use a random string. See Parse documentation for more details. description: Use a random string. See Parse documentation for more details.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_master_key - id: $$cap_master_key
label: Master Key label: Master Key
description: Use a random string. See Parse documentation for more details. description: Use a random string. See Parse documentation for more details.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
instructions: instructions:
start: >- start: >-
Parse Server is an open source version of the Parse backend that can be Parse Server is an open source version of the Parse backend that can be
deployed to any infrastructure that can run Node.js. For more information deployed to any infrastructure that can run Node.js. For more information
on Parse platform see http://parseplatform.org on Parse platform see http://parseplatform.org
Enter your Parse Configuration parameters and click on next. A MongoDB (database) and a Parse container will be created for you. The process will take about a minute for the process to finish. Enter your Parse Configuration parameters and click on next. A MongoDB (database) and a Parse container will be created for you. The process will take about a minute for the process to finish.
end: 'Parse is deployed! IMPORTANT: Make sure to enable HTTPS and Force HTTPS on end:
your apps before accessing them! Your Parse Dashboard username is 'Parse is deployed! IMPORTANT: Make sure to enable HTTPS and Force HTTPS on
"caprover"' your apps before accessing them! Your Parse Dashboard username is
displayName: "" "caprover"'
isOfficial: true displayName: ''
description: Parse Server is an open source Backend-as-a-Service(BaaS) framework isOfficial: true
initially developed by Facebook description:
documentation: Taken from https://hub.docker.com/r/parseplatform/parse-server/ Parse Server is an open source Backend-as-a-Service(BaaS) framework
initially developed by Facebook
documentation: Taken from https://hub.docker.com/r/parseplatform/parse-server/

View File

@ -1,95 +1,96 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mariadb:10.3 image: mariadb:10.3
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_root_pass MYSQL_ROOT_PASSWORD: $$cap_db_root_pass
MYSQL_DATABASE: passbolt_oca MYSQL_DATABASE: passbolt_oca
MYSQL_USER: $$cap_db_user MYSQL_USER: $$cap_db_user
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
volumes: volumes:
- $$cap_appname-db:/var/lib/mysql - $$cap_appname-db:/var/lib/mysql
$$cap_appname-pb: $$cap_appname-pb:
image: passbolt/passbolt:2.12.1-debian image: passbolt/passbolt:2.12.1-debian
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
environment: environment:
DATASOURCES_DEFAULT_HOST: srv-captain--$$cap_appname-db:3306 DATASOURCES_DEFAULT_HOST: srv-captain--$$cap_appname-db:3306
DATASOURCES_DEFAULT_DATABASE: passbolt_oca DATASOURCES_DEFAULT_DATABASE: passbolt_oca
DATASOURCES_DEFAULT_USERNAME: $$cap_db_user DATASOURCES_DEFAULT_USERNAME: $$cap_db_user
DATASOURCES_DEFAULT_PASSWORD: $$cap_db_pass DATASOURCES_DEFAULT_PASSWORD: $$cap_db_pass
APP_FULL_BASE_URL: $$cap_url APP_FULL_BASE_URL: $$cap_url
EMAIL_TRANSPORT_DEFAULT_HOST: $$cap_email_host EMAIL_TRANSPORT_DEFAULT_HOST: $$cap_email_host
EMAIL_TRANSPORT_DEFAULT_PORT: $$cap_email_port EMAIL_TRANSPORT_DEFAULT_PORT: $$cap_email_port
EMAIL_TRANSPORT_DEFAULT_USERNAME: $$cap_email_user EMAIL_TRANSPORT_DEFAULT_USERNAME: $$cap_email_user
EMAIL_TRANSPORT_DEFAULT_FROM: $$cap_email_user EMAIL_TRANSPORT_DEFAULT_FROM: $$cap_email_user
EMAIL_TRANSPORT_DEFAULT_PASSWORD: $$cap_email_pass EMAIL_TRANSPORT_DEFAULT_PASSWORD: $$cap_email_pass
EMAIL_TRANSPORT_DEFAULT_TLS: $$cap_email_tls EMAIL_TRANSPORT_DEFAULT_TLS: $$cap_email_tls
volumes: volumes:
- $$cap_appname-gpg:/var/www/passbolt/config/gpg - $$cap_appname-gpg:/var/www/passbolt/config/gpg
- $$cap_appname-images:/var/www/passbolt/webroot/img/public - $$cap_appname-images:/var/www/passbolt/webroot/img/public
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_db_root_pass - id: $$cap_db_root_pass
label: Database Root Password label: Database Root Password
defaultValue: rootpassword defaultValue: rootpassword
- id: $$cap_db_user - id: $$cap_db_user
label: Database Username label: Database Username
defaultValue: passbolt defaultValue: passbolt
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database Password label: Database Password
defaultValue: password defaultValue: password
- id: $$cap_pb_version - id: $$cap_pb_version
label: Passbolt Version label: Passbolt Version
defaultValue: 2.12.1-debian defaultValue: 2.12.1-debian
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/passbolt/passbolt/tags/ https://hub.docker.com/r/passbolt/passbolt/tags/
- id: $$cap_url - id: $$cap_url
label: Passbolt URL label: Passbolt URL
description: "This is VERY IMPORTANT, if you won't use a custom domain (ex: description:
km.yourdomain.com), after deployed you will need to go into the App "This is VERY IMPORTANT, if you won't use a custom domain (ex:
Configs and update the ENV APP_FULL_BASE_URL with the external URL that km.yourdomain.com), after deployed you will need to go into the App
CapRover assigned to your App, otherwhise it won't work" Configs and update the ENV APP_FULL_BASE_URL with the external URL that
defaultValue: https://yourdomain.com CapRover assigned to your App, otherwhise it won't work"
- id: $$cap_email_host defaultValue: https://yourdomain.com
label: Email SMTP Server - id: $$cap_email_host
description: "Host used as smtp server. More info: label: Email SMTP Server
https://help.passbolt.com/configure/email/setup." description: 'Host used as smtp server. More info:
defaultValue: smtp.gmail.com https://help.passbolt.com/configure/email/setup.'
- id: $$cap_email_port defaultValue: smtp.gmail.com
label: Email SMTP Port - id: $$cap_email_port
description: "Port used with the smtp server. More info: label: Email SMTP Port
https://help.passbolt.com/configure/email/setup" description: 'Port used with the smtp server. More info:
defaultValue: "587" https://help.passbolt.com/configure/email/setup'
- id: $$cap_email_user defaultValue: '587'
label: Email Username - id: $$cap_email_user
defaultValue: user@gmail.com label: Email Username
- id: $$cap_email_pass defaultValue: user@gmail.com
label: Email Password - id: $$cap_email_pass
defaultValue: password label: Email Password
- id: $$cap_email_tls defaultValue: password
label: TLS Enabled - id: $$cap_email_tls
defaultValue: "true" label: TLS Enabled
instructions: defaultValue: 'true'
start: >- instructions:
Passbolt is a free and open source password manager that allows team start: >-
members to store and share credentials securely. Passbolt is a free and open source password manager that allows team
members to store and share credentials securely.
Enter your Passbolt configuration parameters and click on next. A MariaDB (database) and a Passbolt container will be created for you. The process will take about a minute for the process to finish. Enter your Passbolt configuration parameters and click on next. A MariaDB (database) and a Passbolt container will be created for you. The process will take about a minute for the process to finish.
end: >- end: >-
Passbolt is deployed and available as $$cap_appname-pb . Passbolt is deployed and available as $$cap_appname-pb .
IMPORTANT: It will take up to 2 minutes for Passbolt to be ready. Before that, you might see a 502 error page. IMPORTANT: It will take up to 2 minutes for Passbolt to be ready. Before that, you might see a 502 error page.
Note: Once the container is running create your first admin user running the following command in the terminal: Note: Once the container is running create your first admin user running the following command in the terminal:
$ docker exec <containerID> su -m -c '/var/www/passbolt/bin/cake passbolt register_user -u your@email.com -f yourname -l surname -r admin' -s /bin/sh www-data $ docker exec <containerID> su -m -c '/var/www/passbolt/bin/cake passbolt register_user -u your@email.com -f yourname -l surname -r admin' -s /bin/sh www-data
This registration command will return a single use url required to continue the web browser setup and finish the registration. Your passbolt instance should be available browsing https://yourdomain.com This registration command will return a single use url required to continue the web browser setup and finish the registration. Your passbolt instance should be available browsing https://yourdomain.com
displayName: Passbolt displayName: Passbolt
isOfficial: true isOfficial: true
description: Passbolt is a free and open source password manager that allows description: Passbolt is a free and open source password manager that allows
team members to store and share credentials securely. team members to store and share credentials securely.
documentation: Taken from https://hub.docker.com/r/passbolt/passbolt. documentation: Taken from https://hub.docker.com/r/passbolt/passbolt.

View File

@ -1,113 +1,114 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: $$cap_db_user POSTGRES_USER: $$cap_db_user
POSTGRES_PASSWORD: $$cap_db_pass POSTGRES_PASSWORD: $$cap_db_pass
POSTGRES_DB: peertube POSTGRES_DB: peertube
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-redis: $$cap_appname-redis:
image: redis:$$cap_redis_version image: redis:$$cap_redis_version
volumes: volumes:
- $$cap_appname-redis-data:/data - $$cap_appname-redis-data:/data
restart: always restart: always
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
- $$cap_appname-redis - $$cap_appname-redis
image: chocobozzz/peertube:$$cap_peertube_version image: chocobozzz/peertube:$$cap_peertube_version
volumes: volumes:
- $$cap_appname-peertube-data:/data - $$cap_appname-peertube-data:/data
- $$cap_appname-peertube-config:/config - $$cap_appname-peertube-config:/config
restart: always restart: always
environment: environment:
PEERTUBE_DB_USERNAME: $$cap_db_user PEERTUBE_DB_USERNAME: $$cap_db_user
PEERTUBE_DB_PASSWORD: $$cap_db_pass PEERTUBE_DB_PASSWORD: $$cap_db_pass
PEERTUBE_DB_HOSTNAME: srv-captain--$$cap_appname-db PEERTUBE_DB_HOSTNAME: srv-captain--$$cap_appname-db
PEERTUBE_REDIS_HOSTNAME: srv-captain--$$cap_appname-redis PEERTUBE_REDIS_HOSTNAME: srv-captain--$$cap_appname-redis
PEERTUBE_WEBSERVER_HOSTNAME: $$cap_appname.$$cap_root_domain PEERTUBE_WEBSERVER_HOSTNAME: $$cap_appname.$$cap_root_domain
PEERTUBE_WEBSERVER_PORT: "443" PEERTUBE_WEBSERVER_PORT: '443'
PEERTUBE_WEBSERVER_HTTPS: "true" PEERTUBE_WEBSERVER_HTTPS: 'true'
PEERTUBE_TRUST_PROXY: '["127.0.0.1", "loopback", "172.18.0.0/16"]' PEERTUBE_TRUST_PROXY: '["127.0.0.1", "loopback", "172.18.0.0/16"]'
PEERTUBE_SMTP_USERNAME: $$cap_smtp_username PEERTUBE_SMTP_USERNAME: $$cap_smtp_username
PEERTUBE_SMTP_PASSWORD: $$cap_smtp_password PEERTUBE_SMTP_PASSWORD: $$cap_smtp_password
PEERTUBE_SMTP_HOSTNAME: $$cap_smtp_hostname PEERTUBE_SMTP_HOSTNAME: $$cap_smtp_hostname
PEERTUBE_SMTP_PORT: $$cap_smtp_port PEERTUBE_SMTP_PORT: $$cap_smtp_port
PEERTUBE_SMTP_FROM: $$cap_smtp_from PEERTUBE_SMTP_FROM: $$cap_smtp_from
PEERTUBE_SMTP_TLS: $$cap_smtp_tls PEERTUBE_SMTP_TLS: $$cap_smtp_tls
PEERTUBE_SMTP_DISABLE_STARTTLS: $$cap_smtp_starttls PEERTUBE_SMTP_DISABLE_STARTTLS: $$cap_smtp_starttls
PEERTUBE_ADMIN_EMAIL: $$cap_admin_email PEERTUBE_ADMIN_EMAIL: $$cap_admin_email
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: peertubeuser defaultValue: peertubeuser
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgress Version label: Postgress Version
defaultValue: 10-alpine defaultValue: 10-alpine
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/library/postgress/tags/ https://hub.docker.com/r/library/postgress/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_redis_version - id: $$cap_redis_version
label: Redis Version label: Redis Version
defaultValue: 4-alpine defaultValue: 4-alpine
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/library/redis/tags/ https://hub.docker.com/r/library/redis/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_peertube_version - id: $$cap_peertube_version
label: Peertube Version label: Peertube Version
defaultValue: production-stretch defaultValue: production-stretch
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/chocobozzz/peertube/tags/ https://hub.docker.com/r/chocobozzz/peertube/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_smtp_username - id: $$cap_smtp_username
label: SMTP username label: SMTP username
defaultValue: "" defaultValue: ''
- id: $$cap_smtp_from - id: $$cap_smtp_from
label: SMTP from label: SMTP from
defaultValue: "" defaultValue: ''
- id: $$cap_smtp_password - id: $$cap_smtp_password
label: SMTP password label: SMTP password
defaultValue: "" defaultValue: ''
- id: $$cap_smtp_hostname - id: $$cap_smtp_hostname
label: SMTP hostname label: SMTP hostname
defaultValue: "" defaultValue: ''
- id: $$cap_smtp_port - id: $$cap_smtp_port
label: SMTP port label: SMTP port
defaultValue: "" defaultValue: ''
- id: $$cap_smtp_tls - id: $$cap_smtp_tls
label: SMTP TLS label: SMTP TLS
defaultValue: "false" defaultValue: 'false'
- id: $$cap_smtp_starttls - id: $$cap_smtp_starttls
label: SMTP STARTTLS label: SMTP STARTTLS
defaultValue: "false" defaultValue: 'false'
- id: $$cap_admin_email - id: $$cap_admin_email
label: administrator email label: administrator email
defaultValue: "" defaultValue: ''
instructions: instructions:
start: "PeerTube is a free, decentralized and federated video platform. (Github start:
: https://github.com/Chocobozzz/PeerTube/)" 'PeerTube is a free, decentralized and federated video platform. (Github
end: > : https://github.com/Chocobozzz/PeerTube/)'
Peertube is deployed and available as $$cap_appname. end: >
Peertube is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for peertube to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for peertube to be ready. Before that, you might see 502 error page.
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: PeerTube is a decentralized video hosting network, based on description: PeerTube is a decentralized video hosting network, based on
free/libre software free/libre software
documentation: Taken from documentation: Taken from
https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/docker-compose.yml https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/docker-compose.yml

View File

@ -1,29 +1,30 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: thajeztah/pgadmin4:$$cap_pgadmin4_version image: thajeztah/pgadmin4:$$cap_pgadmin4_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/pgadmin - $$cap_appname-data:/pgadmin
caproverExtra: caproverExtra:
containerHttpPort: "5050" containerHttpPort: '5050'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_pgadmin4_version - id: $$cap_pgadmin4_version
label: Version Tag label: Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/thajeztah/pgadmin4/tags/ https://hub.docker.com/r/thajeztah/pgadmin4/tags/
defaultValue: "3.6" defaultValue: '3.6'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
pgAdmin is the most popular and feature rich Open Source administration pgAdmin is the most popular and feature rich Open Source administration
and development platform for PostgreSQL, the most advanced Open Source and development platform for PostgreSQL, the most advanced Open Source
database in the world. database in the world.
Enter your Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your Configuration parameters and click on next. It will take about a minute for the process to finish.
end: pgAdmin is deployed and available as $$cap_appname end: pgAdmin is deployed and available as $$cap_appname
displayName: "" displayName: ''
description: pgAdmin 4 is a complete rewrite of pgAdmin, built using Python and description:
Javascript/jQuery pgAdmin 4 is a complete rewrite of pgAdmin, built using Python and
documentation: "Taken from https://hub.docker.com/r/thajeztah/pgadmin4 " Javascript/jQuery
documentation: 'Taken from https://hub.docker.com/r/thajeztah/pgadmin4 '

View File

@ -1,21 +1,21 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: sosedoff/pgweb:$$cap_pgweb_version image: sosedoff/pgweb:$$cap_pgweb_version
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "8081" containerHttpPort: '8081'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_pgweb_version - id: $$cap_pgweb_version
label: pgweb Version label: pgweb Version
defaultValue: 0.11.2 defaultValue: 0.11.2
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/sosedoff/pgweb/tags https://hub.docker.com/r/sosedoff/pgweb/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: pgweb is a web-based database browser for PostgreSQL, written in Go. start: pgweb is a web-based database browser for PostgreSQL, written in Go.
end: pgweb is deployed. end: pgweb is deployed.
displayName: "" displayName: ''
description: Pgweb is a web-based database browser for PostgreSQL, written in Go description: Pgweb is a web-based database browser for PostgreSQL, written in Go
documentation: See https://hub.docker.com/r/sosedoff/pgweb for details documentation: See https://hub.docker.com/r/sosedoff/pgweb for details

View File

@ -1,29 +1,31 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: photoprism/photoprism:$$cap_photoprism_version image: photoprism/photoprism:$$cap_photoprism_version
volumes: volumes:
- $$cap_appname-data:/photoprism/originals/ - $$cap_appname-data:/photoprism/originals/
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "2342" containerHttpPort: '2342'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_photoprism_version - id: $$cap_photoprism_version
label: Photoprism Version label: Photoprism Version
defaultValue: "20200427" defaultValue: '20200427'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/photoprism/photoprism/tags https://hub.docker.com/r/photoprism/photoprism/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: PhotoPrism is a server-based application for browsing, organizing and start:
sharing your personal photo collection. It makes use of the latest PhotoPrism is a server-based application for browsing, organizing and
technologies to automatically tag and find pictures without getting in sharing your personal photo collection. It makes use of the latest
your way. technologies to automatically tag and find pictures without getting in
end: Photoprism is deployed and available as $$cap_appname. Please also enable your way.
Websockets in the Caprover UI. When you log in the default password is end:
'photoprism' Photoprism is deployed and available as $$cap_appname. Please also enable
displayName: Photoprism Websockets in the Caprover UI. When you log in the default password is
isOfficial: true 'photoprism'
description: An app for browsing, organizing and sharing your personal photo collection. displayName: Photoprism
documentation: Taken from https://hub.docker.com/r/photoprism/photoprism isOfficial: true
description: An app for browsing, organizing and sharing your personal photo collection.
documentation: Taken from https://hub.docker.com/r/photoprism/photoprism

View File

@ -1,63 +1,64 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: osixia/openldap:$$cap_openldap_version image: osixia/openldap:$$cap_openldap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-db:/var/lib/ldap - $$cap_appname-db:/var/lib/ldap
environment: environment:
LDAP_ORGANISATION: $$cap_openldap_ldap-organisation LDAP_ORGANISATION: $$cap_openldap_ldap-organisation
LDAP_DOMAIN: $$cap_root_domain LDAP_DOMAIN: $$cap_root_domain
LDAP_ADMIN_PASSWORD: $$cap_openldap_ldap-admin-password LDAP_ADMIN_PASSWORD: $$cap_openldap_ldap-admin-password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-admin: $$cap_appname-admin:
image: osixia/phpldapadmin:$$cap_phpldapadmin_version image: osixia/phpldapadmin:$$cap_phpldapadmin_version
restart: always restart: always
depends_on: depends_on:
- $$cap_appname - $$cap_appname
environment: environment:
PHPLDAPADMIN_TRUST_PROXY_SSL: true PHPLDAPADMIN_TRUST_PROXY_SSL: true
PHPLDAPADMIN_LDAP_HOSTS: srv-captain--$$cap_appname PHPLDAPADMIN_LDAP_HOSTS: srv-captain--$$cap_appname
PHPLDAPADMIN_SERVER_ADMIN: $$cap_phpldapadmin_admin-email PHPLDAPADMIN_SERVER_ADMIN: $$cap_phpldapadmin_admin-email
PHPLDAPADMIN_SERVER_PATH: https://$$cap_appname-admin.$$cap_root_domain PHPLDAPADMIN_SERVER_PATH: https://$$cap_appname-admin.$$cap_root_domain
PHPLDAPADMIN_HTTPS: false PHPLDAPADMIN_HTTPS: false
caproverExtra: caproverExtra:
containerHttpPort: "80" containerHttpPort: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_openldap_version - id: $$cap_openldap_version
label: Openldap Version label: Openldap Version
defaultValue: 1.4.0 defaultValue: 1.4.0
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/osixia/openldap/tags https://hub.docker.com/r/osixia/openldap/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_openldap_ldap-organisation - id: $$cap_openldap_ldap-organisation
label: Ldap Organisation label: Ldap Organisation
description: The Organization name description: The Organization name
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_openldap_ldap-admin-password - id: $$cap_openldap_ldap-admin-password
label: The admin Password label: The admin Password
description: The admin password of the Openldap description: The admin password of the Openldap
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_phpldapadmin_version - id: $$cap_phpldapadmin_version
label: PHPLadapAdmin Version label: PHPLadapAdmin Version
defaultValue: 0.9.0 defaultValue: 0.9.0
description: Checkout their docker page for the valid tags description: Checkout their docker page for the valid tags
https://hub.docker.com/r/osixia/phpldapadmin/tags https://hub.docker.com/r/osixia/phpldapadmin/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_phpldapadmin_admin-email - id: $$cap_phpldapadmin_admin-email
label: The admin email label: The admin email
description: The admin email of the Openldap administration interface description: The admin email of the Openldap administration interface
validRegex: /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/ validRegex: /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/
instructions: instructions:
start: OpenLDAP Software is an open source implementation of the Lightweight start:
Directory Access Protocol. OpenLDAP Software is an open source implementation of the Lightweight
end: OpenLDAP is deployed and the admin interface is available on Directory Access Protocol.
http://$$cap_appname-admin.$$cap_root_domain. You can connect by adapting end: OpenLDAP is deployed and the admin interface is available on
cn=admin,dc=my-company,dc=com. If you want to access to your ldap server http://$$cap_appname-admin.$$cap_root_domain. You can connect by adapting
from outside, do not forget to add port mapping (389 for ldap with cn=admin,dc=my-company,dc=com. If you want to access to your ldap server
starttls, 636 for ldaps). from outside, do not forget to add port mapping (389 for ldap with
displayName: OpenLDAP + phpLDAPadmin starttls, 636 for ldaps).
description: OpenLDAP with administration interface displayName: OpenLDAP + phpLDAPadmin
documentation: https://github.com/osixia/docker-openldap description: OpenLDAP with administration interface
documentation: https://github.com/osixia/docker-openldap

View File

@ -1,41 +1,42 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: phpmyadmin/phpmyadmin:$$cap_pma_version image: phpmyadmin/phpmyadmin:$$cap_pma_version
restart: always restart: always
environment: environment:
PMA_ARBITRARY: "1" PMA_ARBITRARY: '1'
UPLOAD_LIMIT: $$cap_upload_limit UPLOAD_LIMIT: $$cap_upload_limit
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_upload_limit - id: $$cap_upload_limit
label: File size upload limit label: File size upload limit
description: It will override the default value for apache and php-fpm inside description:
the container. Default size is 2M It will override the default value for apache and php-fpm inside
defaultValue: 2M the container. Default size is 2M
validRegex: /^([^\s^\/])+$/ defaultValue: 2M
- id: $$cap_pma_version validRegex: /^([^\s^\/])+$/
label: PHP My Admin Version Tag - id: $$cap_pma_version
description: Check out their Docker page for the valid tags label: PHP My Admin Version Tag
https://hub.docker.com/r/phpmyadmin/phpmyadmin/tags/ description: Check out their Docker page for the valid tags
defaultValue: 5.0.2 https://hub.docker.com/r/phpmyadmin/phpmyadmin/tags/
validRegex: /^([^\s^\/])+$/ defaultValue: 5.0.2
instructions: validRegex: /^([^\s^\/])+$/
start: >- instructions:
PhpMyAdmin is the most popular web interface for MySQL & MariaDB. Simply start: >-
install PhpMyAdmin and then select what database you want to connect to. PhpMyAdmin is the most popular web interface for MySQL & MariaDB. Simply
install PhpMyAdmin and then select what database you want to connect to.
Enter your PhpMyAdmin Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your PhpMyAdmin Configuration parameters and click on next. It will take about a minute for the process to finish.
end: >- end: >-
PhpMyAdmin is deployed and available as $$cap_appname. PhpMyAdmin is deployed and available as $$cap_appname.
Note: Once deployed you can easily change the upload limit file size by modifying the value in the variable in the menu: App Configs>UPLOAD_LIMIT. Note: Once deployed you can easily change the upload limit file size by modifying the value in the variable in the menu: App Configs>UPLOAD_LIMIT.
If you need to upload files bigger than 500M you will also need to modify the option: 'client_max_body_size 500m' by clicking in the menu: HTTP Settings>Edit Default Nginx Configurations. If you need to upload files bigger than 500M you will also need to modify the option: 'client_max_body_size 500m' by clicking in the menu: HTTP Settings>Edit Default Nginx Configurations.
displayName: phpMyAdmin displayName: phpMyAdmin
isOfficial: true isOfficial: true
description: phpMyAdmin is a free software tool written in PHP, intended to description: phpMyAdmin is a free software tool written in PHP, intended to
handle the administration of MySQL over the Web handle the administration of MySQL over the Web
documentation: Taken from https://hub.docker.com/r/phpmyadmin/phpmyadmin/ documentation: Taken from https://hub.docker.com/r/phpmyadmin/phpmyadmin/

View File

@ -1,61 +1,61 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: plexinc/pms-docker:$$cap_plex_version image: plexinc/pms-docker:$$cap_plex_version
environment: environment:
TZ: $$cap_tz TZ: $$cap_tz
PLEX_CLAIM: $$cap_plex_token PLEX_CLAIM: $$cap_plex_token
ADVERTISE_IP: http://$$cap_appname.$$cap_root_domain/ ADVERTISE_IP: http://$$cap_appname.$$cap_root_domain/
ports: ports:
- 32400:32400 - 32400:32400
- 3005:3005 - 3005:3005
- 8324:8324 - 8324:8324
- 32469:32469 - 32469:32469
- 1900:1900 - 1900:1900
- 32410:32410 - 32410:32410
- 32412:32412 - 32412:32412
- 32413:32413 - 32413:32413
- 32414:32414 - 32414:32414
hostname: $$cap_appname.$$cap_root_domain hostname: $$cap_appname.$$cap_root_domain
volumes: volumes:
- $$cap_appname-config:/config - $$cap_appname-config:/config
- $$cap_appname-transcode:/transcode - $$cap_appname-transcode:/transcode
- $$cap_appname-media:/data - $$cap_appname-media:/data
caproverExtra: caproverExtra:
containerHttpPort: "32400" containerHttpPort: '32400'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_plex_version - id: $$cap_plex_version
label: Plex Version label: Plex Version
defaultValue: 1.19.2.2737-b69929dab defaultValue: 1.19.2.2737-b69929dab
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/plexinc/pms-docker/tags https://hub.docker.com/r/plexinc/pms-docker/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_plex_token - id: $$cap_plex_token
label: Plex Claim Token label: Plex Claim Token
description: Get your token from https://www.plex.tv/claim description: Get your token from https://www.plex.tv/claim
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_tz - id: $$cap_tz
label: Time Zone label: Time Zone
defaultValue: America/New_York defaultValue: America/New_York
description: Get yours from description: Get yours from
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: >- start: >-
Plex organizes video, music and photos from personal media libraries and Plex organizes video, music and photos from personal media libraries and
streams them to smart TVs, streaming boxes and mobile devices. streams them to smart TVs, streaming boxes and mobile devices.
IMPORTANT: Plex uses ports 32400, 3005, 8324, 32469, 1900, 32410, 32412, 32412, 32413, and 32414. If any of these ports are in use, your installation will malfunction. IMPORTANT: Plex uses ports 32400, 3005, 8324, 32469, 1900, 32410, 32412, 32412, 32413, and 32414. If any of these ports are in use, your installation will malfunction.
end: >- end: >-
Plex has been successfully deployed. Please wait a minute before accessing Plex has been successfully deployed. Please wait a minute before accessing
your Plex dashboard. your Plex dashboard.
If you're installing behind a NAT, make sure to forward port 32400. If you're installing behind a NAT, make sure to forward port 32400.
displayName: Plex Media Server displayName: Plex Media Server
isOfficial: true isOfficial: true
description: Plex organizes video, music and photos from personal media description: Plex organizes video, music and photos from personal media
libraries and streams them to smart TVs, streaming boxes and mobile devices. libraries and streams them to smart TVs, streaming boxes and mobile devices.
documentation: Taken from https://hub.docker.com/r/plexinc/pms-docker. documentation: Taken from https://hub.docker.com/r/plexinc/pms-docker.

View File

@ -1,36 +1,38 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: portainer/portainer:$$cap_portainer_version image: portainer/portainer:$$cap_portainer_version
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_portainer_version - id: $$cap_portainer_version
label: Portainer Version label: Portainer Version
defaultValue: 1.20.2 defaultValue: 1.20.2
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/portainer/portainer/tags https://hub.docker.com/r/portainer/portainer/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
Portainer is a lightweight management UI which allows you to easily manage Portainer is a lightweight management UI which allows you to easily manage
your Docker host or Swarm cluster. your Docker host or Swarm cluster.
More information about this container can be found here: More information about this container can be found here:
https://hub.docker.com/r/portainer/portainer/ . https://hub.docker.com/r/portainer/portainer/ .
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 9000 to other CapRover apps . After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 9000 to other CapRover apps .
Enter your portainer Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your portainer Configuration parameters and click on next. It will take about a minute for the process to finish.
end: Portainer is deployed and available as srv-captain--$$cap_appname:9000 to end:
other apps. Portainer is deployed and available as srv-captain--$$cap_appname:9000 to
displayName: "" other apps.
isOfficial: true displayName: ''
description: Portainer is a lightweight management UI which allows you to easily isOfficial: true
manage your different Docker environments description:
documentation: Taken from https://hub.docker.com/r/portainer/portainer/ Portainer is a lightweight management UI which allows you to easily
manage your different Docker environments
documentation: Taken from https://hub.docker.com/r/portainer/portainer/

View File

@ -1,57 +1,57 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: analogic/poste.io:$$cap_poste_version image: analogic/poste.io:$$cap_poste_version
ports: ports:
- 25:25 - 25:25
- 110:110 - 110:110
- 143:143 - 143:143
- 465:465 - 465:465
- 587:587 - 587:587
- 993:993 - 993:993
- 995:995 - 995:995
- 4190:4190 - 4190:4190
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
environment: environment:
HTTPS: OFF HTTPS: OFF
LETSENCRYPT_EMAIL: $$cap_email LETSENCRYPT_EMAIL: $$cap_email
LETSENCRYPT_HOST: $$cap_host LETSENCRYPT_HOST: $$cap_host
VIRTUAL_HOST: $$cap_host VIRTUAL_HOST: $$cap_host
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_poste_version - id: $$cap_poste_version
label: Poste.io version tag label: Poste.io version tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/analogic/poste.io/tags https://hub.docker.com/r/analogic/poste.io/tags
defaultValue: "2" defaultValue: '2'
- id: $$cap_email - id: $$cap_email
label: Email Address label: Email Address
description: The email address used for Lets Encrypt certificates. description: The email address used for Lets Encrypt certificates.
- id: $$cap_host - id: $$cap_host
label: Hostname label: Hostname
description: The full hostname for this captain app. (usually mail.mydomain.com) description: The full hostname for this captain app. (usually mail.mydomain.com)
instructions: instructions:
start: |- start: |-
SMTP + IMAP + POP3 + Antispam + Antivirus SMTP + IMAP + POP3 + Antispam + Antivirus
Web administration + Web email Web administration + Web email
...on your server in ~5 minutes ...on your server in ~5 minutes
Recommended: Use"mail" as the App Name. Recommended: Use"mail" as the App Name.
end: >- end: >-
Please paste the preDeployFunction from Please paste the preDeployFunction from
https://github.com/caprover/caprover/issues/479#issuecomment-520902309 to https://github.com/caprover/caprover/issues/479#issuecomment-520902309 to
the App Config > Pre-Deploy section of your created poste.io instance the App Config > Pre-Deploy section of your created poste.io instance
$$cap_appname. $$cap_appname.
Also ensure that you've set up the reverse DNS (PTR record) for your server and DKIM, SPF (DNS TXT) records. Also ensure that you've set up the reverse DNS (PTR record) for your server and DKIM, SPF (DNS TXT) records.
The deployment can take up to 2 minutes. The deployment can take up to 2 minutes.
displayName: Poste.io displayName: Poste.io
isOfficial: true isOfficial: true
description: Poste.io - complete mailserver built in one container description: Poste.io - complete mailserver built in one container
documentation: Read the poste.io documentation @ https://poste.io/doc documentation: Read the poste.io documentation @ https://poste.io/doc

View File

@ -1,62 +1,63 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: $$cap_pg_user POSTGRES_USER: $$cap_pg_user
POSTGRES_PASSWORD: $$cap_pg_pass POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: $$cap_pg_db POSTGRES_DB: $$cap_pg_db
POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
defaultValue: "9.6" defaultValue: '9.6'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_pg_user - id: $$cap_pg_user
label: Postgres Username label: Postgres Username
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_pass - id: $$cap_pg_pass
label: Postgres Password label: Postgres Password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_db - id: $$cap_pg_db
label: Postgres Default Database label: Postgres Default Database
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_initdb_args - id: $$cap_pg_initdb_args
label: "OPTIONAL: Arguments for 'postgres initdb'" label: "OPTIONAL: Arguments for 'postgres initdb'"
description: For example, --data-checksums description: For example, --data-checksums
validRegex: /.{0,}/ validRegex: /.{0,}/
instructions: instructions:
start: >- start: >-
PostgreSQL, often simply Postgres, is an object-relational database PostgreSQL, often simply Postgres, is an object-relational database
management system (ORDBMS) with an emphasis on extensibility and management system (ORDBMS) with an emphasis on extensibility and
standards-compliance. As a database server, its primary function is to standards-compliance. As a database server, its primary function is to
store data, securely and supporting best practices, and retrieve it later, store data, securely and supporting best practices, and retrieve it later,
as requested by other software applications, be it those on the same as requested by other software applications, be it those on the same
computer or those running on another computer across a network (including computer or those running on another computer across a network (including
the Internet). It can handle workloads ranging from small single-machine the Internet). It can handle workloads ranging from small single-machine
applications to large Internet-facing applications with many concurrent applications to large Internet-facing applications with many concurrent
users. users.
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 5432 to other CapRover apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 5432 to other CapRover apps.
Enter your Postgres Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your Postgres Configuration parameters and click on next. It will take about a minute for the process to finish.
end: "Postgres is deployed and available as srv-captain--$$cap_appname-db:5432 end:
to other apps. For example with NodeJS: 'const client = new Client({ user: "Postgres is deployed and available as srv-captain--$$cap_appname-db:5432
'cap_pg_user', host: 'srv-captain--$$cap_appname', database: 'cap_pg_db', to other apps. For example with NodeJS: 'const client = new Client({ user:
password: '********', port: 5432})'" 'cap_pg_user', host: 'srv-captain--$$cap_appname', database: 'cap_pg_db',
displayName: PostgreSQL password: '********', port: 5432})'"
isOfficial: true displayName: PostgreSQL
description: The PostgreSQL object-relational database system provides isOfficial: true
reliability and data integrity description: The PostgreSQL object-relational database system provides
documentation: Taken from https://hub.docker.com/_/postgres reliability and data integrity
documentation: Taken from https://hub.docker.com/_/postgres

View File

@ -1,65 +1,68 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mysql:$$cap_mysql_version image: mysql:$$cap_mysql_version
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: prismagraphql/prisma:$$cap_prisma_version image: prismagraphql/prisma:$$cap_prisma_version
restart: always restart: always
ports: ports:
- 4466:4466 - 4466:4466
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
environment: environment:
PRISMA_CONFIG: | PRISMA_CONFIG: |
managementApiSecret: $$cap_management_secret managementApiSecret: $$cap_management_secret
port: 4466 port: 4466
databases: databases:
default: default:
connector: mysql connector: mysql
host: srv-captain--$$cap_appname-db host: srv-captain--$$cap_appname-db
port: 3306 port: 3306
user: root user: root
password: $$cap_db_pass password: $$cap_db_pass
migrations: true migrations: true
caproverExtra: caproverExtra:
containerHttpPort: "4466" containerHttpPort: '4466'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_prisma_version - id: $$cap_prisma_version
label: Prisma 1 Version label: Prisma 1 Version
defaultValue: "1.29" defaultValue: '1.29'
description: Check out their GitHub page for their latest version description: Check out their GitHub page for their latest version
https://github.com/prisma/prisma1 https://github.com/prisma/prisma1
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mysql_version - id: $$cap_mysql_version
label: MySQL Version label: MySQL Version
defaultValue: "5.7" defaultValue: '5.7'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mysql/tags/ https://hub.docker.com/r/library/mysql/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_management_secret - id: $$cap_management_secret
label: Prisma 1 Management API secret label: Prisma 1 Management API secret
description: To ensure only entitled users are able to perform actions through description:
the Management API. Minimum 10 characters, at least one letter and one To ensure only entitled users are able to perform actions through
number. the Management API. Minimum 10 characters, at least one letter and one
validRegex: /^(?=.*\d).{10,}$/ number.
instructions: validRegex: /^(?=.*\d).{10,}$/
end: Prisma 1 is deployed and available as $$cap_appname. instructions:
start: Prisma 1 - Database tools for modern application development. This setup end: Prisma 1 is deployed and available as $$cap_appname.
runs Prisma 1 along with a MySQL Database. start:
displayName: "" Prisma 1 - Database tools for modern application development. This setup
isOfficial: true runs Prisma 1 along with a MySQL Database.
description: Prisma 1 is a database abstraction layer that turns your databases displayName: ''
into GraphQL APIs with CRUD operations and realtime capabilities isOfficial: true
documentation: Taken from https://hub.docker.com/r/prismagraphql/prisma/ description:
Prisma 1 is a database abstraction layer that turns your databases
into GraphQL APIs with CRUD operations and realtime capabilities
documentation: Taken from https://hub.docker.com/r/prismagraphql/prisma/

View File

@ -1,24 +1,25 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: prom/prometheus@$$cap_version image: prom/prometheus@$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-config:/etc/prometheus - $$cap_appname-config:/etc/prometheus
- $$cap_appname-data:/prometheus - $$cap_appname-data:/prometheus
caproverExtra: caproverExtra:
containerHttpPort: "9090" containerHttpPort: '9090'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Prometheus Docker Hash - label: Prometheus Docker Hash
defaultValue: sha256:43b19072ef98fd0ea5a29ac794fbadf365cca6d5247830034c7b86ae9650126c defaultValue: sha256:43b19072ef98fd0ea5a29ac794fbadf365cca6d5247830034c7b86ae9650126c
description: Starts with 'sha256:'. Find on Docker Hub. Default is latest as description:
of 2020-06-30. Starts with 'sha256:'. Find on Docker Hub. Default is latest as
id: $$cap_version of 2020-06-30.
instructions: id: $$cap_version
end: Prometheus is now starting. instructions:
start: "Read more about Prometheus: https://prometheus.io/" end: Prometheus is now starting.
displayName: Prometheus start: 'Read more about Prometheus: https://prometheus.io/'
isOfficial: true displayName: Prometheus
description: Prometheus is a systems and service monitoring system. isOfficial: true
documentation: https://hub.docker.com/r/prom/prometheus/ description: Prometheus is a systems and service monitoring system.
documentation: https://hub.docker.com/r/prom/prometheus/

View File

@ -1,51 +1,53 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: rabbitmq:$$cap_rabbitmq_version image: rabbitmq:$$cap_rabbitmq_version
volumes: volumes:
- $$cap_appname-rabbitmq-data:/var/lib/rabbitmq - $$cap_appname-rabbitmq-data:/var/lib/rabbitmq
restart: always restart: always
environment: environment:
RABBITMQ_DEFAULT_USER: $$cap_rabbitmq_user RABBITMQ_DEFAULT_USER: $$cap_rabbitmq_user
RABBITMQ_DEFAULT_PASS: $$cap_rabbitmq_password RABBITMQ_DEFAULT_PASS: $$cap_rabbitmq_password
RABBITMQ_NODENAME: $$cap_rabbitmq_nodename RABBITMQ_NODENAME: $$cap_rabbitmq_nodename
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_rabbitmq_version - id: $$cap_rabbitmq_version
label: RabbitMQ Version Tag label: RabbitMQ Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/rabbitmq/tags/ https://hub.docker.com/r/library/rabbitmq/tags/
defaultValue: "3.7" defaultValue: '3.7'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_rabbitmq_user - id: $$cap_rabbitmq_user
label: RabbitMQ Default User label: RabbitMQ Default User
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_rabbitmq_password - id: $$cap_rabbitmq_password
label: RabbitMQ Default Password label: RabbitMQ Default Password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_rabbitmq_nodename - id: $$cap_rabbitmq_nodename
label: RabbitMQ Nodename label: RabbitMQ Nodename
description: Nodename is appended to the end of the database directory. description: Nodename is appended to the end of the database directory.
defaultValue: rabbit@localhost defaultValue: rabbit@localhost
validRegex: /.{1,}/ validRegex: /.{1,}/
instructions: instructions:
start: >- start: >-
RabbitMQ is open source message broker software (sometimes called RabbitMQ is open source message broker software (sometimes called
message-oriented middleware) that implements the Advanced Message Queuing message-oriented middleware) that implements the Advanced Message Queuing
Protocol (AMQP). The RabbitMQ server is written in the Erlang programming Protocol (AMQP). The RabbitMQ server is written in the Erlang programming
language and is built on the Open Telecom Platform framework for language and is built on the Open Telecom Platform framework for
clustering and failover. Client libraries to interface with the broker are clustering and failover. Client libraries to interface with the broker are
available for all major programming languages. available for all major programming languages.
Enter your RabbitMQ Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your RabbitMQ Configuration parameters and click on next. It will take about a minute for the process to finish.
end: RabbitMQ is deployed and available as srv-captain--$$cap_appname:5672 to end:
other apps. RabbitMQ is deployed and available as srv-captain--$$cap_appname:5672 to
displayName: RabbitMQ other apps.
isOfficial: true displayName: RabbitMQ
description: RabbitMQ is an open-source message-broker software that originally isOfficial: true
implemented the Advanced Message Queuing Protocol description:
documentation: Taken from https://hub.docker.com/_/rabbitmq RabbitMQ is an open-source message-broker software that originally
implemented the Advanced Message Queuing Protocol
documentation: Taken from https://hub.docker.com/_/rabbitmq

View File

@ -1,33 +1,35 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: tomsquest/docker-radicale:$$cap_image_tag image: tomsquest/docker-radicale:$$cap_image_tag
volumes: volumes:
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
environment: {} environment: {}
caproverExtra: caproverExtra:
containerHttpPort: "5232" containerHttpPort: '5232'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_image_tag - id: $$cap_image_tag
label: What version/tag do you want? label: What version/tag do you want?
description: Go here to see all versions description: Go here to see all versions
https://hub.docker.com/r/tomsquest/docker-radicale/tags https://hub.docker.com/r/tomsquest/docker-radicale/tags
defaultValue: 2.1.12.1 defaultValue: 2.1.12.1
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: Radicale is a small but powerful CalDAV (calendars, to-do lists) and start:
CardDAV (contacts) server. It is strongly advised to secure your data with Radicale is a small but powerful CalDAV (calendars, to-do lists) and
user passwords as stated here CardDAV (contacts) server. It is strongly advised to secure your data with
https://hub.docker.com/r/tomsquest/docker-radicale/ user passwords as stated here
end: Radicale is deployed and available as $$cap_appname. To secure your user https://hub.docker.com/r/tomsquest/docker-radicale/
you can create a config like end:
https://github.com/tomsquest/docker-radicale/blob/master/config and adapt Radicale is deployed and available as $$cap_appname. To secure your user
it like stated here you can create a config like
https://radicale.org/3.0.html#tutorials/basic-configuration. You need to https://github.com/tomsquest/docker-radicale/blob/master/config and adapt
create an volume pointing to the container path /etc/radicale/config to be it like stated here
picked up by the image. https://radicale.org/3.0.html#tutorials/basic-configuration. You need to
displayName: Radicale create an volume pointing to the container path /etc/radicale/config to be
description: Radicale lightweight CalDAV and CardDAV Server picked up by the image.
documentation: Taken from https://hub.docker.com/r/tomsquest/docker-radicale displayName: Radicale
description: Radicale lightweight CalDAV and CardDAV Server
documentation: Taken from https://hub.docker.com/r/tomsquest/docker-radicale

View File

@ -1,29 +1,29 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: hardware/rainloop:$$cap_rainloop_version image: hardware/rainloop:$$cap_rainloop_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/rainloop/data - $$cap_appname-data:/rainloop/data
caproverExtra: caproverExtra:
containerHttpPort: "8888" containerHttpPort: '8888'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_rainloop_version - id: $$cap_rainloop_version
label: Rainloop Version label: Rainloop Version
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/hardware/rainloop/tags https://hub.docker.com/r/hardware/rainloop/tags
defaultValue: 1.12.0 defaultValue: 1.12.0
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
Rainloop is a simple, modern & fast web-based email client. Rainloop is a simple, modern & fast web-based email client.
For initial configuration, see https://www.rainloop.net/docs/configuration/ For initial configuration, see https://www.rainloop.net/docs/configuration/
end: >- end: >-
Rainloop is deployed and available as $$cap_appname. Rainloop is deployed and available as $$cap_appname.
It will take about a minute for Rainloop to be ready. Before that, you might see 502 error page. It will take about a minute for Rainloop to be ready. Before that, you might see 502 error page.
displayName: "" displayName: ''
description: RainLoop Webmail - Simple, modern & fast web-based email client description: RainLoop Webmail - Simple, modern & fast web-based email client
documentation: Taken from https://hub.docker.com/r/hardware/rainloop documentation: Taken from https://hub.docker.com/r/hardware/rainloop

View File

@ -1,41 +1,42 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
volumes: volumes:
- $$cap_appname-redis-data:/data - $$cap_appname-redis-data:/data
restart: always restart: always
environment: environment:
REDIS_PASSWORD: $$cap_redis_password REDIS_PASSWORD: $$cap_redis_password
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM redis:$$cap_redis_version - FROM redis:$$cap_redis_version
- CMD exec redis-server --requirepass "$$cap_redis_password" - CMD exec redis-server --requirepass "$$cap_redis_password"
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_redis_version - id: $$cap_redis_version
label: Redis Version Tag label: Redis Version Tag
description: "Check out their Docker page for the valid tags: description: 'Check out their Docker page for the valid tags:
https://hub.docker.com/_/redis?tab=tags" https://hub.docker.com/_/redis?tab=tags'
defaultValue: "5" defaultValue: '5'
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_redis_password - id: $$cap_redis_password
label: Redis Password label: Redis Password
validRegex: /^([a-zA-Z0-9-_])+$/ validRegex: /^([a-zA-Z0-9-_])+$/
instructions: instructions:
start: >- start: >-
Redis is an open source key-value store that functions as a data structure Redis is an open source key-value store that functions as a data structure
server. server.
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 6379 to other CapRover apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 6379 to other CapRover apps.
Enter your Redis container name and click on next. It will take about a minute for the process to finish. Enter your Redis container name and click on next. It will take about a minute for the process to finish.
end: "Redis is deployed and available as srv-captain--$$cap_appname:6379 to end:
other apps. For example with NodeJS: const client = "Redis is deployed and available as srv-captain--$$cap_appname:6379 to
redis.createClient(6379, 'srv-captain--$$cap_appname' , {password: other apps. For example with NodeJS: const client =
'$$cap_redis_password'})" redis.createClient(6379, 'srv-captain--$$cap_appname' , {password:
displayName: "" '$$cap_redis_password'})"
isOfficial: true displayName: ''
description: Redis is an in-memory data structure store, used as a database, isOfficial: true
cache and message broker description: Redis is an in-memory data structure store, used as a database,
documentation: Taken from https://hub.docker.com/_/redis cache and message broker
documentation: Taken from https://hub.docker.com/_/redis

View File

@ -1,34 +1,36 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
ports: ports:
- $$cap_port_sync:55555 - $$cap_port_sync:55555
image: resilio/sync:$$cap_version image: resilio/sync:$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/mnt/sync - $$cap_appname-data:/mnt/sync
caproverExtra: caproverExtra:
containerHttpPort: "8888" containerHttpPort: '8888'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Resilio Sync Docker Version - label: Resilio Sync Docker Version
defaultValue: 2.6.4 defaultValue: 2.6.4
description: It's highly recommended that you don't use the latest tag but description:
instead the major version you need. It's highly recommended that you don't use the latest tag but
id: $$cap_version instead the major version you need.
- label: Listening port for Sync traffic id: $$cap_version
description: Port that Sync listens on for data synchronization (TCP & UDP). - label: Listening port for Sync traffic
defaultValue: "55555" description: Port that Sync listens on for data synchronization (TCP & UDP).
id: $$cap_port_sync defaultValue: '55555'
instructions: id: $$cap_port_sync
end: >- instructions:
Your instance of Sync is now starting up. end: >-
Your instance of Sync is now starting up.
Note that all sync folders will have to be created under /mnt/sync/folders/ from within the app. Note that all sync folders will have to be created under /mnt/sync/folders/ from within the app.
start: Set up Sync to synchronize or share files without having to store your start:
data in the cloud. Set up Sync to synchronize or share files without having to store your
displayName: Resilio Sync data in the cloud.
isOfficial: true displayName: Resilio Sync
description: File synchronization and sharing solution based on BitTorrent technology. isOfficial: true
documentation: https://hub.docker.com/r/resilio/sync description: File synchronization and sharing solution based on BitTorrent technology.
documentation: https://hub.docker.com/r/resilio/sync

View File

@ -1,22 +1,23 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: rethinkdb:2.3.6 image: rethinkdb:2.3.6
volumes: volumes:
- $$cap_appname-data:/data/rethinkdb_data/ - $$cap_appname-data:/data/rethinkdb_data/
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: [] variables: []
instructions: instructions:
end: > end: >
RethinkDB is deployed and available as RethinkDB is deployed and available as
http://$$cap_appname.$$cap_root_domain/. http://$$cap_appname.$$cap_root_domain/.
It may take a few minutes for RethinkDB to initialize. It may take a few minutes for RethinkDB to initialize.
start: RethinkDB is an open-source, distributed database built to store JSON start:
documents and effortlessly scale to multiple machines. RethinkDB is an open-source, distributed database built to store JSON
displayName: RethinkDB documents and effortlessly scale to multiple machines.
isOfficial: true displayName: RethinkDB
description: RethinkDB pushes JSON to your apps in realtime isOfficial: true
documentation: Taken from https://hub.docker.com/_/rethinkdb. description: RethinkDB pushes JSON to your apps in realtime
documentation: Taken from https://hub.docker.com/_/rethinkdb.

View File

@ -1,207 +1,211 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-postgres: $$cap_appname-postgres:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data - $$cap_appname-postgres-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: sentry POSTGRES_USER: sentry
POSTGRES_PASSWORD: $$cap_pg_pass POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: sentry POSTGRES_DB: sentry
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-redis: $$cap_appname-redis:
volumes: volumes:
- $$cap_appname-redis-data:/data - $$cap_appname-redis-data:/data
restart: always restart: always
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM redis:$$cap_redis_version - FROM redis:$$cap_redis_version
- CMD exec redis-server - CMD exec redis-server
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-cron: $$cap_appname-cron:
depends_on: depends_on:
- $$cap_appname - $$cap_appname
restart: always restart: always
environment: environment:
SENTRY_SECRET_KEY: $$cap_sentry_secret SENTRY_SECRET_KEY: $$cap_sentry_secret
SENTRY_REDIS_HOST: srv-captain--$$cap_appname-redis SENTRY_REDIS_HOST: srv-captain--$$cap_appname-redis
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM sentry:$$cap_sentry_version - FROM sentry:$$cap_sentry_version
- RUN groupadd -r $$cap_appname-cron && useradd -r -g $$cap_appname-cron - RUN groupadd -r $$cap_appname-cron && useradd -r -g $$cap_appname-cron
$$cap_appname-cron $$cap_appname-cron
- USER $$cap_appname-cron - USER $$cap_appname-cron
- CMD sentry run cron - CMD sentry run cron
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-worker: $$cap_appname-worker:
depends_on: depends_on:
- $$cap_appname-cron - $$cap_appname-cron
restart: always restart: always
environment: environment:
SENTRY_SECRET_KEY: $$cap_sentry_secret SENTRY_SECRET_KEY: $$cap_sentry_secret
SENTRY_REDIS_HOST: srv-captain--$$cap_appname-redis SENTRY_REDIS_HOST: srv-captain--$$cap_appname-redis
SENTRY_REDIS_PORT: "6379" SENTRY_REDIS_PORT: '6379'
SENTRY_POSTGRES_HOST: srv-captain--$$cap_appname-postgres SENTRY_POSTGRES_HOST: srv-captain--$$cap_appname-postgres
SENTRY_DB_NAME: sentry SENTRY_DB_NAME: sentry
SENTRY_DB_USER: sentry SENTRY_DB_USER: sentry
SENTRY_DB_PASSWORD: $$cap_pg_pass SENTRY_DB_PASSWORD: $$cap_pg_pass
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM sentry:$$cap_sentry_version - FROM sentry:$$cap_sentry_version
- RUN groupadd -r $$cap_appname-worker && useradd -r -g - RUN groupadd -r $$cap_appname-worker && useradd -r -g
$$cap_appname-worker $$cap_appname-worker $$cap_appname-worker $$cap_appname-worker
- USER $$cap_appname-worker - USER $$cap_appname-worker
- CMD sentry run worker - CMD sentry run worker
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
depends_on: depends_on:
- $$cap_appname-postgres - $$cap_appname-postgres
- $$cap_appname-redis - $$cap_appname-redis
volumes: volumes:
- $$cap_appname-data:/var/lib/sentry/files - $$cap_appname-data:/var/lib/sentry/files
restart: always restart: always
environment: environment:
CAP_SENTRY_VERSION: $$cap_sentry_version CAP_SENTRY_VERSION: $$cap_sentry_version
CAP_SENTRY_SUPERUSER_EMAIL: $$cap_sentry_superuser_email CAP_SENTRY_SUPERUSER_EMAIL: $$cap_sentry_superuser_email
CAP_SENTRY_SUPERUSER_PASSWORD: $$cap_sentry_superuser_password CAP_SENTRY_SUPERUSER_PASSWORD: $$cap_sentry_superuser_password
SENTRY_POSTGRES_HOST: srv-captain--$$cap_appname-postgres SENTRY_POSTGRES_HOST: srv-captain--$$cap_appname-postgres
SENTRY_REDIS_HOST: srv-captain--$$cap_appname-redis SENTRY_REDIS_HOST: srv-captain--$$cap_appname-redis
SENTRY_REDIS_PORT: "6379" SENTRY_REDIS_PORT: '6379'
SENTRY_DB_NAME: sentry SENTRY_DB_NAME: sentry
SENTRY_DB_USER: sentry SENTRY_DB_USER: sentry
SENTRY_DB_PASSWORD: $$cap_pg_pass SENTRY_DB_PASSWORD: $$cap_pg_pass
SENTRY_SECRET_KEY: $$cap_sentry_secret SENTRY_SECRET_KEY: $$cap_sentry_secret
SENTRY_MAILGUN_API_KEY: $$cap_mailgun_apikey SENTRY_MAILGUN_API_KEY: $$cap_mailgun_apikey
SENTRY_SERVER_EMAIL: $$cap_sentry_server_mail SENTRY_SERVER_EMAIL: $$cap_sentry_server_mail
SENTRY_EMAIL_HOST: $$cap_sentry_email_host SENTRY_EMAIL_HOST: $$cap_sentry_email_host
SENTRY_EMAIL_PORT: $$cap_sentry_email_port SENTRY_EMAIL_PORT: $$cap_sentry_email_port
SENTRY_EMAIL_USER: $$cap_sentry_email_user SENTRY_EMAIL_USER: $$cap_sentry_email_user
SENTRY_EMAIL_PASSWORD: $$cap_sentry_email_password SENTRY_EMAIL_PASSWORD: $$cap_sentry_email_password
SENTRY_EMAIL_USE_TLS: $$cap_sentry_email_use_tls SENTRY_EMAIL_USE_TLS: $$cap_sentry_email_use_tls
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
dockerfileLines: dockerfileLines:
- FROM sentry:$$cap_sentry_version - FROM sentry:$$cap_sentry_version
- "RUN echo 'auth.allow-registration: false' > /etc/sentry/config.yml" - "RUN echo 'auth.allow-registration: false' > /etc/sentry/config.yml"
- "RUN echo 'beacon.anonymous: true' >> /etc/sentry/config.yml" - "RUN echo 'beacon.anonymous: true' >> /etc/sentry/config.yml"
- "RUN echo 'mail.from: \"\"' >> /etc/sentry/config.yml" - 'RUN echo ''mail.from: ""'' >> /etc/sentry/config.yml'
- "RUN echo 'mail.host: \"\"' >> /etc/sentry/config.yml" - 'RUN echo ''mail.host: ""'' >> /etc/sentry/config.yml'
- "RUN echo 'mail.password: \"\"' >> /etc/sentry/config.yml" - 'RUN echo ''mail.password: ""'' >> /etc/sentry/config.yml'
- "RUN echo 'mail.port: 465' >> /etc/sentry/config.yml" - "RUN echo 'mail.port: 465' >> /etc/sentry/config.yml"
- "RUN echo 'mail.use-tls: true' >> /etc/sentry/config.yml" - "RUN echo 'mail.use-tls: true' >> /etc/sentry/config.yml"
- "RUN echo 'mail.username: \"\"' >> /etc/sentry/config.yml" - 'RUN echo ''mail.username: ""'' >> /etc/sentry/config.yml'
- "RUN echo 'system.admin-email: \"\"' >> /etc/sentry/config.yml" - 'RUN echo ''system.admin-email: ""'' >> /etc/sentry/config.yml'
- "RUN echo 'system.url-prefix: \"\"' >> /etc/sentry/config.yml" - 'RUN echo ''system.url-prefix: ""'' >> /etc/sentry/config.yml'
- RUN echo '#!/bin/bash' >> ./init.sh - RUN echo '#!/bin/bash' >> ./init.sh
- RUN echo 'echo Starting configuration. The App will restart multiple - RUN echo 'echo Starting configuration. The App will restart multiple
times.' >> ./init.sh times.' >> ./init.sh
- "RUN echo 'echo 1 of 4 : running upgrade' >> ./init.sh" - "RUN echo 'echo 1 of 4 : running upgrade' >> ./init.sh"
- RUN echo 'sentry upgrade --noinput --traceback --no-repair' >> - RUN echo 'sentry upgrade --noinput --traceback --no-repair' >>
./init.sh ./init.sh
- "RUN echo 'echo 2 of 4 : set sentry:version-configured' >> ./init.sh" - "RUN echo 'echo 2 of 4 : set sentry:version-configured' >> ./init.sh"
- RUN echo 'sentry config set sentry:version-configured - RUN echo 'sentry config set sentry:version-configured
${CAP_SENTRY_VERSION}' >> ./init.sh ${CAP_SENTRY_VERSION}' >> ./init.sh
- "RUN echo 'echo 3 of 4 : creating user' >> ./init.sh" - "RUN echo 'echo 3 of 4 : creating user' >> ./init.sh"
- RUN echo 'sentry createuser --email=${CAP_SENTRY_SUPERUSER_EMAIL} - RUN echo 'sentry createuser --email=${CAP_SENTRY_SUPERUSER_EMAIL}
--password=${CAP_SENTRY_SUPERUSER_PASSWORD} --superuser --no-input' >> --password=${CAP_SENTRY_SUPERUSER_PASSWORD} --superuser --no-input' >>
./init.sh ./init.sh
- RUN echo 'echo Configuration completed!' >> ./init.sh - RUN echo 'echo Configuration completed!' >> ./init.sh
- "RUN echo 'echo 4 of 4 : starting application' >> ./init.sh" - "RUN echo 'echo 4 of 4 : starting application' >> ./init.sh"
- RUN echo 'sentry run web' >> ./init.sh - RUN echo 'sentry run web' >> ./init.sh
- RUN chmod +x init.sh - RUN chmod +x init.sh
- RUN groupadd -r $$cap_appname-sentry && useradd -r -g - RUN groupadd -r $$cap_appname-sentry && useradd -r -g
$$cap_appname-sentry $$cap_appname-sentry $$cap_appname-sentry $$cap_appname-sentry
- USER $$cap_appname-sentry - USER $$cap_appname-sentry
- CMD ["./init.sh"] - CMD ["./init.sh"]
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version Tag label: Postgres Version Tag
defaultValue: "9.6" defaultValue: '9.6'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_redis_version - id: $$cap_redis_version
label: Redis Version Tag label: Redis Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/redis/tags/ https://hub.docker.com/r/library/redis/tags/
defaultValue: 3.2-alpine defaultValue: 3.2-alpine
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_sentry_version - id: $$cap_sentry_version
label: Sentry Version Tag label: Sentry Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/sentry/ https://hub.docker.com/_/sentry/
defaultValue: 9.1.0 defaultValue: 9.1.0
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_pg_pass - id: $$cap_pg_pass
label: Postgres Password label: Postgres Password
description: "Password strength minimal requeriments: Should contain at least description:
one digit, one lower case, one upper case, one special character and at 'Password strength minimal requeriments: Should contain at least
least 12 from the mentioned characters." one digit, one lower case, one upper case, one special character and at
validRegex: /^(?=.*[A-Z])(?=.*[/!?@±#§$€%^&*()\\-_=+{}~+´ºª`^"';:,<.>\|\]\[])(?=.*[0-9])(?=.*[a-z]).{12,}$/ least 12 from the mentioned characters.'
- id: $$cap_sentry_secret validRegex: /^(?=.*[A-Z])(?=.*[/!?@±#§$€%^&*()\\-_=+{}~+´ºª`^"';:,<.>\|\]\[])(?=.*[0-9])(?=.*[a-z]).{12,}$/
label: Sentry Secret - id: $$cap_sentry_secret
description: "A secret key used for cryptographic functions within Sentry. This label: Sentry Secret
key should be unique and consistent across all running instances. description:
Password strength minimal requeriments: Should contain at least one 'A secret key used for cryptographic functions within Sentry. This
digit, one lower case, one special character and at least 50 from the key should be unique and consistent across all running instances.
mentioned characters. You can generate a new secret key doing something Password strength minimal requeriments: Should contain at least one
like: docker run --rm sentry config generate-secret-key" digit, one lower case, one special character and at least 50 from the
validRegex: /^(?=.*[/!?@±#§$€%^&*()\\-_=+{}~+´ºª`^"';:,<.>\|\]\[])(?=.*[0-9])(?=.*[a-z]).{50,}$/ mentioned characters. You can generate a new secret key doing something
- id: $$cap_sentry_superuser_email like: docker run --rm sentry config generate-secret-key'
label: Sentry Superuser Email validRegex: /^(?=.*[/!?@±#§$€%^&*()\\-_=+{}~+´ºª`^"';:,<.>\|\]\[])(?=.*[0-9])(?=.*[a-z]).{50,}$/
validRegex: /.{1,}/ - id: $$cap_sentry_superuser_email
- id: $$cap_sentry_superuser_password label: Sentry Superuser Email
label: Sentry Superuser Password validRegex: /.{1,}/
description: "Password strength minimal requeriments: Should contain at least - id: $$cap_sentry_superuser_password
one digit, one lower case, one upper case, one special character and at label: Sentry Superuser Password
least 12 from the mentioned characters." description:
validRegex: /^(?=.*[A-Z])(?=.*[/!?@±#§$€%^&*()\\-_=+{}~+´ºª`^"';:,<.>\|\]\[])(?=.*[0-9])(?=.*[a-z]).{12,}$/ 'Password strength minimal requeriments: Should contain at least
- id: $$cap_sentry_server_mail one digit, one lower case, one upper case, one special character and at
label: Sentry Server Email (optional) least 12 from the mentioned characters.'
description: "The email address used for From: in outbound emails." validRegex: /^(?=.*[A-Z])(?=.*[/!?@±#§$€%^&*()\\-_=+{}~+´ºª`^"';:,<.>\|\]\[])(?=.*[0-9])(?=.*[a-z]).{12,}$/
defaultValue: root@localhost - id: $$cap_sentry_server_mail
validRegex: /.{1,}/ label: Sentry Server Email (optional)
- id: $$cap_sentry_email_host description: 'The email address used for From: in outbound emails.'
label: SMTP email host (optional) defaultValue: root@localhost
- id: $$cap_sentry_email_port validRegex: /.{1,}/
label: SMTP email port (optional) - id: $$cap_sentry_email_host
defaultValue: 465 label: SMTP email host (optional)
- id: $$cap_sentry_email_user - id: $$cap_sentry_email_port
label: SMTP email user (optional) label: SMTP email port (optional)
- id: $$cap_sentry_email_password defaultValue: 465
label: SMTP email password (optional) - id: $$cap_sentry_email_user
- id: $$cap_sentry_email_use_tls label: SMTP email user (optional)
label: SMTP use tls (optional) - id: $$cap_sentry_email_password
defaultValue: true label: SMTP email password (optional)
- id: $$cap_mailgun_apikey - id: $$cap_sentry_email_use_tls
label: Mailgun Api key (optional) label: SMTP use tls (optional)
description: If you're using Mailgun for inbound mail, set your API key and defaultValue: true
configure a route to forward to /api/hooks/mailgun/inbound/ - id: $$cap_mailgun_apikey
instructions: label: Mailgun Api key (optional)
start: >- description:
Open-source error tracking that helps developers monitor and fix crashes If you're using Mailgun for inbound mail, set your API key and
in real time. configure a route to forward to /api/hooks/mailgun/inbound/
instructions:
start: >-
Open-source error tracking that helps developers monitor and fix crashes
in real time.
Information about this container: Information about this container:
https://hub.docker.com/_/sentry/ https://hub.docker.com/_/sentry/
Documentation: Documentation:
https://docs.sentry.io/server/ https://docs.sentry.io/server/
Minimum Hardware Requirements: At least 3GB Ram Minimum Hardware Requirements: At least 3GB Ram
Not filling this requirement may cause some errors during the initial configuration when running the database migrations. Not filling this requirement may cause some errors during the initial configuration when running the database migrations.
Enter your Sentry Configuration parameters and click on next. The initial installation will take about 5 minutes for the process to finish. Enter your Sentry Configuration parameters and click on next. The initial installation will take about 5 minutes for the process to finish.
end: > end: >
Sentry is deployed and available as srv-captain--$$cap_appname:9000. Sentry is deployed and available as srv-captain--$$cap_appname:9000.
IMPORTANT: It will take up to 10 minutes for Sentry to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 10 minutes for Sentry to be ready. Before that, you might see 502 error page.
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: Open-source error tracking with full stacktraces & asynchronous context description: Open-source error tracking with full stacktraces & asynchronous context
documentation: Taken from https://hub.docker.com/_/sentry/ and documentation: Taken from https://hub.docker.com/_/sentry/ and
https://docs.sentry.io/server/ https://docs.sentry.io/server/

View File

@ -1,87 +1,89 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: mysql:5.7 image: mysql:5.7
volumes: volumes:
- $$cap_appname-db-data:/var/lib/mysql - $$cap_appname-db-data:/var/lib/mysql
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: shopware MYSQL_DATABASE: shopware
MYSQL_USER: $$cap_db_user MYSQL_USER: $$cap_db_user
MYSQL_PASSWORD: $$cap_db_pass MYSQL_PASSWORD: $$cap_db_pass
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname-shopware: $$cap_appname-shopware:
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
image: shyim/shopware:$$cap_sw_version image: shyim/shopware:$$cap_sw_version
restart: always restart: always
environment: environment:
DATABASE_HOST: srv-captain--$$cap_appname-db:3306 DATABASE_HOST: srv-captain--$$cap_appname-db:3306
DATABASE_URL: mysql://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:3306/shopware DATABASE_URL: mysql://$$cap_db_user:$$cap_db_pass@srv-captain--$$cap_appname-db:3306/shopware
DB_USER: $$cap_db_user DB_USER: $$cap_db_user
DB_PASSWORD: $$cap_db_pass DB_PASSWORD: $$cap_db_pass
APP_URL: http://$$cap_appname-shopware.$$cap_root_domain APP_URL: http://$$cap_appname-shopware.$$cap_root_domain
APP_SECRET: $$cap_app_scret APP_SECRET: $$cap_app_scret
INSTANCE_ID: $$cap_instance_id INSTANCE_ID: $$cap_instance_id
MAILER_URL: $$cap_mailer_url MAILER_URL: $$cap_mailer_url
INSTALL_LOCALE: $$cap_sw_locale INSTALL_LOCALE: $$cap_sw_locale
INSTALL_CURRENCY: $$cap_sw_currency INSTALL_CURRENCY: $$cap_sw_currency
INSTALL_ADMIN_USERNAME: $$cap_sw_admin_username INSTALL_ADMIN_USERNAME: $$cap_sw_admin_username
INSTALL_ADMIN_PASSWORD: $$cap_sw_admin_password INSTALL_ADMIN_PASSWORD: $$cap_sw_admin_password
volumes: volumes:
- $$cap_appname-state:/state - $$cap_appname-state:/state
- $$cap_appname-custom-plugins:/var/www/html/custom/plugins - $$cap_appname-custom-plugins:/var/www/html/custom/plugins
- $$cap_appname-files:/var/www/html/files - $$cap_appname-files:/var/www/html/files
- $$cap_appname-logs:/var/www/html/var/logs - $$cap_appname-logs:/var/www/html/var/logs
- $$cap_appname-theme:/var/www/html/public/theme - $$cap_appname-theme:/var/www/html/public/theme
- $$cap_appname-media:/var/www/html/public/media - $$cap_appname-media:/var/www/html/public/media
- $$cap_appname-bundles:/var/www/html/public/bundles - $$cap_appname-bundles:/var/www/html/public/bundles
- $$cap_appname-sitemap:/var/www/html/public/sitemap - $$cap_appname-sitemap:/var/www/html/public/sitemap
- $$cap_appname-thumbnail:/var/www/html/public/thumbnail - $$cap_appname-thumbnail:/var/www/html/public/thumbnail
- $$cap_appname-jwt:/var/www/html/config/jwt - $$cap_appname-jwt:/var/www/html/config/jwt
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_instance_id - id: $$cap_instance_id
label: Instance ID (Can be generated with openssl rand -hex 32) label: Instance ID (Can be generated with openssl rand -hex 32)
defaultValue: 10612e3916e153dd3447850e944a03fabe89440970295447a30a75b151bd844e defaultValue: 10612e3916e153dd3447850e944a03fabe89440970295447a30a75b151bd844e
- id: $$cap_app_scret - id: $$cap_app_scret
label: App Secret (Can be generated with openssl rand -hex 32) label: App Secret (Can be generated with openssl rand -hex 32)
defaultValue: 440dec3766de53010c5ccf6231c182acfc90bd25cff82e771245f736fd276518 defaultValue: 440dec3766de53010c5ccf6231c182acfc90bd25cff82e771245f736fd276518
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: shopwareuser defaultValue: shopwareuser
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
- id: $$cap_sw_version - id: $$cap_sw_version
label: Shopware Version label: Shopware Version
defaultValue: 6.2.0 defaultValue: 6.2.0
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/shyim/shopware/tags/ https://hub.docker.com/r/shyim/shopware/tags/
- id: $$cap_mailer_url - id: $$cap_mailer_url
label: Mailer URL label: Mailer URL
defaultValue: null://localhost defaultValue: null://localhost
- id: $$cap_sw_locale - id: $$cap_sw_locale
label: Locale label: Locale
defaultValue: en-GB defaultValue: en-GB
- id: $$cap_sw_currency - id: $$cap_sw_currency
label: Currency label: Currency
defaultValue: EUR defaultValue: EUR
- id: $$cap_sw_admin_username - id: $$cap_sw_admin_username
label: Admin Username label: Admin Username
defaultValue: admin defaultValue: admin
- id: $$cap_sw_admin_password - id: $$cap_sw_admin_password
label: Admin Password label: Admin Password
defaultValue: shopware defaultValue: shopware
instructions: instructions:
start: Shopware is a trendsetting ecommerce platform to power your online start:
business. Shopware is a trendsetting ecommerce platform to power your online
end: Shopware is successfully deployed. Please wait a minute before accessing business.
the shop. For help and support checkout end:
https://github.com/shyim/shopware-image Shopware is successfully deployed. Please wait a minute before accessing
displayName: Shopware the shop. For help and support checkout
description: Shopware is a trendsetting ecommerce platform to power your online business. https://github.com/shyim/shopware-image
documentation: See https://hub.docker.com/r/shyim/shopware for tags and other variables displayName: Shopware
description: Shopware is a trendsetting ecommerce platform to power your online business.
documentation: See https://hub.docker.com/r/shyim/shopware for tags and other variables

View File

@ -1,40 +1,44 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
environment: environment:
UID: $$cap_uid UID: $$cap_uid
GID: $$cap_gid GID: $$cap_gid
image: sinusbot/docker:$$cap_version image: sinusbot/docker:$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/opt/sinusbot/data - $$cap_appname-data:/opt/sinusbot/data
- $$cap_appname-scripts:/opt/sinusbot/scripts - $$cap_appname-scripts:/opt/sinusbot/scripts
caproverExtra: caproverExtra:
containerHttpPort: "8087" containerHttpPort: '8087'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: SinusBot Docker Version - label: SinusBot Docker Version
defaultValue: 1.0.0-beta.10-202ee4d defaultValue: 1.0.0-beta.10-202ee4d
description: It's highly recommended that you don't use the latest tag but description:
instead the major version you need. It's highly recommended that you don't use the latest tag but
id: $$cap_version instead the major version you need.
- label: UID id: $$cap_version
description: User ID to run the service as (using root is not recommended), see - label: UID
https://github.com/SinusBot/docker#unprivileged-user description:
defaultValue: "1000" User ID to run the service as (using root is not recommended), see
id: $$cap_uid https://github.com/SinusBot/docker#unprivileged-user
- label: GID defaultValue: '1000'
description: Group ID to run the service as (using root is not recommended), see id: $$cap_uid
https://github.com/SinusBot/docker#unprivileged-user - label: GID
defaultValue: "1000" description:
id: $$cap_gid Group ID to run the service as (using root is not recommended), see
instructions: https://github.com/SinusBot/docker#unprivileged-user
end: Your instance of SinusBot is now starting up and should be ready within defaultValue: '1000'
five minutes. Check the deployment logs for the initial password and open id: $$cap_gid
the web interface to set up your media library and bot connection. instructions:
start: "You have to read and agree to the terms in the disclaimer: end:
https://github.com/SinusBot/docker#disclaimer" Your instance of SinusBot is now starting up and should be ready within
displayName: SinusBot five minutes. Check the deployment logs for the initial password and open
isOfficial: true the web interface to set up your media library and bot connection.
description: Music bot for TS3 and Discord. start: 'You have to read and agree to the terms in the disclaimer:
documentation: https://hub.docker.com/r/sinusbot/docker https://github.com/SinusBot/docker#disclaimer'
displayName: SinusBot
isOfficial: true
description: Music bot for TS3 and Discord.
documentation: https://hub.docker.com/r/sinusbot/docker

View File

@ -1,74 +1,75 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
restart: always restart: always
environment: environment:
POSTGRES_USER: sonarqube POSTGRES_USER: sonarqube
POSTGRES_PASSWORD: $$cap_pg_pass POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: sonarqube POSTGRES_DB: sonarqube
POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args POSTGRES_INITDB_ARGS: $$cap_pg_initdb_args
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
$$cap_appname: $$cap_appname:
image: sonarqube:$$cap_sonar_version image: sonarqube:$$cap_sonar_version
depends_on: depends_on:
- $$cap_appname-db - $$cap_appname-db
volumes: volumes:
- $$cap_appname-conf:/opt/sonarqube/conf - $$cap_appname-conf:/opt/sonarqube/conf
- $$cap_appname-data:/opt/sonarqube/data - $$cap_appname-data:/opt/sonarqube/data
- $$cap_appname-logs:/opt/sonarqube/logs - $$cap_appname-logs:/opt/sonarqube/logs
- $$cap_appname-extensions:/opt/sonarqube/extensions - $$cap_appname-extensions:/opt/sonarqube/extensions
restart: always restart: always
environment: environment:
sonar.jdbc.username: sonarqube sonar.jdbc.username: sonarqube
sonar.jdbc.password: $$cap_pg_pass sonar.jdbc.password: $$cap_pg_pass
sonar.jdbc.url: jdbc:postgresql://srv-captain--$$cap_appname-db/sonarqube sonar.jdbc.url: jdbc:postgresql://srv-captain--$$cap_appname-db/sonarqube
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_postgres_version - id: $$cap_postgres_version
label: Postgres Version label: Postgres Version
defaultValue: "9.6" defaultValue: '9.6'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/postgres/tags/ https://hub.docker.com/r/library/postgres/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_sonar_version - id: $$cap_sonar_version
label: Sonarqube Version label: Sonarqube Version
defaultValue: 7.7-community defaultValue: 7.7-community
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/_/sonarqube?tab=tags/ https://hub.docker.com/_/sonarqube?tab=tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_pg_pass - id: $$cap_pg_pass
label: Postgres Password label: Postgres Password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_pg_initdb_args - id: $$cap_pg_initdb_args
label: "OPTIONAL: Arguments for 'postgres initdb'" label: "OPTIONAL: Arguments for 'postgres initdb'"
description: For example, --data-checksums description: For example, --data-checksums
validRegex: /.{0,}/ validRegex: /.{0,}/
instructions: instructions:
start: >- start: >-
SonarQube is an open source product for continuous inspection of code SonarQube is an open source product for continuous inspection of code
quality. quality.
This Docker image contains the Community Edition of SonarQube. This Docker image contains the Community Edition of SonarQube.
Enter your Sonarqube Configuration parameters and click on next. Enter your Sonarqube Configuration parameters and click on next.
More information about this container can be found here: More information about this container can be found here:
https://hub.docker.com/_/sonarqube?tab=description https://hub.docker.com/_/sonarqube?tab=description
Default username: admin Default username: admin
Default password: admin Default password: admin
It will take about a minute for the process to finish. It will take about a minute for the process to finish.
end: SonarQube is deployed and available as srv-captain--$$cap_appname:9000 to end:
other apps. SonarQube is deployed and available as srv-captain--$$cap_appname:9000 to
displayName: "" other apps.
isOfficial: true displayName: ''
description: Catch bugs and vulnerabilities in your app, with thousands of isOfficial: true
automated Static Code Analysis rules description: Catch bugs and vulnerabilities in your app, with thousands of
documentation: Taken from https://hub.docker.com/_/sonarqube automated Static Code Analysis rules
documentation: Taken from https://hub.docker.com/_/sonarqube

View File

@ -1,46 +1,46 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: sourcegraph/server:$$cap_container_version image: sourcegraph/server:$$cap_container_version
volumes: volumes:
- $$cap_appname-config:/etc/sourcegraph - $$cap_appname-config:/etc/sourcegraph
- $$cap_appname-data:/var/opt/sourcegraph - $$cap_appname-data:/var/opt/sourcegraph
restart: always restart: always
caproverExtra: caproverExtra:
containerHttpPort: "7080" containerHttpPort: '7080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_container_version - id: $$cap_container_version
label: Version label: Version
defaultValue: 3.2.2 defaultValue: 3.2.2
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/sourcegraph/server/tags https://hub.docker.com/r/sourcegraph/server/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
Sourcegraph is a code search and navigation tool Sourcegraph is a code search and navigation tool
(open-source/self-hosted). (open-source/self-hosted).
More information about this container can be found here: https://hub.docker.com/r/sourcegraph/server/ . More information about this container can be found here: https://hub.docker.com/r/sourcegraph/server/ .
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 7080 to other CapRover apps. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at port 7080 to other CapRover apps.
Enter your Sourcegraph Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your Sourcegraph Configuration parameters and click on next. It will take about a minute for the process to finish.
end: >- end: >-
Sourcegraph is deployed and available as srv-captain--$$cap_appname:7080 Sourcegraph is deployed and available as srv-captain--$$cap_appname:7080
to other apps. Open the application to create the administrator account. to other apps. Open the application to create the administrator account.
SECURITY: If the site has no users (i.e., during initial setup), it will always allow the first user to sign up and become site admin **without any approval** (first user to sign up becomes the admin). SECURITY: If the site has no users (i.e., during initial setup), it will always allow the first user to sign up and become site admin **without any approval** (first user to sign up becomes the admin).
In order to use administration console, for critical configurations, the port 2633 needs to be mapped on the host. This port is not mapped, by default, for security reasons and because it's required only for special configurations. The administation console requires an admin username and a strong readonly password generated by the application. In order to use administration console, for critical configurations, the port 2633 needs to be mapped on the host. This port is not mapped, by default, for security reasons and because it's required only for special configurations. The administation console requires an admin username and a strong readonly password generated by the application.
More information about the administration console can be found here: More information about the administration console can be found here:
https://docs.sourcegraph.com/admin/management_console https://docs.sourcegraph.com/admin/management_console
To disable the signup option for other users use the administration console and change the boolean property "allowSignup" to false. More information here: https://docs.sourcegraph.com/admin/config/critical_config#builtin-password-authentication To disable the signup option for other users use the administration console and change the boolean property "allowSignup" to false. More information here: https://docs.sourcegraph.com/admin/config/critical_config#builtin-password-authentication
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: Sourcegraph is a free, self-hosted code search and intelligence description: Sourcegraph is a free, self-hosted code search and intelligence
server that helps developers find, review, understand, and debug code server that helps developers find, review, understand, and debug code
documentation: Taken from https://hub.docker.com/r/sourcegraph/server/ documentation: Taken from https://hub.docker.com/r/sourcegraph/server/

View File

@ -1,65 +1,69 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
ports: ports:
- $$cap_port:25565 - $$cap_port:25565
environment: environment:
EULA: $$cap_eula EULA: $$cap_eula
SPIGOT_VER: $$cap_spigot_version SPIGOT_VER: $$cap_spigot_version
MC_MAXMEM: $$cap_maxmem MC_MAXMEM: $$cap_maxmem
MC_MINMEM: $$cap_minmem MC_MINMEM: $$cap_minmem
SPIGOT_AUTORESTART: $$cap_autorestart SPIGOT_AUTORESTART: $$cap_autorestart
image: nimmis/spigot@$$cap_version image: nimmis/spigot@$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/minecraft - $$cap_appname-data:/minecraft
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: EULA - label: EULA
description: "IMPORTANT: Read the EULA at description: 'IMPORTANT: Read the EULA at
https://account.mojang.com/documents/minecraft_eula and set this field https://account.mojang.com/documents/minecraft_eula and set this field
to true if you agree. This is a prerequisite to use this software." to true if you agree. This is a prerequisite to use this software.'
defaultValue: "" defaultValue: ''
id: $$cap_eula id: $$cap_eula
- label: Docker Image Version - label: Docker Image Version
description: The Docker image used does not offer version tags. Since the use of description:
the latest tag is not recommended, refer to the image version by SHA The Docker image used does not offer version tags. Since the use of
tag. the latest tag is not recommended, refer to the image version by SHA
defaultValue: sha256:b968685fadb79e6dacca8efc030ee53f695441b8d6dfde4b86e027ba1f6796db tag.
id: $$cap_version defaultValue: sha256:b968685fadb79e6dacca8efc030ee53f695441b8d6dfde4b86e027ba1f6796db
- label: Game Server Port (TCP/UDP) id: $$cap_version
description: This is the port the server will expose for players to join. - label: Game Server Port (TCP/UDP)
defaultValue: "25565" description: This is the port the server will expose for players to join.
id: $$cap_port defaultValue: '25565'
- label: Spigot Version id: $$cap_port
description: Versions as available on - label: Spigot Version
https://www.spigotmc.org/wiki/buildtools/#versions (e.g. 1.15.2 or description: Versions as available on
latest) https://www.spigotmc.org/wiki/buildtools/#versions (e.g. 1.15.2 or
defaultValue: latest latest)
id: $$cap_spigot_version defaultValue: latest
- label: Maximum Memory id: $$cap_spigot_version
description: Define maximum memory to be used by the server (e.g. 512m or 2g) - label: Maximum Memory
defaultValue: 1g description: Define maximum memory to be used by the server (e.g. 512m or 2g)
id: $$cap_maxmem defaultValue: 1g
- label: Initial Memory id: $$cap_maxmem
description: Define initial memory reservation to be used by the server (e.g. - label: Initial Memory
512m or 2g) description:
defaultValue: 512m Define initial memory reservation to be used by the server (e.g.
id: $$cap_minmem 512m or 2g)
- label: Autorestart defaultValue: 512m
description: Define if container should automatically restart after issuing a id: $$cap_minmem
stop command within the server (yes or no) - label: Autorestart
defaultValue: yes description:
id: $$cap_autorestart Define if container should automatically restart after issuing a
instructions: stop command within the server (yes or no)
end: The container will now download and build the Spigot Minecraft server, so defaultValue: yes
you will need a few minutes before you can access it. Check the status in id: $$cap_autorestart
the logs. instructions:
start: "This one click app is based on a community created docker image, end:
nimmis/spigot. You have to agree to the Minecraft EULA to be able to use The container will now download and build the Spigot Minecraft server, so
this software: https://account.mojang.com/documents/minecraft_eula" you will need a few minutes before you can access it. Check the status in
displayName: Spigot the logs.
description: Spigot is a performance optimized server for Minecraft with plugin support. start: 'This one click app is based on a community created docker image,
documentation: https://github.com/nimmis/docker-spigot nimmis/spigot. You have to agree to the Minecraft EULA to be able to use
this software: https://account.mojang.com/documents/minecraft_eula'
displayName: Spigot
description: Spigot is a performance optimized server for Minecraft with plugin support.
documentation: https://github.com/nimmis/docker-spigot

View File

@ -1,59 +1,59 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
ports: ports:
- $$cap_sshd_port:22 - $$cap_sshd_port:22
volumes: volumes:
- $$cap_appname-data:/data - $$cap_appname-data:/data
restart: always restart: always
environment: {} environment: {}
caproverExtra: caproverExtra:
dockerfileLines: dockerfileLines:
- FROM ubuntu:16.04 - FROM ubuntu:16.04
- RUN apt-get update && apt-get install -y openssh-server - RUN apt-get update && apt-get install -y openssh-server
- RUN mkdir /var/run/sshd - RUN mkdir /var/run/sshd
- RUN echo 'root:$$cap_sshd_password' | chpasswd - RUN echo 'root:$$cap_sshd_password' | chpasswd
- RUN sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' - RUN sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/'
/etc/ssh/sshd_config /etc/ssh/sshd_config
- "# SSH login fix. Otherwise user is kicked off after login" - '# SSH login fix. Otherwise user is kicked off after login'
- RUN sed 's@sessions*requireds*pam_loginuid.so@session optional - RUN sed 's@sessions*requireds*pam_loginuid.so@session optional
pam_loginuid.so@g' -i /etc/pam.d/sshd pam_loginuid.so@g' -i /etc/pam.d/sshd
- ENV NOTVISIBLE "in users profile" - ENV NOTVISIBLE "in users profile"
- RUN echo "export VISIBLE=now" >> /etc/profile - RUN echo "export VISIBLE=now" >> /etc/profile
- EXPOSE 22 - EXPOSE 22
- CMD ["/usr/sbin/sshd", "-D"] - CMD ["/usr/sbin/sshd", "-D"]
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_sshd_password - id: $$cap_sshd_password
label: Your SSH root password label: Your SSH root password
description: Enter a secure password description: Enter a secure password
defaultValue: pAsSwOrD defaultValue: pAsSwOrD
validRegex: /.{8,}/ validRegex: /.{8,}/
- id: $$cap_sshd_port - id: $$cap_sshd_port
label: Your SSH exposed port label: Your SSH exposed port
description: Enter a port number description: Enter a port number
defaultValue: "4646" defaultValue: '4646'
validRegex: /^\d+$/ validRegex: /^\d+$/
instructions: instructions:
start: >- start: >-
The following app sets up an SSHd service in a container that you can use The following app sets up an SSHd service in a container that you can use
to connect to and inspect other containers volumes, or to get quick to connect to and inspect other containers volumes, or to get quick
access to a test container. access to a test container.
IMPORTANT: IMPORTANT:
This setup uses password login. You can optionally mount your keys and use public/private key to log in. This setup uses password login. You can optionally mount your keys and use public/private key to log in.
end: >- end: >-
The container is built and deployed. You can now connect to this container The container is built and deployed. You can now connect to this container
from your local machine by running the following command: from your local machine by running the following command:
ssh root@IpAddressOfServer -p $$cap_sshd_port ssh root@IpAddressOfServer -p $$cap_sshd_port
displayName: SSH Container displayName: SSH Container
isOfficial: true isOfficial: true
description: Just a simple container that has sshd installed so you can SSH description: Just a simple container that has sshd installed so you can SSH
directly into this container. directly into this container.
documentation: "Taken from documentation: "Taken from
https://docs.docker.com/engine/examples/running_ssh_service/#build-an-eg_ss\ https://docs.docker.com/engine/examples/running_ssh_service/#build-an-eg_ss\
hd-image " hd-image "

View File

@ -1,72 +1,73 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-core: $$cap_appname-core:
depends_on: depends_on:
- $$cap_appname-mongo - $$cap_appname-mongo
image: strapi/strapi:$$cap_strapi_version image: strapi/strapi:$$cap_strapi_version
volumes: volumes:
- $$cap_appname-data:/srv/app - $$cap_appname-data:/srv/app
restart: always restart: always
environment: environment:
DATABASE_CLIENT: mongo DATABASE_CLIENT: mongo
DATABASE_HOST: srv-captain--$$cap_appname-mongo DATABASE_HOST: srv-captain--$$cap_appname-mongo
DATABASE_PORT: "27017" DATABASE_PORT: '27017'
DATABASE_NAME: strapi DATABASE_NAME: strapi
DATABASE_USERNAME: root DATABASE_USERNAME: root
DATABASE_PASSWORD: $$cap_mongo_password DATABASE_PASSWORD: $$cap_mongo_password
DATABASE_AUTHENTICATION_DATABASE: strapi DATABASE_AUTHENTICATION_DATABASE: strapi
caproverExtra: caproverExtra:
containerHttpPort: "1337" containerHttpPort: '1337'
$$cap_appname-mongo: $$cap_appname-mongo:
image: mongo:$$cap_mongo_version image: mongo:$$cap_mongo_version
volumes: volumes:
- $$cap_appname-mongo-data:/data/db - $$cap_appname-mongo-data:/data/db
- $$cap_appname-mongo-config:/data/configdb - $$cap_appname-mongo-config:/data/configdb
restart: always restart: always
environment: environment:
MONGO_INITDB_DATABASE: strapi MONGO_INITDB_DATABASE: strapi
MONGO_INITDB_ROOT_USERNAME: root MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_strapi_version - id: $$cap_strapi_version
label: Strapi Version label: Strapi Version
defaultValue: 3.0.0-beta.18.6 defaultValue: 3.0.0-beta.18.6
description: Check out their page for the valid versions description: Check out their page for the valid versions
https://hub.docker.com/r/strapi/strapi/tags https://hub.docker.com/r/strapi/strapi/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_mongo_version - id: $$cap_mongo_version
label: MongoDB Version label: MongoDB Version
defaultValue: "4" defaultValue: '4'
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mongo/tags/ https://hub.docker.com/r/library/mongo/tags/
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_mongo_password - id: $$cap_mongo_password
label: MongoDB password label: MongoDB password
description: Only use alphanumeric chars. description: Only use alphanumeric chars.
validRegex: /^([a-zA-Z0-9])+$/ validRegex: /^([a-zA-Z0-9])+$/
instructions: instructions:
start: >- start: >-
API creation made simple, secure and fast. The most advanced open-source API creation made simple, secure and fast. The most advanced open-source
Content Management Framework to build powerful API with no effort. Read Content Management Framework to build powerful API with no effort. Read
more here: https://strapi.io more here: https://strapi.io
NOTE: Hardware requirements: NOTE: Hardware requirements:
2GB minimum RAM required 2GB minimum RAM required
1Ghz minimum CPU clock speed 1Ghz minimum CPU clock speed
end: >- end: >-
Strapi is deployed and available as $$cap_appname-core Strapi is deployed and available as $$cap_appname-core
IMPORTANT!! It takes up to 2-5 minutes for Strapi to boot up. You will see a 502 Error until the startup is finished. IMPORTANT!! It takes up to 2-5 minutes for Strapi to boot up. You will see a 502 Error until the startup is finished.
IMPORTANT: You need to add a config file manually to support the correct domain name. See this issue for more details: https://github.com/strapi/strapi-docker/issues/173 IMPORTANT: You need to add a config file manually to support the correct domain name. See this issue for more details: https://github.com/strapi/strapi-docker/issues/173
displayName: "" displayName: ''
isOfficial: true isOfficial: true
description: The Open source Headless CMS Front-End Developers love. Manage your description:
content. Distribute it anywhere The Open source Headless CMS Front-End Developers love. Manage your
documentation: Taken from content. Distribute it anywhere
https://github.com/strapi/strapi-docker/blob/master/examples/mongo/docker-compose.yml documentation: Taken from
https://github.com/strapi/strapi-docker/blob/master/examples/mongo/docker-compose.yml

View File

@ -1,30 +1,31 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
ports: ports:
- $$cap_port_sync:22000 - $$cap_port_sync:22000
image: syncthing/syncthing:$$cap_version image: syncthing/syncthing:$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/var/syncthing - $$cap_appname-data:/var/syncthing
caproverExtra: caproverExtra:
containerHttpPort: "8384" containerHttpPort: '8384'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Syncthing Docker Version - label: Syncthing Docker Version
defaultValue: 1.5.0 defaultValue: 1.5.0
description: It's highly recommended that you don't use the latest tag but description:
instead the major version you need. It's highly recommended that you don't use the latest tag but
id: $$cap_version instead the major version you need.
- label: Sync Protocol Listening Port id: $$cap_version
description: Port that Syncthing listens on for data synchronization (TCP). - label: Sync Protocol Listening Port
defaultValue: "22000" description: Port that Syncthing listens on for data synchronization (TCP).
id: $$cap_port_sync defaultValue: '22000'
instructions: id: $$cap_port_sync
end: Your instance of Syncthing is now starting up. instructions:
start: "Read more about Syncthing's goals: end: Your instance of Syncthing is now starting up.
https://github.com/syncthing/syncthing#goals" start: "Read more about Syncthing's goals:
displayName: Syncthing https://github.com/syncthing/syncthing#goals"
isOfficial: true displayName: Syncthing
description: Open Source Continuous File Synchronization. isOfficial: true
documentation: https://hub.docker.com/r/syncthing/syncthing description: Open Source Continuous File Synchronization.
documentation: https://hub.docker.com/r/syncthing/syncthing

View File

@ -1,46 +1,50 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
ports: ports:
- $$cap_port_voice:9987 - $$cap_port_voice:9987
- $$cap_port_files:30033 - $$cap_port_files:30033
- $$cap_port_query:10011 - $$cap_port_query:10011
environment: environment:
TS3SERVER_LICENSE: accept TS3SERVER_LICENSE: accept
image: teamspeak:$$cap_version image: teamspeak:$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/var/ts3server/ - $$cap_appname-data:/var/ts3server/
caproverExtra: caproverExtra:
notExposeAsWebApp: "true" notExposeAsWebApp: 'true'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: TeamSpeak Docker Version - label: TeamSpeak Docker Version
defaultValue: 3.12.0 defaultValue: 3.12.0
description: It's highly recommended that you don't use the latest tag but description:
instead the major version you need, e.g. teamspeak:3.12.0 It's highly recommended that you don't use the latest tag but
id: $$cap_version instead the major version you need, e.g. teamspeak:3.12.0
- label: Voice Port (UDP) id: $$cap_version
description: Port for voice (UDP) - label: Voice Port (UDP)
defaultValue: "9987" description: Port for voice (UDP)
id: $$cap_port_voice defaultValue: '9987'
- label: File transfer (TCP) id: $$cap_port_voice
description: Transferring files. - label: File transfer (TCP)
defaultValue: "30033" description: Transferring files.
id: $$cap_port_files defaultValue: '30033'
- label: Server Query Port (TCP) id: $$cap_port_files
description: Port for querying in server discovery - label: Server Query Port (TCP)
defaultValue: "10011" description: Port for querying in server discovery
id: $$cap_port_query defaultValue: '10011'
instructions: id: $$cap_port_query
end: Then you can connect to localhost/ip in your TeamSpeak client. Please write instructions:
down the server query password, and server admin privilege key that were end:
generated. These are needed to administrate the TeamSpeak server. Found in Then you can connect to localhost/ip in your TeamSpeak client. Please write
the logs. down the server query password, and server admin privilege key that were
start: TeamSpeak is the number one choice VoIP communication system for Online generated. These are needed to administrate the TeamSpeak server. Found in
Gaming. the logs.
displayName: TeamSpeak start:
isOfficial: true TeamSpeak is the number one choice VoIP communication system for Online
description: TeamSpeak is the number one choice VoIP communication system for Gaming.
Online Gaming. displayName: TeamSpeak
documentation: https://hub.docker.com/_/teamspeak isOfficial: true
description:
TeamSpeak is the number one choice VoIP communication system for
Online Gaming.
documentation: https://hub.docker.com/_/teamspeak

View File

@ -1,27 +1,28 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: thelounge/thelounge:$$cap_lounge_version image: thelounge/thelounge:$$cap_lounge_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/var/opt/thelounge - $$cap_appname-data:/var/opt/thelounge
caproverExtra: caproverExtra:
containerHttpPort: "9000" containerHttpPort: '9000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_lounge_version - id: $$cap_lounge_version
label: The Lounge Version Tag label: The Lounge Version Tag
defaultValue: 4.1.0 defaultValue: 4.1.0
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/thelounge/thelounge/tags https://hub.docker.com/r/thelounge/thelounge/tags
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: The Lounge, a self-hosted web IRC client. start: The Lounge, a self-hosted web IRC client.
end: >- end: >-
Your instance is now fully deployed. Your instance is now fully deployed.
To create your user, run `docker exec --user node -it $(docker ps -f name=srv-captain--$$cap_appname --quiet) thelounge add [user]` on your host. To create your user, run `docker exec --user node -it $(docker ps -f name=srv-captain--$$cap_appname --quiet) thelounge add [user]` on your host.
displayName: The Lounge displayName: The Lounge
isOfficial: true isOfficial: true
description: The Lounge is a self-hosted web IRC client with modern features, description:
persistent connections, and multi-user support. The Lounge is a self-hosted web IRC client with modern features,
documentation: Adapted from https://thelounge.chat/docs/install-and-upgrade#docker. persistent connections, and multi-user support.
documentation: Adapted from https://thelounge.chat/docs/install-and-upgrade#docker.

View File

@ -1,36 +1,36 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-db: $$cap_appname-db:
image: minimalcompact/thumbor:$$cap_thumbor_version image: minimalcompact/thumbor:$$cap_thumbor_version
volumes: volumes:
- $$cap_appname-thumbor:/data - $$cap_appname-thumbor:/data
restart: always restart: always
environment: environment:
THUMBOR_PORT: "80" THUMBOR_PORT: '80'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_thumbor_version - id: $$cap_thumbor_version
label: Thumbor Version label: Thumbor Version
defaultValue: 6.7.0 defaultValue: 6.7.0
description: Checkout their Docker page for the valid tags description: Checkout their Docker page for the valid tags
https://hub.docker.com/r/minimalcompact/thumbor/tags/ https://hub.docker.com/r/minimalcompact/thumbor/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
thumbor is a smart imaging service. It enables on-demand crop, resizing thumbor is a smart imaging service. It enables on-demand crop, resizing
and flipping of images. It also features a VERY smart detection of and flipping of images. It also features a VERY smart detection of
important points in the image for better cropping and resizing, using important points in the image for better cropping and resizing, using
state-of-the-art face and feature detection algorithms (more on that in state-of-the-art face and feature detection algorithms (more on that in
Detection Algorithms). Using thumbor is very easy (after it is running). Detection Algorithms). Using thumbor is very easy (after it is running).
All you have to do is access it using an URL for an image, like this: All you have to do is access it using an URL for an image, like this:
http://<thumbor-server>/300x200/smart/s.glbimg.com/et/bb/f/original/2011/03/24/VN0JiwzmOw0b0lg.jpg http://<thumbor-server>/300x200/smart/s.glbimg.com/et/bb/f/original/2011/03/24/VN0JiwzmOw0b0lg.jpg
See http://thumbor.org for more details. See http://thumbor.org for more details.
Enter your thumbor Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your thumbor Configuration parameters and click on next. It will take about a minute for the process to finish.
end: thumbor is deployed and available as $$cap_appname-db. Go to end: thumbor is deployed and available as $$cap_appname-db. Go to
YOUR_APP_URL/unsafe/200x50/i.imgur.com/bvjzPct.jpg to test thumbor! YOUR_APP_URL/unsafe/200x50/i.imgur.com/bvjzPct.jpg to test thumbor!
displayName: "" displayName: ''
description: Thumbor is a smart imaging service. It enables on-demand crop, description: Thumbor is a smart imaging service. It enables on-demand crop,
resizing and flipping of images resizing and flipping of images
documentation: Taken from https://hub.docker.com/r/minimalcompact/thumbor/tags/ documentation: Taken from https://hub.docker.com/r/minimalcompact/thumbor/tags/

View File

@ -1,40 +1,41 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: nicolaw/tiddlywiki image: nicolaw/tiddlywiki
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/var/lib/tiddlywiki - $$cap_appname-data:/var/lib/tiddlywiki
environment: environment:
TW_USERNAME: $$cap_wikusername TW_USERNAME: $$cap_wikusername
TW_PASSWORD: $$cap_wikipassword TW_PASSWORD: $$cap_wikipassword
NODE_MEM: $$cap_nodemem NODE_MEM: $$cap_nodemem
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_wikusername - id: $$cap_wikusername
label: Username label: Username
defaultValue: anonymous defaultValue: anonymous
description: Username for authentication (leave blank for a public wiki) description: Username for authentication (leave blank for a public wiki)
- id: $$cap_wikipassword - id: $$cap_wikipassword
label: Password label: Password
description: Password for authentication (leave blank for a public wiki) description: Password for authentication (leave blank for a public wiki)
- id: $$cap_nodemem - id: $$cap_nodemem
label: Max Memory label: Max Memory
defaultValue: "400" defaultValue: '400'
validRegex: /^[0-9]+$/ validRegex: /^[0-9]+$/
description: Limit the memory that the server can consume description: Limit the memory that the server can consume
instructions: instructions:
start: TiddlyWiki is a personal wiki and a non-linear notebook for organising start:
and sharing complex information. It is an open-source single page TiddlyWiki is a personal wiki and a non-linear notebook for organising
application wiki in the form of a single HTML file that includes CSS, and sharing complex information. It is an open-source single page
JavaScript, and the content. It is designed to be easy to customize and application wiki in the form of a single HTML file that includes CSS,
re-shape depending on application. It facilitates re-use of content by JavaScript, and the content. It is designed to be easy to customize and
dividing it into small pieces called Tiddlers. re-shape depending on application. It facilitates re-use of content by
end: You TiddlyWiki is deployed; it might take a minute to be ready. See dividing it into small pieces called Tiddlers.
https://$$cap_appname.$$cap_root_domain/#HelloThere to get started. end: You TiddlyWiki is deployed; it might take a minute to be ready. See
displayName: TiddlyWiki https://$$cap_appname.$$cap_root_domain/#HelloThere to get started.
description: TiddlyWiki is a personal wiki and a non-linear notebook for displayName: TiddlyWiki
organising and sharing complex information description: TiddlyWiki is a personal wiki and a non-linear notebook for
documentation: Based on https://hub.docker.com/r/nicolaw/tiddlywiki organising and sharing complex information
documentation: Based on https://hub.docker.com/r/nicolaw/tiddlywiki

View File

@ -1,35 +1,37 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: verdaccio/verdaccio:$$cap__verdaccio_version image: verdaccio/verdaccio:$$cap__verdaccio_version
volumes: volumes:
- $$cap_appname-storage:/verdaccio/storage - $$cap_appname-storage:/verdaccio/storage
- $$cap_appname-conf:/verdaccio/conf - $$cap_appname-conf:/verdaccio/conf
- $$cap_appname-plugins:/verdaccio/plugins - $$cap_appname-plugins:/verdaccio/plugins
restart: always restart: always
environment: {} environment: {}
caproverExtra: caproverExtra:
containerHttpPort: "4873" containerHttpPort: '4873'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap__verdaccio_version - id: $$cap__verdaccio_version
label: Verdaccio Version label: Verdaccio Version
defaultValue: 3.11.6 defaultValue: 3.11.6
description: "Additional tags can be found here: description: 'Additional tags can be found here:
https://hub.docker.com/r/verdaccio/verdaccio/tags" https://hub.docker.com/r/verdaccio/verdaccio/tags'
instructions: instructions:
start: >- start: >-
Verdaccio is a simple, zero-config-required local private npm registry. Verdaccio is a simple, zero-config-required local private npm registry.
No need for an entire database just to get started! Verdaccio comes out of the box with its own tiny database, and the ability to proxy other registries (eg. npmjs.org), caching the downloaded modules along the way. For those looking to extend their storage capabilities, Verdaccio supports various community-made plugins to hook into services such as Amazon's S3, Google Cloud Storage, or create your own plugin. No need for an entire database just to get started! Verdaccio comes out of the box with its own tiny database, and the ability to proxy other registries (eg. npmjs.org), caching the downloaded modules along the way. For those looking to extend their storage capabilities, Verdaccio supports various community-made plugins to hook into services such as Amazon's S3, Google Cloud Storage, or create your own plugin.
For more details, see: https://hub.docker.com/r/verdaccio/verdaccio For more details, see: https://hub.docker.com/r/verdaccio/verdaccio
Enter your verdaccio Configuration parameters and click on next. It will take about a minute for the process to finish. Enter your verdaccio Configuration parameters and click on next. It will take about a minute for the process to finish.
end: Verdaccio is deployed and available as srv-captain--$$cap_appname:4873 to end:
other apps.. Verdaccio is deployed and available as srv-captain--$$cap_appname:4873 to
displayName: "" other apps..
isOfficial: true displayName: ''
description: Verdaccio is a lightweight private npm proxy registry that allows isOfficial: true
you to have your own npm registry for free description:
documentation: Taken from https://hub.docker.com/r/verdaccio/verdaccio/ Verdaccio is a lightweight private npm proxy registry that allows
you to have your own npm registry for free
documentation: Taken from https://hub.docker.com/r/verdaccio/verdaccio/

View File

@ -1,41 +1,42 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
environment: environment:
PASSWORD: $$cap_coder_password PASSWORD: $$cap_coder_password
image: "" image: ''
restart: always restart: always
volumes: volumes:
- $$cap_appname-config-data:/home/coder/.local/share/code-server - $$cap_appname-config-data:/home/coder/.local/share/code-server
- $$cap_appname-project-directory:/home/coder/project - $$cap_appname-project-directory:/home/coder/project
caproverExtra: caproverExtra:
containerHttpPort: "8080" containerHttpPort: '8080'
dockerfileLines: dockerfileLines:
- FROM codercom/code-server:2.1697-vsc1.39.2 - FROM codercom/code-server:2.1697-vsc1.39.2
- "# Similar to the original file, except setting the user to root to - '# Similar to the original file, except setting the user to root to
prevent permission issues." prevent permission issues.'
- USER root - USER root
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- description: Password for accessing VS Code - description: Password for accessing VS Code
id: $$cap_coder_password id: $$cap_coder_password
label: Password label: Password
validRegex: /^[^"]*$/ validRegex: /^[^"]*$/
instructions: instructions:
end: >- end: >-
Code server is deployed and is available as $$cap_appname. Code server is deployed and is available as $$cap_appname.
IMPORTANT: Make sure to enable websocket capability in the app config on CapRover dashboard! IMPORTANT: Make sure to enable websocket capability in the app config on CapRover dashboard!
start: >- start: >-
This installation will install a Visual Studio Code that's accessible This installation will install a Visual Studio Code that's accessible
through browser! through browser!
IMPORTANT: Make sure you have at least 2GB of RAM when you run code-server. IMPORTANT: Make sure you have at least 2GB of RAM when you run code-server.
displayName: vscode via code-server displayName: vscode via code-server
isOfficial: true isOfficial: true
description: code-server by Coder is VS Code running on a remote server, description: code-server by Coder is VS Code running on a remote server,
accessible through the browser. accessible through the browser.
documentation: Taken from https://github.com/cdr/code-server/ . Except the image documentation:
version (tag) is fixed to a specific version rather than generic 'v2' as Taken from https://github.com/cdr/code-server/ . Except the image
this will ensure consistency of deployments. version (tag) is fixed to a specific version rather than generic 'v2' as
this will ensure consistency of deployments.

View File

@ -1,42 +1,45 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname: $$cap_appname:
image: microsoft/vsts-agent:$$cap_vsts_version image: microsoft/vsts-agent:$$cap_vsts_version
restart: always restart: always
environment: environment:
VSTS_ACCOUNT: $$cap_vsts_account VSTS_ACCOUNT: $$cap_vsts_account
VSTS_TOKEN: $$cap_vsts_token VSTS_TOKEN: $$cap_vsts_token
VSTS_AGENT: $$cap_vsts_name VSTS_AGENT: $$cap_vsts_name
VSTS_POOL: $$cap_vsts_pool VSTS_POOL: $$cap_vsts_pool
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- id: $$cap_vsts_version - id: $$cap_vsts_version
label: VSTS Version Tag label: VSTS Version Tag
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/microsoft/vsts-agent/tags/ https://hub.docker.com/r/microsoft/vsts-agent/tags/
defaultValue: ubuntu-16.04-standard defaultValue: ubuntu-16.04-standard
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
- id: $$cap_vsts_account - id: $$cap_vsts_account
label: VSTS Account label: VSTS Account
description: The name of the Visual Studio account. Take only the account part description:
from your address, e.g. http://{account}.visualstudio.com The name of the Visual Studio account. Take only the account part
validRegex: /.{1,}/ from your address, e.g. http://{account}.visualstudio.com
- id: $$cap_vsts_token validRegex: /.{1,}/
label: VSTS Token - id: $$cap_vsts_token
description: A personal access token (PAT) for the Visual Studio account that label: VSTS Token
has been given at least the Agent Pools (read, manage) scope. description:
validRegex: /.{1,}/ A personal access token (PAT) for the Visual Studio account that
- id: $$cap_vsts_name has been given at least the Agent Pools (read, manage) scope.
label: VSTS Agent Name validRegex: /.{1,}/
validRegex: /.{1,}/ - id: $$cap_vsts_name
- id: $$cap_vsts_pool label: VSTS Agent Name
label: VSTS Pool validRegex: /.{1,}/
validRegex: /.{1,}/ - id: $$cap_vsts_pool
instructions: label: VSTS Pool
start: Official image for the Visual Studio Team Services (VSTS) agent. validRegex: /.{1,}/
end: VSTS Agent is deployed and available as $$cap_appname instructions:
displayName: VSTS start: Official image for the Visual Studio Team Services (VSTS) agent.
isOfficial: true end: VSTS Agent is deployed and available as $$cap_appname
description: VSTS is an integrated development environment (IDE) developed as a displayName: VSTS
software product by Microsoft Corp isOfficial: true
documentation: Taken from https://hub.docker.com/r/microsoft/vsts-agent/ description:
VSTS is an integrated development environment (IDE) developed as a
software product by Microsoft Corp
documentation: Taken from https://hub.docker.com/r/microsoft/vsts-agent/

View File

@ -1,49 +1,51 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-postgres: $$cap_appname-postgres:
image: postgres:$$cap_postgres_version image: postgres:$$cap_postgres_version
environment: environment:
POSTGRES_DB: wiki POSTGRES_DB: wiki
POSTGRES_PASSWORD: $$cap_DB_PASS POSTGRES_PASSWORD: $$cap_DB_PASS
POSTGRES_USER: wikijs POSTGRES_USER: wikijs
volumes: volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data - $$cap_appname-db-data:/var/lib/postgresql/data
$$cap_appname: $$cap_appname:
environment: environment:
DB_TYPE: postgres DB_TYPE: postgres
DB_HOST: srv-captain--$$cap_appname-postgres DB_HOST: srv-captain--$$cap_appname-postgres
DB_PORT: "5432" DB_PORT: '5432'
DB_USER: wikijs DB_USER: wikijs
DB_PASS: $$cap_DB_PASS DB_PASS: $$cap_DB_PASS
DB_NAME: wiki DB_NAME: wiki
image: requarks/wiki:$$cap_version image: requarks/wiki:$$cap_version
restart: always restart: always
volumes: volumes:
- $$cap_appname-data:/wiki - $$cap_appname-data:/wiki
caproverExtra: caproverExtra:
containerHttpPort: "3000" containerHttpPort: '3000'
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- label: Wiki.js Version - label: Wiki.js Version
defaultValue: "2" defaultValue: '2'
description: It's highly recommended that you don't use the latest tag but description:
instead the major version you need, e.g. requarks/wiki:2 It's highly recommended that you don't use the latest tag but
id: $$cap_version instead the major version you need, e.g. requarks/wiki:2
- label: Postgres Version id: $$cap_version
defaultValue: 11-alpine - label: Postgres Version
id: $$cap_postgres_version defaultValue: 11-alpine
- label: Database Password id: $$cap_postgres_version
description: Password to connect to the database - label: Database Password
defaultValue: daTaBaSePaSsWorD description: Password to connect to the database
id: $$cap_DB_PASS defaultValue: daTaBaSePaSsWorD
instructions: id: $$cap_DB_PASS
end: > instructions:
Wiki.js is deployed and available as $$cap_appname. end: >
Wiki.js is deployed and available as $$cap_appname.
IMPORTANT: It will take up to 2 minutes for Wiki.js to be ready. Before that, you might see 502 error page. IMPORTANT: It will take up to 2 minutes for Wiki.js to be ready. Before that, you might see 502 error page.
start: Wiki.js is a fully open source, adaptable platform for building and start:
running a Wiki. Wiki.js is a fully open source, adaptable platform for building and
displayName: wiki.js running a Wiki.
isOfficial: true displayName: wiki.js
description: The most powerful and extensible open source Wiki software isOfficial: true
documentation: https://docs.requarks.io/ description: The most powerful and extensible open source Wiki software
documentation: https://docs.requarks.io/

View File

@ -1,62 +1,62 @@
captainVersion: 4 captainVersion: 4
services: services:
$$cap_appname-wordpress: $$cap_appname-wordpress:
image: wordpress:$$cap_wp_version image: wordpress:$$cap_wp_version
volumes: volumes:
- $$cap_appname-wp-data:/var/www/html - $$cap_appname-wp-data:/var/www/html
restart: always restart: always
environment: environment:
WORDPRESS_DB_HOST: $$cap_db_host:3306 WORDPRESS_DB_HOST: $$cap_db_host:3306
WORDPRESS_DB_NAME: $$cap_db_name WORDPRESS_DB_NAME: $$cap_db_name
WORDPRESS_TABLE_PREFIX: $$cap_db_prefix WORDPRESS_TABLE_PREFIX: $$cap_db_prefix
WORDPRESS_DB_USER: $$cap_db_user WORDPRESS_DB_USER: $$cap_db_user
WORDPRESS_DB_PASSWORD: $$cap_db_pass WORDPRESS_DB_PASSWORD: $$cap_db_pass
caproverOneClickApp: caproverOneClickApp:
variables: variables:
- description: Database host - description: Database host
defaultValue: srv-captain--xxx defaultValue: srv-captain--xxx
id: $$cap_db_host id: $$cap_db_host
label: Database Host label: Database Host
- description: Database name - description: Database name
defaultValue: wordpress defaultValue: wordpress
id: $$cap_db_name id: $$cap_db_name
label: DB Name label: DB Name
- description: Table prefix used by this Wordpress - description: Table prefix used by this Wordpress
defaultValue: WP_ defaultValue: WP_
id: $$cap_db_prefix id: $$cap_db_prefix
label: Table Prefix label: Table Prefix
- id: $$cap_db_user - id: $$cap_db_user
label: Database user label: Database user
defaultValue: wordpressuser defaultValue: wordpressuser
- id: $$cap_db_pass - id: $$cap_db_pass
label: Database password label: Database password
description: "" description: ''
validRegex: /.{1,}/ validRegex: /.{1,}/
- id: $$cap_wp_version - id: $$cap_wp_version
label: WordPress Version label: WordPress Version
defaultValue: 5.4.0 defaultValue: 5.4.0
description: Check out their Docker page for the valid tags description: Check out their Docker page for the valid tags
https://hub.docker.com/r/library/wordpress/tags/ https://hub.docker.com/r/library/wordpress/tags/
validRegex: /^([^\s^\/])+$/ validRegex: /^([^\s^\/])+$/
instructions: instructions:
start: >- start: >-
WordPress is an online, open source website creation tool written in PHP. WordPress is an online, open source website creation tool written in PHP.
But in non-geek speak, its probably the easiest and most powerful But in non-geek speak, its probably the easiest and most powerful
blogging and website content management system (or CMS) in existence blogging and website content management system (or CMS) in existence
today. today.
Enter your WordPress Configuration parameters and click on next. A WordPress container will be created for you. The process will take about a minute for the process to finish. Enter your WordPress Configuration parameters and click on next. A WordPress container will be created for you. The process will take about a minute for the process to finish.
Note: This app is intended for advanced users who'd like to have a central DB in a single container for multiple WP's. You should start by configuring your DB first and then comeback with all the DB Information. Note: This app is intended for advanced users who'd like to have a central DB in a single container for multiple WP's. You should start by configuring your DB first and then comeback with all the DB Information.
end: >- end: >-
Wordpress is deployed and available as $$cap_appname-wordpress . Wordpress is deployed and available as $$cap_appname-wordpress .
IMPORTANT: It will take up to 2 minutes for WordPress to be ready. Before that, you might see a 502 error page. IMPORTANT: It will take up to 2 minutes for WordPress to be ready. Before that, you might see a 502 error page.
. Remember that this app will not create a Database by itself. You need to provide all that information. . Remember that this app will not create a Database by itself. You need to provide all that information.
displayName: WordPress - No Database displayName: WordPress - No Database
isOfficial: true isOfficial: true
description: This will create a WordPress only. You will need to create and description: This will create a WordPress only. You will need to create and
configure the database information manually. Intended for advanced users. configure the database information manually. Intended for advanced users.
documentation: Taken from https://docs.docker.com/compose/wordpress/. Port documentation: Taken from https://docs.docker.com/compose/wordpress/. Port
mapping removed from WP as it is no longer needed mapping removed from WP as it is no longer needed

Some files were not shown because too many files have changed in this diff Show More