supprission de toutes lea app et l'ajout de odoo16 et odoo17

This commit is contained in:
abdallah 2024-01-05 23:56:40 +00:00
parent 3b0223bed3
commit 1786c9db55
612 changed files with 662 additions and 24359 deletions

573
package-lock.json generated
View File

@ -1,8 +1,579 @@
{
"name": "caprover-one-click-apps",
"version": "1.0.0",
"lockfileVersion": 1,
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "caprover-one-click-apps",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"fs-extra": "^9.0.1",
"gh-pages": "^3.1.0",
"prettier": "^2.0.5",
"yaml": "^1.10.0"
}
},
"node_modules/array-union": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
"integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
"dependencies": {
"array-uniq": "^1.0.1"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/array-uniq": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
"integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/async": {
"version": "2.6.3",
"resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
"integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
"dependencies": {
"lodash": "^4.17.14"
}
},
"node_modules/at-least-node": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
"integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
"engines": {
"node": ">= 4.0.0"
}
},
"node_modules/balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"node_modules/commander": {
"version": "2.20.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
},
"node_modules/commondir": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
"integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs="
},
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"node_modules/email-addresses": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/email-addresses/-/email-addresses-3.1.0.tgz",
"integrity": "sha512-k0/r7GrWVL32kZlGwfPNgB2Y/mMXVTq/decgLczm/j34whdaspNrZO8CnXPf1laaHxI6ptUlsnAxN+UAPw+fzg=="
},
"node_modules/escape-string-regexp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/filename-reserved-regex": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz",
"integrity": "sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/filenamify": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/filenamify/-/filenamify-1.2.1.tgz",
"integrity": "sha1-qfL/0RxQO+0wABUCknI3jx8TZaU=",
"dependencies": {
"filename-reserved-regex": "^1.0.0",
"strip-outer": "^1.0.0",
"trim-repeated": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/filenamify-url": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/filenamify-url/-/filenamify-url-1.0.0.tgz",
"integrity": "sha1-syvYExnvWGO3MHi+1Q9GpPeXX1A=",
"dependencies": {
"filenamify": "^1.0.0",
"humanize-url": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/find-cache-dir": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz",
"integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==",
"dependencies": {
"commondir": "^1.0.1",
"make-dir": "^3.0.2",
"pkg-dir": "^4.1.0"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/avajs/find-cache-dir?sponsor=1"
}
},
"node_modules/find-up": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dependencies": {
"locate-path": "^5.0.0",
"path-exists": "^4.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/fs-extra": {
"version": "9.0.1",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz",
"integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==",
"dependencies": {
"at-least-node": "^1.0.0",
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^1.0.0"
},
"engines": {
"node": ">=10"
}
},
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
"node_modules/gh-pages": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-3.1.0.tgz",
"integrity": "sha512-3b1rly9kuf3/dXsT8+ZxP0UhNLOo1CItj+3e31yUVcaph/yDsJ9RzD7JOw5o5zpBTJVQLlJAASNkUfepi9fe2w==",
"dependencies": {
"async": "^2.6.1",
"commander": "^2.18.0",
"email-addresses": "^3.0.1",
"filenamify-url": "^1.0.0",
"find-cache-dir": "^3.3.1",
"fs-extra": "^8.1.0",
"globby": "^6.1.0"
},
"bin": {
"gh-pages": "bin/gh-pages.js",
"gh-pages-clean": "bin/gh-pages-clean.js"
},
"engines": {
"node": ">=10"
}
},
"node_modules/gh-pages/node_modules/fs-extra": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
"integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
"dependencies": {
"graceful-fs": "^4.2.0",
"jsonfile": "^4.0.0",
"universalify": "^0.1.0"
},
"engines": {
"node": ">=6 <7 || >=8"
}
},
"node_modules/gh-pages/node_modules/jsonfile": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
"optionalDependencies": {
"graceful-fs": "^4.1.6"
}
},
"node_modules/gh-pages/node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
"engines": {
"node": ">= 4.0.0"
}
},
"node_modules/glob": {
"version": "7.1.6",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
"integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"engines": {
"node": "*"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/globby": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
"integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
"dependencies": {
"array-union": "^1.0.1",
"glob": "^7.0.3",
"object-assign": "^4.0.1",
"pify": "^2.0.0",
"pinkie-promise": "^2.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/graceful-fs": {
"version": "4.2.4",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
"integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="
},
"node_modules/humanize-url": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/humanize-url/-/humanize-url-1.0.1.tgz",
"integrity": "sha1-9KuZ4NKIF0yk4eUEB8VfuuRk7/8=",
"dependencies": {
"normalize-url": "^1.0.0",
"strip-url-auth": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"node_modules/is-plain-obj": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
"integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/jsonfile": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz",
"integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==",
"dependencies": {
"universalify": "^1.0.0"
},
"optionalDependencies": {
"graceful-fs": "^4.1.6"
}
},
"node_modules/locate-path": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dependencies": {
"p-locate": "^4.1.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/lodash": {
"version": "4.17.19",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
"integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ=="
},
"node_modules/make-dir": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
"integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
"dependencies": {
"semver": "^6.0.0"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dependencies": {
"brace-expansion": "^1.1.7"
},
"engines": {
"node": "*"
}
},
"node_modules/normalize-url": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz",
"integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=",
"dependencies": {
"object-assign": "^4.0.1",
"prepend-http": "^1.0.0",
"query-string": "^4.1.0",
"sort-keys": "^1.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dependencies": {
"wrappy": "1"
}
},
"node_modules/p-limit": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dependencies": {
"p-try": "^2.0.0"
},
"engines": {
"node": ">=6"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/p-locate": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dependencies": {
"p-limit": "^2.2.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
"engines": {
"node": ">=6"
}
},
"node_modules/path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"engines": {
"node": ">=8"
}
},
"node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/pinkie": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
"integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/pinkie-promise": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
"integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
"dependencies": {
"pinkie": "^2.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/pkg-dir": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
"integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
"dependencies": {
"find-up": "^4.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/prepend-http": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
"integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/prettier": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.0.5.tgz",
"integrity": "sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==",
"bin": {
"prettier": "bin-prettier.js"
},
"engines": {
"node": ">=10.13.0"
}
},
"node_modules/query-string": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz",
"integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=",
"dependencies": {
"object-assign": "^4.1.0",
"strict-uri-encode": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/semver": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
"bin": {
"semver": "bin/semver.js"
}
},
"node_modules/sort-keys": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
"integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
"dependencies": {
"is-plain-obj": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/strict-uri-encode": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
"integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/strip-outer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz",
"integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==",
"dependencies": {
"escape-string-regexp": "^1.0.2"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/strip-url-auth": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/strip-url-auth/-/strip-url-auth-1.0.1.tgz",
"integrity": "sha1-IrD6OkE4WzO+PzMVUbu4N/oM164=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/trim-repeated": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz",
"integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=",
"dependencies": {
"escape-string-regexp": "^1.0.2"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/universalify": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz",
"integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==",
"engines": {
"node": ">= 10.0.0"
}
},
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"node_modules/yaml": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz",
"integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==",
"engines": {
"node": ">= 6"
}
}
},
"dependencies": {
"array-union": {
"version": "1.0.2",

View File

@ -1,59 +0,0 @@
captainVersion: 4
services:
# Ackee
$$cap_appname:
depends_on:
- $$cap_appname-mongodb
image: electerious/ackee:$$cap_ackee_version
restart: always
environment:
WAIT_HOSTS: srv-captain--$$cap_appname-mongodb:27017
ACKEE_MONGODB: mongodb://srv-captain--$$cap_appname-mongodb/ackee
ACKEE_USERNAME: $$cap_ackee_username
ACKEE_PASSWORD: $$cap_ackee_passwd
ACKEE_ALLOW_ORIGIN: $$cap_ackee_access_origin
caproverExtra:
containerHttpPort: '3000'
# MongoDB
$$cap_appname-mongodb:
image: mongo:$$cap_mongo_version
volumes:
- $$cap_appname-db-data:/data/db
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_ackee_version
label: Ackee Version
defaultValue: '3.4.1'
description: Check out their docker page for the valid tags https://hub.docker.com/r/electerious/ackee/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_ackee_username
label: Ackee Admin User
defaultValue: ''
description: 'Username for Ackee'
- id: $$cap_ackee_passwd
label: Ackee Admin Password
defaultValue: ''
description: 'Your super secret Password for Ackee'
validRegex: /^([^\s^\/])+$/
- id: $$cap_ackee_access_origin
label: CORS headers
defaultValue: 'https://example.com,https://example2.com'
description: 'Ackee requires correct CORS headers. Please read https://docs.ackee.electerious.com/#/docs/CORS%20headers#heroku-or-platforms-as-a-service-configuration'
- id: $$cap_mongo_version
label: MongoDB Version
defaultValue: '4.0.20'
description: Check out their docker page for the valid tags https://hub.docker.com/r/library/mongo/tags/
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
Ackee is a self-hosted analytics tool that cares about privacy. We believe that you don't need to track every aspect of your visitors. Ackee keeps tracked data anonymized to avoid that users are identifiable, while still providing helpful insights. It's the right tool for everyone who doesn't need a full-featured marketing analytics platform like Google Analytics or Matomo.
end: >-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
displayName: 'Ackee'
isOfficial: true
description: Self-hosted, Node.js based analytics tool for those who care about privacy.
documentation: Taken from https://hub.docker.com/r/electerious/ackee

View File

@ -1,28 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: index.docker.io/activepieces/activepieces:$$cap_activepieces_version
environment:
AP_QUEUE_MODE: MEMORY
AP_DB_TYPE: SQLITE3
AP_FRONTEND_URL: http://$$cap_appname.$$cap_root_domain
volumes:
- $$cap_appname-data:/root/.activepieces
restart: always
caproverExtra:
containerHttpPort: '80'
caproverOneClickApp:
variables:
- id: $$cap_activepieces_version
label: Activepieces Version
defaultValue: '0.12.2'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/activepieces/activepieces/tags
instructions:
start: >-
This is a simple setup. For more advanced setup please check their repository and adjust app accordingly
end: >-
Please wait for 2 minutes. Activepieces is deployed and available as $$cap_appname, please change AP_FRONTEND_URL when you force https
displayName: Activepieces
isOfficial: true
description: Your friendliest open source all-in-one automation tool, designed to be extensible through a type-safe pieces framework written in Typescript.
documentation: Taken from https://github.com/activepieces/activepieces

View File

@ -1,24 +0,0 @@
captainVersion: 4
services:
'$$cap_appname':
image: actualbudget/actual-server:$$cap_version
volumes:
- '$$cap_appname-data:/data'
caproverExtra:
containerHttpPort: '5006'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: Actual Version
defaultValue: '23.8.1-alpine'
description: Paste version from release notes https://actualbudget.org/blog/tags/release or check out their Docker page for the list of all valid tags https://hub.docker.com/r/actualbudget/actual-server/tags
validRegex: "/^([^\\s^\\/])+$/"
instructions:
start: |-
Actual Budget is a super fast and privacy-focused app for managing your finances. At its heart is the well proven and much loved Envelope Budgeting methodology.
More details: https://actualbudget.org/
end: Actual has been successfully deployed! Make sure to enable HTTPS or Actual won't work
displayName: Actual
isOfficial: false
description: Actual Budget is a super fast and privacy-focused app for managing your finances. At its heart is the well proven and much loved Envelope Budgeting methodology.
documentation: See https://actualbudget.org/docs/

View File

@ -1,40 +0,0 @@
captainVersion: 4
services:
# AdGuard
$$cap_appname:
image: adguard/adguardhome:$$cap_adguard_version
restart: always
ports:
- 53:53
- 67:67
- 68:68
- 853:853
volumes:
- $$cap_appname-work:/opt/adguardhome/work
- $$cap_appname-conf:/opt/adguardhome/conf
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_adguard_version
label: AdGuard Home Version
defaultValue: 'v0.107.29'
description: Check out their docker page for the valid tags https://hub.docker.com/r/adguard/adguardhome/tags
instructions:
start: >-
AdGuard Home is a fast and easy way to block ads on any device and protect kids online!
end: >-
Aaaand you're done! 😄
Now enable https and force https from HTTP Settings tabs
After that visit https://$$cap_appname.$$cap_root_domain
And follow the installation steps
Make sure to change port 80 to 3000 in the installation steps
After you are done you will be redirected to $$cap_appname.$$cap_root_domain:3000
Just remove 3000 from the url and visit $$cap_appname.$$cap_root_domain
You will be redirected to https://$$cap_appname.$$cap_root_domain/login.html
displayName: 'AdGuard Home'
isOfficial: true
description: AdGuard Home is a fast and easy way to block ads on any device and protect kids online!
documentation: Taken from https://hub.docker.com/r/adguard/adguardhome

View File

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

View File

@ -1,216 +0,0 @@
captainVersion: 4
caproverOneClickApp:
instructions:
start: |-
Apache Airflow is a tool to express and execute workflows as directed acyclic graphs (DAGs).
It includes utilities to schedule tasks, monitor task progress and handle task dependencies.
This instance uses the Bitnami images
end: >
Airflow is deployed is deployed, it might take few moments before it's fully started.
Initial user is: $$cap_airflow_user with password $$cap_airflow_password.
Login on $$cap_appname.$$cap_root_domain after $$cap_appname has finished starting.
displayName: Airflow
isOfficial: false
description: A tool to express and execute workflows as directed acyclic graphs (DAGs).
documentation: |-
Based on https://github.com/bitnami/bitnami-docker-airflow#readme
variables:
# Postgress
- id: $$cap_postgresql_version
label: Bitnami's Posgresql Version
defaultValue: '12.12.0'
description: Check the tag version on https://hub.docker.com/r/bitnami/postgresql
- id: $$cap_postgresql_name
label: Postresql database name
defaultValue: airflow_db
description: Name of the postgresql db
- id: $$cap_postgresql_user
label: Postresql database user
defaultValue: airflow_db_user
description: Password to the postgresql db
- id: $$cap_postgresql_password
label: Postresql password
defaultValue: $$cap_gen_random_hex(16)
description: Password to the postgresql db
# Redis
- id: $$cap_redis_version
label: Bitnami's redis Version
defaultValue: '7.0.4'
description: Check the tag version on https://hub.docker.com/r/bitnami/redis
- id: $$cap_redis_password
label: Redis password
defaultValue: $$cap_gen_random_hex(16)
description: Password to redis db
# Airflow
- id: $$cap_airflow_version
label: Bitnami's airflow Version
defaultValue: '2.3.3'
description: Check the tag version on https://hub.docker.com/r/bitnami/airflow
- id: $$cap_airflow_worker_version
label: Bitnami's airflow worker Version
defaultValue: '2.3.3'
description: Check the tag version on https://hub.docker.com/r/bitnami/airflow-worker
- id: $$cap_airflow_scheduler_version
label: Bitnami's airflow scheduler Version
defaultValue: '2.3.3'
description: Check the tag version on https://hub.docker.com/r/bitnami/airflow-scheduler
- id: $$cap_airflow_user
label: Airflow user
defaultValue: 'airflow_user'
description: Airflow's Admin user name
- id: $$cap_airflow_password
label: Airflow password
defaultValue: $$cap_gen_random_hex(16)
description: Airflow Admin's password
- id: $$cap_airflow_email
label: Airflow email
description: Email address that will receive notifications from airflow (need SMPT details)
- id: $$cap_airflow_examples
label: Load Airflow DAG Examples?
defaultValue: 'no'
description: Wheter to load or not load sample DAGs (yes/no)
- id: $$cap_airflow_secret_key
label: Airflow Secret Key
defaultValue: $$cap_gen_random_hex(16)
description: Secret key used to run your flask app. It should be as random as possible.
- id: $$cap_airflow_dag_path
label: DAGs Volume
defaultValue: airflow-dags
description: Name of the DAG volume or Path to the custom DAGs folder, make sure the folder is accesible
- id: $$cap_airflow_py_requirements
label: Path or volume to a requirements.txt file
defaultValue: airflow-requstxt
description: Installation of additional python modules at start-up time, make sure the file is accesible
# SMTP datails
- id: $$cap_smtp_host
label: SMTP Host
description: Host for SMPT connection
- id: $$cap_smtp_port
label: SMTP Port
description: Port for SMPT connection
- id: $$cap_smtp_starttls
label: Use startTLS?
defaultValue: 'no'
description: Do you want to use startTLS? (yes/no)
- id: $$cap_smtp_ssl
label: Use SSL?
defaultValue: 'no'
description: Check the tag version on https://hub.docker.com/r/bitnami/airflow-scheduler
- id: $$cap_smtp_user
label: SMTP User
description: Check the tag version on https://hub.docker.com/r/bitnami/airflow-scheduler
- id: $$cap_smtp_password
label: SMTP Password
description: Check the tag version on https://hub.docker.com/r/bitnami/airflow-scheduler
- id: $$cap_smtp_mail_from
label: Mail from address
description: Specofy who the email is from
services:
$$cap_appname-db:
restart: always
image: 'bitnami/postgresql:$$cap_postgresql_version'
user:
environment:
POSTGRESQL_DATABASE: $$cap_postgresql_name
POSTGRESQL_USERNAME: $$cap_postgresql_user
POSTGRESQL_PASSWORD: $$cap_postgresql_password
volumes:
- $$cap_appname-postgresql-persistance:/bitnami
caproverExtra:
notExposeAsWebApp: true
$$cap_appname-redis:
restart: always
image: 'bitnami/redis:$$cap_redis_version'
user:
environment:
REDIS_PASSWORD: $$cap_redis_password
volumes:
- $$cap_appname-redis-persistance:/bitnami
caproverExtra:
notExposeAsWebApp: true
$$cap_appname:
restart: always
depends_on:
- $$cap_appname-db
- $$cap_appname-redis
image: 'bitnami/airflow:$$cap_airflow_version'
user:
environment:
AIRFLOW_EXECUTOR: CeleryExecutor
AIRFLOW_DATABASE_HOST: srv-captain--$$cap_appname-db
AIRFLOW_DATABASE_NAME: $$cap_postgresql_name
AIRFLOW_DATABASE_USERNAME: $$cap_postgresql_user
AIRFLOW_DATABASE_PASSWORD: $$cap_postgresql_password
REDIS_HOST: srv-captain--$$cap_appname-redis
REDIS_PASSWORD: $$cap_redis_password
AIRFLOW_WEBSERVER_HOST: srv-captain--$$cap_appname
AIRFLOW_BASE_URL: https://$$cap_appname.$$cap_root_domain/
AIRFLOW_SECRET_KEY: $$cap_airflow_secret_key
AIRFLOW_LOAD_EXAMPLES: $$cap_airflow_examples
AIRFLOW_USERNAME: $$cap_airflow_user
AIRFLOW_PASSWORD: $$cap_airflow_password
AIRFLOW_EMAIL: $$cap_airflow_email
AIRFLOW__SMTP__SMTP_HOST: $$cap_smtp_host
AIRFLOW__SMTP__SMTP_PORT: $$cap_smtp_port
AIRFLOW__SMTP__SMTP_STARTTLS: $$cap_smtp_starttls
AIRFLOW__SMTP__SMTP_SSL: $$cap_smtp_ssl
AIRFLOW__SMTP__SMTP_USER: $$cap_smtp_user
AIRFLOW__SMTP__SMTP_PASSWORD: $$cap_smtp_password
AIRFLOW__SMTP__SMTP_MAIL_FROM: $$cap_smtp_mail_from
volumes:
- $$cap_airflow_dag_path:/opt/bitnami/airflow/dags
- $$cap_airflow_py_requirements:/bitnami/python/requirements.txt
caproverExtra:
containerHttpPort: '8080'
$$cap_appname-worker:
image: bitnami/airflow-worker:$$cap_airflow_worker_version
depends_on:
- $$cap_appname
environment:
AIRFLOW_EXECUTOR: CeleryExecutor
AIRFLOW_DATABASE_HOST: srv-captain--$$cap_appname-db
AIRFLOW_DATABASE_NAME: $$cap_postgresql_name
AIRFLOW_DATABASE_USERNAME: $$cap_postgresql_user
AIRFLOW_DATABASE_PASSWORD: $$cap_postgresql_password
REDIS_HOST: srv-captain--$$cap_appname-redis
REDIS_PASSWORD: $$cap_redis_password
AIRFLOW_WEBSERVER_HOST: srv-captain--$$cap_appname
AIRFLOW_BASE_URL: https://$$cap_appname.$$cap_root_domain/
AIRFLOW_SECRET_KEY: $$cap_airflow_secret_key
AIRFLOW_LOAD_EXAMPLES: $$cap_airflow_examples
volumes:
- $$cap_appname-data:/opt/bitnami/airflow/data
- $$cap_airflow_dag_path:/opt/bitnami/airflow/dags
- $$cap_airflow_py_requirements:/bitnami/python/requirements.txt
caproverExtra:
notExposeAsWebApp: true
$$cap_appname-scheduler:
restart: always
depends_on:
- $$cap_appname
image: 'bitnami/airflow-scheduler:$$cap_airflow_scheduler_version'
user:
environment:
AIRFLOW_EXECUTOR: CeleryExecutor
AIRFLOW_DATABASE_HOST: srv-captain--$$cap_appname-db
AIRFLOW_DATABASE_NAME: $$cap_postgresql_name
AIRFLOW_DATABASE_USERNAME: $$cap_postgresql_user
AIRFLOW_DATABASE_PASSWORD: $$cap_postgresql_password
REDIS_HOST: srv-captain--$$cap_appname-redis
REDIS_PASSWORD: $$cap_redis_password
AIRFLOW_WEBSERVER_HOST: srv-captain--$$cap_appname
AIRFLOW_BASE_URL: https://$$cap_appname.$$cap_root_domain/
AIRFLOW_SECRET_KEY: $$cap_airflow_secret_key
AIRFLOW_LOAD_EXAMPLES: $$cap_airflow_examples
volumes:
- $$cap_airflow_dag_path:/opt/bitnami/airflow/dags
- $$cap_airflow_py_requirements:/bitnami/python/requirements.txt
caproverExtra:
notExposeAsWebApp: true

View File

@ -1,81 +0,0 @@
captainVersion: 4
services:
# Akaunting
$$cap_appname:
depends_on:
- $$cap_appname-db
image: akaunting/akaunting:$$cap_app_version
restart: always
environment:
APP_URL: http://$$cap_appname.$$cap_root_domain
LOCALE: en-US
AKAUNTING_SETUP: true
DB_HOST: srv-captain--$$cap_appname-db
DB_PORT: 3306
DB_USERNAME: akaunting
DB_DATABASE: akaunting
DB_PASSWORD: $$cap_db_pass
DB_PREFIX: $$cap_db_prefix
COMPANY_NAME: $$cap_company_name
COMPANY_EMAIL: $$cap_company_email
ADMIN_EMAIL: $$cap_admin_email
ADMIN_PASSWORD: $$cap_admin_password
volumes:
- $$cap_appname-data:/akaunting-data
- $$cap_appname-modules:/akaunting-modules
# Database
$$cap_appname-db:
image: mariadb:10.5.9
volumes:
- $$cap_appname-db:/var/lib/mysql/data
restart: always
environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_USER: akaunting
MYSQL_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: akaunting
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_app_version
label: Akaunting Version
defaultValue: '2.1.8'
description: Check out their docker page for the valid tags https://hub.docker.com/r/akaunting/akaunting/tags
- id: $$cap_db_pass
label: Database Password
defaultValue: $$cap_gen_random_hex(16)
- id: $$cap_db_prefix
label: Database Prefix
defaultValue: 'aka_'
- id: $$cap_company_name
label: Company Name
description: OPTIONAL
- id: $$cap_company_email
label: Company Email
description: OPTIONAL
- id: $$cap_admin_email
label: Admin Email
defaultValue: 'admin@company.com'
description: This will be your default login username
- id: $$cap_admin_password
label: Admin Password
defaultValue: $$cap_gen_random_hex(16)
description: This will be your default login password
instructions:
start: >-
From invoicing to expense tracking to accounting, Akaunting has all the tools you need to manage your money online, for free.
end: >-
Done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
displayName: 'Akaunting'
isOfficial: true
description: From invoicing to expense tracking to accounting, Akaunting has all the tools you need to manage your money online, for free.
documentation: https://akaunting.com/docs

View File

@ -1,29 +0,0 @@
captainVersion: 4
services:
# Apprise
$$cap_appname:
image: caronc/apprise:$$cap_apprise_version
restart: always
volume:
- $$cap_appname-data:/config
caproverExtra:
containerHttpPort: '8000'
caproverOneClickApp:
variables:
- id: $$cap_apprise_version
label: Apprise Version
defaultValue: 'v0.7.0'
description: Check out their docker page for the valid tags https://hub.docker.com/r/caronc/apprise/tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
Apprise allows you to send a notification to almost all of the most popular notification services available to us today such as: Telegram, Discord, Slack, Amazon SNS, Gotify, etc.
end: >-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
displayName: 'Apprise'
isOfficial: true
description: Apprise API was designed to easily fit into existing (and new) eco-systems that are looking for a simple notification solution.
documentation: Taken from https://github.com/caronc/apprise-api and https://hub.docker.com/r/caronc/apprise/

View File

@ -1,28 +0,0 @@
captainVersion: 4
services:
$$cap_appname-appsmith:
image: index.docker.io/appsmith/appsmith-ce:$$cap_appsmith_version
volumes:
- $$cap_appname-stacks-data:/appsmith-stacks
restart: always
environment:
APPSMITH_MAIL_ENABLED: false
APPSMITH_DISABLE_TELEMETRY: true
APPSMITH_DISABLE_INTERCOM: true
caproverOneClickApp:
variables:
- id: $$cap_appsmith_version
label: Appsmith Version
defaultValue: v1.6.5
description: Check out their Docker page for the valid tags https://hub.docker.com/r/appsmith/appsmith-ce/tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
Appsmith is the fastest way to build internal apps over any database or API.
end: >-
Please wait for 2 minutes. Appsmith is deployed and available as $$cap_appname-appsmith.
To further enhance the installation, see the complete environment variables here https://github.com/appsmithorg/appsmith/blob/release/deploy/template/docker.env.sh
displayName: Appsmith
isOfficial: true
description: Appsmith is the fastest way to build internal apps over any database or API.
documentation: Taken from https://docs.appsmith.com/setup/docker

View File

@ -1,948 +0,0 @@
captainVersion: 4
services:
$$cap_appname-redis:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM redis:7.0.4-alpine
- CMD ["--maxmemory", "512mb", "--maxmemory-policy", "allkeys-lru", "--maxmemory-samples", "5"]
volumes:
- $$cap_appname-redis:/data
$$cap_appname-mariadb:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM mariadb:10.7
- CMD ["--innodb-flush-method", "fsync"]
environment:
MARIADB_ROOT_PASSWORD: $$cap_APP_DB_ROOT_PASS
MARIADB_DATABASE: $$cap_APP_DB_SCHEMA
MARIADB_USER: $$cap_APP_DB_USER
MARIADB_PASSWORD: $$cap_APP_DB_PASS
volumes:
- $$cap_appname-mariadb:/var/lib/mysql
$$cap_appname-influxdb:
caproverExtra:
notExposeAsWebApp: 'true'
image: appwrite/influxdb:1.5.0
volumes:
- $$cap_appname-influxdb:/var/lib/influxdb
$$cap_appname-telegraf:
caproverExtra:
notExposeAsWebApp: 'true'
image: appwrite/telegraf:1.4.0
environment:
_APP_INFLUXDB_HOST: srv-captain--$$cap_appname-influxdb
_APP_INFLUXDB_PORT: $$cap_APP_INFLUXDB_PORT
volumes:
- $$cap_appname-influxdb:/var/lib/influxdb
$$cap_appname:
image: appwrite/appwrite:$$cap_APP_VERSION
volumes:
- $$cap_appname-uploads:/storage/uploads
- $$cap_appname-cache:/storage/cache
- $$cap_appname-config:/storage/config
- $$cap_appname-certificates:/storage/certificates
- $$cap_appname-functions:/storage/functions
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
- $$cap_appname-influxdb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_WORKER_PER_CORE: $$cap_APP_WORKER_PER_CORE
_APP_LOCALE: $$cap_APP_LOCALE
_APP_CONSOLE_WHITELIST_ROOT: $$cap_APP_CONSOLE_WHITELIST_ROOT
_APP_CONSOLE_WHITELIST_EMAILS: $$cap_APP_CONSOLE_WHITELIST_EMAILS
_APP_CONSOLE_WHITELIST_IPS: $$cap_APP_CONSOLE_WHITELIST_IPS
_APP_SYSTEM_EMAIL_NAME: $$cap_APP_SYSTEM_EMAIL_NAME
_APP_SYSTEM_EMAIL_ADDRESS: $$cap_APP_SYSTEM_EMAIL_ADDRESS
_APP_SYSTEM_SECURITY_EMAIL_ADDRESS: $$cap_APP_SYSTEM_SECURITY_EMAIL_ADDRESS
_APP_SYSTEM_RESPONSE_FORMAT: $$cap_APP_SYSTEM_RESPONSE_FORMAT
_APP_OPTIONS_ABUSE: $$cap_APP_OPTIONS_ABUSE
_APP_OPTIONS_FORCE_HTTPS: $$cap_APP_OPTIONS_FORCE_HTTPS
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_DOMAIN: $$cap_APP_DOMAIN_NAME
_APP_DOMAIN_TARGET: $$cap_APP_DOMAIN_TARGET
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_SMTP_HOST: $$cap_APP_SMTP_HOST
_APP_SMTP_PORT: $$cap_APP_SMTP_PORT
_APP_SMTP_SECURE: $$cap_APP_SMTP_SECURE
_APP_SMTP_USERNAME: $$cap_APP_SMTP_USERNAME
_APP_SMTP_PASSWORD: $$cap_APP_SMTP_PASSWORD
_APP_USAGE_STATS: $$cap_APP_USAGE_STATS
_APP_INFLUXDB_HOST: srv-captain--$$cap_appname-influxdb
_APP_INFLUXDB_PORT: $$cap_APP_INFLUXDB_PORT
_APP_STORAGE_LIMIT: $$cap_APP_STORAGE_LIMIT
_APP_STORAGE_PREVIEW_LIMIT: $$cap_APP_STORAGE_PREVIEW_LIMIT
_APP_STORAGE_ANTIVIRUS: $$cap_APP_STORAGE_ANTIVIRUS_ENABLED
_APP_STORAGE_ANTIVIRUS_HOST: $$cap_APP_STORAGE_ANTIVIRUS_HOST
_APP_STORAGE_ANTIVIRUS_PORT: $$cap_APP_STORAGE_ANTIVIRUS_PORT
_APP_STORAGE_DEVICE: $$cap_APP_STORAGE_DEVICE
_APP_STORAGE_S3_ACCESS_KEY: $$cap_APP_STORAGE_S3_ACCESS_KEY
_APP_STORAGE_S3_SECRET: $$cap_APP_STORAGE_S3_SECRET
_APP_STORAGE_S3_REGION: $$cap_APP_STORAGE_S3_REGION
_APP_STORAGE_S3_BUCKET: $$cap_APP_STORAGE_S3_BUCKET
_APP_STORAGE_DO_SPACES_ACCESS_KEY: $$cap_APP_STORAGE_DO_SPACES_ACCESS_KEY
_APP_STORAGE_DO_SPACES_SECRET: $$cap_APP_STORAGE_DO_SPACES_SECRET
_APP_STORAGE_DO_SPACES_REGION: $$cap_APP_STORAGE_DO_SPACES_REGION
_APP_STORAGE_DO_SPACES_BUCKET: $$cap_APP_STORAGE_DO_SPACES_BUCKET
_APP_STORAGE_BACKBLAZE_ACCESS_KEY: $$cap_APP_STORAGE_BACKBLAZE_ACCESS_KEY
_APP_STORAGE_BACKBLAZE_SECRET: $$cap_APP_STORAGE_BACKBLAZE_SECRET
_APP_STORAGE_BACKBLAZE_REGION: $$cap_APP_STORAGE_BACKBLAZE_REGION
_APP_STORAGE_BACKBLAZE_BUCKET: $$cap_APP_STORAGE_BACKBLAZE_BUCKET
_APP_STORAGE_LINODE_ACCESS_KEY: $$cap_APP_STORAGE_LINODE_ACCESS_KEY
_APP_STORAGE_LINODE_SECRET: $$cap_APP_STORAGE_LINODE_SECRET
_APP_STORAGE_LINODE_REGION: $$cap_APP_STORAGE_LINODE_REGION
_APP_STORAGE_LINODE_BUCKET: $$cap_APP_STORAGE_LINODE_BUCKET
_APP_STORAGE_WASABI_ACCESS_KEY: $$cap_APP_STORAGE_WASABI_ACCESS_KEY
_APP_STORAGE_WASABI_SECRET: $$cap_APP_STORAGE_WASABI_SECRET
_APP_STORAGE_WASABI_REGION: $$cap_APP_STORAGE_WASABI_REGION
_APP_STORAGE_WASABI_BUCKET: $$cap_APP_STORAGE_WASABI_BUCKET
_APP_FUNCTIONS_SIZE_LIMIT: $$cap_APP_FUNCTIONS_SIZE_LIMIT
_APP_FUNCTIONS_TIMEOUT: $$cap_APP_FUNCTIONS_TIMEOUT
_APP_FUNCTIONS_BUILD_TIMEOUT: $$cap_APP_FUNCTIONS_BUILD_TIMEOUT
_APP_FUNCTIONS_CONTAINERS: $$cap_APP_FUNCTIONS_CONTAINERS
_APP_FUNCTIONS_CPUS: $$cap_APP_FUNCTIONS_CPUS
_APP_FUNCTIONS_MEMORY: $$cap_APP_FUNCTIONS_MEMORY_ALLOCATED
_APP_FUNCTIONS_MEMORY_SWAP: $$cap_APP_FUNCTIONS_MEMORY_SWAP
_APP_FUNCTIONS_RUNTIMES: $$cap_APP_FUNCTIONS_RUNTIMES
_APP_EXECUTOR_SECRET: $$cap_APP_EXECUTOR_SECRET
_APP_EXECUTOR_HOST: http://srv-captain--$$cap_appname-executor/v1
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
_APP_STATSD_HOST: srv-captain--$$cap_appname-telegraf
_APP_STATSD_PORT: $$cap_APP_STATSD_PORT
_APP_MAINTENANCE_INTERVAL: $$cap_APP_MAINTENANCE_INTERVAL
_APP_MAINTENANCE_RETENTION_EXECUTION: $$cap_APP_MAINTENANCE_RETENTION_EXECUTION
_APP_MAINTENANCE_RETENTION_CACHE: $$cap_APP_MAINTENANCE_RETENTION_CACHE
_APP_MAINTENANCE_RETENTION_ABUSE: $$cap_APP_MAINTENANCE_RETENTION_ABUSE
_APP_MAINTENANCE_RETENTION_AUDIT: $$cap_APP_MAINTENANCE_RETENTION_AUDIT
_APP_SMS_PROVIDER: $$cap_APP_SMS_PROVIDER
_APP_SMS_FROM: $$cap_APP_SMS_FROM
_APP_GRAPHQL_MAX_BATCH_SIZE: $$cap_APP_GRAPHQL_MAX_BATCH_SIZE
_APP_GRAPHQL_MAX_COMPLEXITY: $$cap_APP_GRAPHQL_MAX_COMPLEXITY
_APP_GRAPHQL_MAX_DEPTH: $$cap_APP_GRAPHQL_MAX_DEPTH
$$cap_appname-realtime:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["realtime"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_WORKER_PER_CORE: $$cap_APP_WORKER_PER_CORE
_APP_OPTIONS_ABUSE: $$cap_APP_OPTIONS_ABUSE
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_USAGE_STATS: $$cap_APP_USAGE_STATS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-executor:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["executor"]
depends_on:
- $$cap_appname
- $$cap_appname-redis
- $$cap_appname-mariadb
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- $$cap_appname-functions:/storage/functions
- $$cap_appname-builds:/storage/builds
- /tmp:/tmp
environment:
_APP_ENV: $$cap_APP_ENV
_APP_VERSION: $$cap_APP_VERSION
_APP_FUNCTIONS_TIMEOUT: $$cap_APP_FUNCTIONS_TIMEOUT
_APP_FUNCTIONS_BUILD_TIMEOUT: $$cap_APP_FUNCTIONS_BUILD_TIMEOUT
_APP_FUNCTIONS_CONTAINERS: $$cap_APP_FUNCTIONS_CONTAINERS
_APP_FUNCTIONS_RUNTIMES: $$cap_APP_FUNCTIONS_RUNTIMES
_APP_FUNCTIONS_CPUS: $$cap_APP_FUNCTIONS_CPUS
_APP_FUNCTIONS_MEMORY: $$cap_APP_FUNCTIONS_MEMORY_ALLOCATED
_APP_FUNCTIONS_MEMORY_SWAP: $$cap_APP_FUNCTIONS_MEMORY_SWAP
_APP_FUNCTIONS_INACTIVE_THRESHOLD: $$cap_APP_FUNCTIONS_INACTIVE_THRESHOLD
_APP_EXECUTOR_SECRET: $$cap_APP_EXECUTOR_SECRET
OPEN_RUNTIMES_NETWORK: captain-overlay-network
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
_APP_STORAGE_DEVICE: $$cap_APP_STORAGE_DEVICE
_APP_STORAGE_S3_ACCESS_KEY: $$cap_APP_STORAGE_S3_ACCESS_KEY
_APP_STORAGE_S3_SECRET: $$cap_APP_STORAGE_S3_SECRET
_APP_STORAGE_S3_REGION: $$cap_APP_STORAGE_S3_REGION
_APP_STORAGE_S3_BUCKET: $$cap_APP_STORAGE_S3_BUCKET
_APP_STORAGE_DO_SPACES_ACCESS_KEY: $$cap_APP_STORAGE_DO_SPACES_ACCESS_KEY
_APP_STORAGE_DO_SPACES_SECRET: $$cap_APP_STORAGE_DO_SPACES_SECRET
_APP_STORAGE_DO_SPACES_REGION: $$cap_APP_STORAGE_DO_SPACES_REGION
_APP_STORAGE_DO_SPACES_BUCKET: $$cap_APP_STORAGE_DO_SPACES_BUCKET
_APP_STORAGE_BACKBLAZE_ACCESS_KEY: $$cap_APP_STORAGE_BACKBLAZE_ACCESS_KEY
_APP_STORAGE_BACKBLAZE_SECRET: $$cap_APP_STORAGE_BACKBLAZE_SECRET
_APP_STORAGE_BACKBLAZE_REGION: $$cap_APP_STORAGE_BACKBLAZE_REGION
_APP_STORAGE_BACKBLAZE_BUCKET: $$cap_APP_STORAGE_BACKBLAZE_BUCKET
_APP_STORAGE_LINODE_ACCESS_KEY: $$cap_APP_STORAGE_LINODE_ACCESS_KEY
_APP_STORAGE_LINODE_SECRET: $$cap_APP_STORAGE_LINODE_SECRET
_APP_STORAGE_LINODE_REGION: $$cap_APP_STORAGE_LINODE_REGION
_APP_STORAGE_LINODE_BUCKET: $$cap_APP_STORAGE_LINODE_BUCKET
_APP_STORAGE_WASABI_ACCESS_KEY: $$cap_APP_STORAGE_WASABI_ACCESS_KEY
_APP_STORAGE_WASABI_SECRET: $$cap_APP_STORAGE_WASABI_SECRET
_APP_STORAGE_WASABI_REGION: $$cap_APP_STORAGE_WASABI_REGION
_APP_STORAGE_WASABI_BUCKET: $$cap_APP_STORAGE_WASABI_BUCKET
DOCKERHUB_PULL_USERNAME: $$cap_DOCKERHUB_PULL_USERNAME
DOCKERHUB_PULL_PASSWORD: $$cap_DOCKERHUB_PULL_PASSWORD
$$cap_appname-worker-databases:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-databases"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-worker-builds:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-builds"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_EXECUTOR_SECRET: $$cap_APP_EXECUTOR_SECRET
_APP_EXECUTOR_HOST: http://srv-captain--$$cap_appname-executor/v1
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-worker-audits:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-audits"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-worker-webhooks:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-webhooks"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_SYSTEM_SECURITY_EMAIL_ADDRESS: $$cap_APP_SYSTEM_SECURITY_EMAIL_ADDRESS
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-worker-deletes:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-deletes"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
volumes:
- $$cap_appname-uploads:/storage/uploads
- $$cap_appname-cache:/storage/cache
- $$cap_appname-functions:/storage/functions
- $$cap_appname-builds:/storage/builds
- $$cap_appname-certificates:/storage/certificates
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_STORAGE_DEVICE: $$cap_APP_STORAGE_DEVICE
_APP_STORAGE_S3_ACCESS_KEY: $$cap_APP_STORAGE_S3_ACCESS_KEY
_APP_STORAGE_S3_SECRET: $$cap_APP_STORAGE_S3_SECRET
_APP_STORAGE_S3_REGION: $$cap_APP_STORAGE_S3_REGION
_APP_STORAGE_S3_BUCKET: $$cap_APP_STORAGE_S3_BUCKET
_APP_STORAGE_DO_SPACES_ACCESS_KEY: $$cap_APP_STORAGE_DO_SPACES_ACCESS_KEY
_APP_STORAGE_DO_SPACES_SECRET: $$cap_APP_STORAGE_DO_SPACES_SECRET
_APP_STORAGE_DO_SPACES_REGION: $$cap_APP_STORAGE_DO_SPACES_REGION
_APP_STORAGE_DO_SPACES_BUCKET: $$cap_APP_STORAGE_DO_SPACES_BUCKET
_APP_STORAGE_BACKBLAZE_ACCESS_KEY: $$cap_APP_STORAGE_BACKBLAZE_ACCESS_KEY
_APP_STORAGE_BACKBLAZE_SECRET: $$cap_APP_STORAGE_BACKBLAZE_SECRET
_APP_STORAGE_BACKBLAZE_REGION: $$cap_APP_STORAGE_BACKBLAZE_REGION
_APP_STORAGE_BACKBLAZE_BUCKET: $$cap_APP_STORAGE_BACKBLAZE_BUCKET
_APP_STORAGE_LINODE_ACCESS_KEY: $$cap_APP_STORAGE_LINODE_ACCESS_KEY
_APP_STORAGE_LINODE_SECRET: $$cap_APP_STORAGE_LINODE_SECRET
_APP_STORAGE_LINODE_REGION: $$cap_APP_STORAGE_LINODE_REGION
_APP_STORAGE_LINODE_BUCKET: $$cap_APP_STORAGE_LINODE_BUCKET
_APP_STORAGE_WASABI_ACCESS_KEY: $$cap_APP_STORAGE_WASABI_ACCESS_KEY
_APP_STORAGE_WASABI_SECRET: $$cap_APP_STORAGE_WASABI_SECRET
_APP_STORAGE_WASABI_REGION: $$cap_APP_STORAGE_WASABI_REGION
_APP_STORAGE_WASABI_BUCKET: $$cap_APP_STORAGE_WASABI_BUCKET
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
_APP_EXECUTOR_SECRET: $$cap_APP_EXECUTOR_SECRET
_APP_EXECUTOR_HOST: http://srv-captain--$$cap_appname-executor/v1
$$cap_appname-worker-functions:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-functions"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
- $$cap_appname-executor
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_FUNCTIONS_TIMEOUT: $$cap_APP_FUNCTIONS_TIMEOUT
_APP_EXECUTOR_SECRET: $$cap_APP_EXECUTOR_SECRET
_APP_EXECUTOR_HOST: http://srv-captain--$$cap_appname-executor/v1
_APP_USAGE_STATS: $$cap_APP_USAGE_STATS
DOCKERHUB_PULL_USERNAME: $$cap_DOCKERHUB_PULL_USERNAME
DOCKERHUB_PULL_PASSWORD: $$cap_DOCKERHUB_PULL_PASSWORD
$$cap_appname-worker-mails:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-mails"]
depends_on:
- $$cap_appname-redis
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_SYSTEM_EMAIL_NAME: $$cap_APP_SYSTEM_EMAIL_NAME
_APP_SYSTEM_EMAIL_ADDRESS: $$cap_APP_SYSTEM_EMAIL_ADDRESS
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_SMTP_HOST: $$cap_APP_SMTP_HOST
_APP_SMTP_PORT: $$cap_APP_SMTP_PORT
_APP_SMTP_SECURE: $$cap_APP_SMTP_SECURE
_APP_SMTP_USERNAME: $$cap_APP_SMTP_USERNAME
_APP_SMTP_PASSWORD: $$cap_APP_SMTP_PASSWORD
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-worker-messaging:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-messaging"]
depends_on:
- $$cap_appname-redis
environment:
_APP_ENV: $$cap_APP_ENV
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_SMS_PROVIDER: $$cap_APP_SMS_PROVIDER
_APP_SMS_FROM: $$cap_APP_SMS_FROM
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-worker-certificates:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["worker-certificates"]
depends_on:
- $$cap_appname-redis
- $$cap_appname-mariadb
volumes:
- $$cap_appname-config:/storage/config
- $$cap_appname-certificates:/storage/certificates
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_DOMAIN: $$cap_APP_DOMAIN_NAME
_APP_DOMAIN_TARGET: $$cap_APP_DOMAIN_TARGET
_APP_SYSTEM_SECURITY_EMAIL_ADDRESS: $$cap_APP_SYSTEM_SECURITY_EMAIL_ADDRESS
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-maintenance:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["maintenance"]
depends_on:
- $$cap_appname-redis
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_DOMAIN: $$cap_APP_DOMAIN_NAME
_APP_DOMAIN_TARGET: $$cap_APP_DOMAIN_TARGET
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_MAINTENANCE_INTERVAL: $$cap_APP_MAINTENANCE_INTERVAL
_APP_MAINTENANCE_RETENTION_EXECUTION: $$cap_APP_MAINTENANCE_RETENTION_EXECUTION
_APP_MAINTENANCE_RETENTION_CACHE: $$cap_APP_MAINTENANCE_RETENTION_CACHE
_APP_MAINTENANCE_RETENTION_ABUSE: $$cap_APP_MAINTENANCE_RETENTION_ABUSE
_APP_MAINTENANCE_RETENTION_AUDIT: $$cap_APP_MAINTENANCE_RETENTION_AUDIT
$$cap_appname-usage-timeseries:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["usage", "--type", "timeseries"]
depends_on:
- $$cap_appname-influxdb
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_INFLUXDB_HOST: srv-captain--$$cap_appname-influxdb
_APP_INFLUXDB_PORT: $$cap_APP_INFLUXDB_PORT
_APP_USAGE_TIMESERIES_INTERVAL: $$cap_APP_USAGE_TIMESERIES_INTERVAL
_APP_USAGE_DATABASE_INTERVAL: $$cap_APP_USAGE_DATABASE_INTERVAL
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-usage-database:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["usage", "--type", "database"]
depends_on:
- $$cap_appname-influxdb
- $$cap_appname-mariadb
environment:
_APP_ENV: $$cap_APP_ENV
_APP_OPENSSL_KEY_V1: $$cap_APP_OPENSSL_KEY_V1
_APP_DB_HOST: srv-captain--$$cap_appname-mariadb
_APP_DB_PORT: $$cap_APP_DB_PORT
_APP_DB_SCHEMA: $$cap_APP_DB_SCHEMA
_APP_DB_USER: $$cap_APP_DB_USER
_APP_DB_PASS: $$cap_APP_DB_PASS
_APP_INFLUXDB_HOST: srv-captain--$$cap_appname-influxdb
_APP_INFLUXDB_PORT: $$cap_APP_INFLUXDB_PORT
_APP_USAGE_TIMESERIES_INTERVAL: $$cap_APP_USAGE_TIMESERIES_INTERVAL
_APP_USAGE_DATABASE_INTERVAL: $$cap_APP_USAGE_DATABASE_INTERVAL
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
_APP_LOGGING_PROVIDER: $$cap_APP_LOGGING_PROVIDER
_APP_LOGGING_CONFIG: $$cap_APP_LOGGING_CONFIG
$$cap_appname-schedule:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM appwrite/appwrite:$$cap_APP_VERSION
- ENTRYPOINT ["schedule"]
depends_on:
- $$cap_appname-redis
environment:
_APP_ENV: $$cap_APP_ENV
_APP_REDIS_HOST: srv-captain--$$cap_appname-redis
_APP_REDIS_PORT: $$cap_APP_REDIS_PORT
_APP_REDIS_USER: $$cap_APP_REDIS_USER
_APP_REDIS_PASS: $$cap_APP_REDIS_PASS
caproverOneClickApp:
displayName: Appwrite
description: Secure Backend Server for Web, Mobile & Flutter Developers.
isOfficial: true
documentation: https://appwrite.io/docs
instructions:
start: |-
Appwrite is a self-hosted solution that provides developers with a set of easy-to-use and integrate REST APIs to manage their core backend needs.
Description of all available environment variables: https://appwrite.io/docs/environment-variables
end: |-
Appwrite has been successfully deployed!
Please change the following settings before using the service:
1. Go to the settings for $$cap_appname
2. Enable "Websocket Support"
3. Click on "Edit Default Nginx Configurations" and paste the following content before the last closing bracket "}":
```
location /v1/realtime {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_pass http://srv-captain--$$cap_appname-realtime;
proxy_http_version 1.1;
proxy_connect_timeout 7d;
proxy_send_timeout 7d;
proxy_read_timeout 7d;
}
```
Now you can access Appwrite at http://$$cap_appname.$$cap_root_domain
variables:
- label: Version Tag
id: $$cap_APP_VERSION
description: Check out their valid tags at https://hub.docker.com/r/appwrite/appwrite/tags
defaultValue: '1.2.0'
validRegex: "/^([^\\s^\\/])+$/"
- label: General | _APP_ENV
id: $$cap_APP_ENV
description: Set your server running environment.
defaultValue: production
validRegex: /^(production|development)$/
- label: General | _APP_LOCALE
id: $$cap_APP_LOCALE
description: Set your Appwrite's locale. By default, the locale is set to 'en'.
defaultValue: en
validRegex: /^([^\s^\/])+$/
- label: General | _APP_OPTIONS_ABUSE
id: $$cap_APP_OPTIONS_ABUSE
description: Allows you to disable abuse checks and API rate limiting. By default, set to 'enabled'. To cancel the abuse checking, set to 'disabled'. It is not recommended to disable this check-in a production environment.
defaultValue: 'enabled'
validRegex: /^(enabled|disabled)$/
- label: General | _APP_OPTIONS_FORCE_HTTPS
id: $$cap_APP_OPTIONS_FORCE_HTTPS
description: Allows you to force HTTPS connection to your API. This feature redirects any HTTP call to HTTPS and adds the 'Strict-Transport-Security' header to all HTTP responses.
defaultValue: 'disabled'
validRegex: /^(enabled|disabled)$/
- label: General | _APP_OPENSSL_KEY_V1
id: $$cap_APP_OPENSSL_KEY_V1
description: This is your server private secret key that is used to encrypt all sensitive data on your server. Appwrite server encrypts all secret data on your server like webhooks, HTTP passwords, user sessions, and storage files. Keep it a secret and have a backup for it.
defaultValue: $$cap_gen_random_hex(256)
validRegex: /^([^\s^\/])+$/
- label: General | _APP_DOMAIN
id: $$cap_APP_DOMAIN_NAME
description: Your Appwrite domain address. When setting a public suffix domain, Appwrite will attempt to issue a valid SSL certificate automatically. When used with a dev domain, Appwrite will assign a self-signed SSL certificate. The default value is 'localhost'.
defaultValue: localhost
validRegex: /^([^\s^\/])+$/
- label: General | _APP_DOMAIN_TARGET
id: $$cap_APP_DOMAIN_TARGET
description: A DNS A record hostname to serve as a CNAME target for your Appwrite custom domains. You can use the same value as used for the Appwrite '_APP_DOMAIN' variable. The default value is 'localhost'.
defaultValue: localhost
validRegex: /^([^\s^\/])+$/
- label: General | _APP_CONSOLE_WHITELIST_ROOT
id: $$cap_APP_CONSOLE_WHITELIST_ROOT
description: This option allows you to disable the creation of new users on the Appwrite console. When enabled only 1 user will be able to use the registration form. New users can be added by inviting them to your project. By default this option is enabled.
defaultValue: 'enabled'
validRegex: /^(enabled|disabled)$/
- label: General | _APP_CONSOLE_WHITELIST_EMAILS
id: $$cap_APP_CONSOLE_WHITELIST_EMAILS
description: This option allows you to limit creation of new users on the Appwrite console. This option is very useful for small teams or sole developers. To enable it, pass a list of allowed email addresses separated by a comma.
- label: General | _APP_CONSOLE_WHITELIST_IPS
id: $$cap_APP_CONSOLE_WHITELIST_IPS
description: This last option allows you to limit creation of users in Appwrite console for users sharing the same set of IP addresses. This option is very useful for team working with a VPN service or a company IP.\n\nTo enable/activate this option, pass a list of allowed IP addresses separated by a comma.
- label: General | _APP_SYSTEM_EMAIL_NAME
id: $$cap_APP_SYSTEM_EMAIL_NAME
description: |-
This is the sender name value that will appear on email messages sent to developers from the Appwrite console. You can use url encoded strings for spaces and special chars.
defaultValue: Appwrite
validRegex: /^([^\s^\/])+$/
- label: General | _APP_SYSTEM_EMAIL_ADDRESS
id: $$cap_APP_SYSTEM_EMAIL_ADDRESS
description: This is the sender email address that will appear on email messages sent to developers from the Appwrite console. You should choose an email address that is allowed to be used from your SMTP server to avoid the server email ending in the users' SPAM folders.
defaultValue: team@appwrite.io
validRegex: /^([^\s^\/])+$/
- label: General | _APP_SYSTEM_RESPONSE_FORMAT
id: $$cap_APP_SYSTEM_RESPONSE_FORMAT
description: Use this environment variable to set the default Appwrite HTTP response format to support an older version of Appwrite. This option is useful to overcome breaking changes between versions. You can also use the X-Appwrite-Response-Format HTTP request header to overwrite the response for a specific request. This variable accepts any valid Appwrite version. To use the current version format, leave the value of the variable empty.
- label: General | _APP_SYSTEM_SECURITY_EMAIL_ADDRESS
id: $$cap_APP_SYSTEM_SECURITY_EMAIL_ADDRESS
description: This is the email address used to issue SSL certificates for custom domains or the user agent in your webhooks payload.
defaultValue: certs@appwrite.io
validRegex: /^([^\s^\/])+$/
- label: General | _APP_USAGE_STATS
id: $$cap_APP_USAGE_STATS
description: This variable allows you to disable the collection and displaying of usage stats. This value is set to 'enabled' by default, to disable the usage stats set the value to 'disabled'. When disabled, it's recommended to turn off the Worker Usage, Influxdb and Telegraf containers for better resource usage.
defaultValue: 'enabled'
validRegex: /^(enabled|disabled)$/
- label: General | _APP_LOGGING_PROVIDER
id: $$cap_APP_LOGGING_PROVIDER
description: This variable allows you to enable logging errors to 3rd party providers. This value is empty by default, to enable the logger set the value to one of 'sentry', 'raygun', 'appsignal', 'logowl'
- label: General | _APP_LOGGING_CONFIG
description: This variable configures authentication to 3rd party error logging providers. If using Sentry, this should be 'SENTRY_API_KEY;SENTRY_APP_ID'. If using Raygun, this should be Raygun API key. If using AppSignal, this should be AppSignal API key. If using LogOwl, this should be LogOwl Service Ticket.
id: $$cap_APP_LOGGING_CONFIG
- label: General | _APP_USAGE_TIMESERIES_INTERVAL
id: $$cap_APP_USAGE_TIMESERIES_INTERVAL
description: Interval value containing the number of seconds that the Appwrite usage process should wait before aggregating stats and syncing it to mariadb from InfluxDB. The default value is 30 seconds.
defaultValue: 30
validRegex: /.{1,}/
- label: General | _APP_USAGE_DATABASE_INTERVAL
id: $$cap_APP_USAGE_DATABASE_INTERVAL
description: Interval value containing the number of seconds that the Appwrite usage process should wait before aggregating stats from data in Appwrite Database. The default value is 15 minutes.
defaultValue: 900
validRegex: /.{1,}/
- label: General | _APP_WORKER_PER_CORE
id: $$cap_APP_WORKER_PER_CORE
description: Internal Worker per core for the API, Realtime and Executor containers. Can be configured to optimize performance.
defaultValue: 6
validRegex: /.{1,}/
- label: Redis | _APP_REDIS_PORT
id: $$cap_APP_REDIS_PORT
description: Redis server TCP port.
defaultValue: 6379
validRegex: /.{1,}/
- label: Redis | _APP_REDIS_USER
id: $$cap_APP_REDIS_USER
description: Redis server user. This is an optional variable. Default value is an empty string.
- label: Redis | _APP_REDIS_PASS
id: $$cap_APP_REDIS_PASS
description: Redis server password. This is an optional variable. Default value is an empty string.
- label: MariaDB | _APP_DB_PORT
id: $$cap_APP_DB_PORT
description: MariaDB server TCP port.
defaultValue: 3306
validRegex: /.{1,}/
- label: MariaDB | _APP_DB_SCHEMA
id: $$cap_APP_DB_SCHEMA
description: MariaDB server database schema.
defaultValue: appwrite
validRegex: /^([^\s^\/])+$/
- label: MariaDB | _APP_DB_USER
id: $$cap_APP_DB_USER
description: MariaDB server user name.
defaultValue: user
validRegex: /^([^\s^\/])+$/
- label: MariaDB | _APP_DB_PASS
id: $$cap_APP_DB_PASS
description: MariaDB server user password.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /^([^\s^\/])+$/
- label: MariaDB | _APP_DB_ROOT_PASS
id: $$cap_APP_DB_ROOT_PASS
description: MariaDB server root password.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /^([^\s^\/])+$/
- label: InfluxDB | _APP_INFLUXDB_PORT
id: $$cap_APP_INFLUXDB_PORT
description: InfluxDB server TCP port.
defaultValue: 8086
validRegex: /.{1,}/
- label: StatsD | _APP_STATSD_PORT
id: $$cap_APP_STATSD_PORT
description: StatsD server TCP port.
defaultValue: 8125
validRegex: /.{1,}/
- label: SMTP | _APP_SMTP_HOST
id: $$cap_APP_SMTP_HOST
description: SMTP server host name address. Use an empty string to disable all mail sending from the server. The default value for this variable is an empty string.
- label: SMTP | _APP_SMTP_PORT
id: $$cap_APP_SMTP_PORT
description: SMTP server TCP port. Empty by default.
- label: SMTP | _APP_SMTP_SECURE
id: $$cap_APP_SMTP_SECURE
description: SMTP secure connection protocol. Empty by default, change to 'tls' if running on a secure connection.
- label: SMTP | _APP_SMTP_USERNAME
id: $$cap_APP_SMTP_USERNAME
description: SMTP server user name. Empty by default.
- label: SMTP | _APP_SMTP_PASSWORD
id: $$cap_APP_SMTP_PASSWORD
description: SMTP server user password. Empty by default.
- label: Phone | _APP_SMS_PROVIDER
id: $$cap_APP_SMS_PROVIDER
description: |-
Provider used for delivering SMS for Phone authentication. Use the following format: 'sms://[USER]:[SECRET]@[PROVIDER]'. Available providers are twilio, text-magic, telesign, msg91, and vonage.
- label: Phone | _APP_SMS_FROM
id: $$cap_APP_SMS_FROM
description: |-
Phone number used for sending out messages. Must start with a leading '+' and maximum of 15 digits without spaces (+123456789).
- label: Storage | _APP_STORAGE_LIMIT
id: $$cap_APP_STORAGE_LIMIT
description: Maximum file size allowed for file upload. The default value is 30MB. You should pass your size limit value in bytes.
defaultValue: 30000000
- label: Storage | _APP_STORAGE_PREVIEW_LIMIT
id: $$cap_APP_STORAGE_PREVIEW_LIMIT
description: Maximum file size allowed for file image preview. The default value is 20MB. You should pass your size limit value in bytes.
defaultValue: 20000000
- label: Storage | _APP_STORAGE_ANTIVIRUS
id: $$cap_APP_STORAGE_ANTIVIRUS_ENABLED
description: This variable allows you to disable the internal anti-virus scans. This value is set to 'disabled' by default, to enable the scans set the value to 'enabled'. Before enabling, you must add the ClamAV service and depend on it on main Appwrite service.
defaultValue: 'disabled'
- label: Storage | _APP_STORAGE_ANTIVIRUS_HOST
id: $$cap_APP_STORAGE_ANTIVIRUS_HOST
description: ClamAV server host name address.
defaultValue: clamav
- label: Storage | _APP_STORAGE_ANTIVIRUS_PORT
id: $$cap_APP_STORAGE_ANTIVIRUS_PORT
description: ClamAV server TCP port.
defaultValue: 3310
validRegex: /.{1,}/
- label: Storage | _APP_STORAGE_DEVICE
id: $$cap_APP_STORAGE_DEVICE
description: Select default storage device. The default value is 'Local'. List of supported adapters are 'Local', 'S3', 'DOSpaces', 'Backblaze', 'Linode' and 'Wasabi'.
defaultValue: Local
validRegex: /^([^\s^\/])+$/
- label: Storage | _APP_STORAGE_S3_ACCESS_KEY
id: $$cap_APP_STORAGE_S3_ACCESS_KEY
description: AWS S3 storage access key. Required when the storage adapter is set to S3. You can get your access key from your AWS console.
- label: Storage | _APP_STORAGE_S3_SECRET
id: $$cap_APP_STORAGE_S3_SECRET
description: AWS S3 storage secret key. Required when the storage adapter is set to S3. You can get your secret key from your AWS console.
- label: Storage | _APP_STORAGE_S3_REGION
id: $$cap_APP_STORAGE_S3_REGION
description: AWS S3 storage region. Required when storage adapter is set to S3. You can find your region info for your bucket from AWS console.
defaultValue: us-east-1
- label: Storage | _APP_STORAGE_S3_BUCKET
id: $$cap_APP_STORAGE_S3_BUCKET
description: AWS S3 storage bucket. Required when storage adapter is set to S3. You can create buckets in your AWS console.
- label: Storage | _APP_STORAGE_DO_SPACES_ACCESS_KEY
id: $$cap_APP_STORAGE_DO_SPACES_ACCESS_KEY
description: DigitalOcean spaces access key. Required when the storage adapter is set to DOSpaces. You can get your access key from your DigitalOcean console.
- label: Storage | _APP_STORAGE_DO_SPACES_SECRET
id: $$cap_APP_STORAGE_DO_SPACES_SECRET
description: DigitalOcean spaces secret key. Required when the storage adapter is set to DOSpaces. You can get your secret key from your DigitalOcean console.
- label: Storage | _APP_STORAGE_DO_SPACES_REGION
id: $$cap_APP_STORAGE_DO_SPACES_REGION
description: DigitalOcean spaces region. Required when storage adapter is set to DOSpaces. You can find your region info for your space from DigitalOcean console.
defaultValue: us-east-1
- label: Storage | _APP_STORAGE_DO_SPACES_BUCKET
id: $$cap_APP_STORAGE_DO_SPACES_BUCKET
description: DigitalOcean spaces bucket. Required when storage adapter is set to DOSpaces. You can create spaces in your DigitalOcean console.
- label: Storage | _APP_STORAGE_BACKBLAZE_ACCESS_KEY
id: $$cap_APP_STORAGE_BACKBLAZE_ACCESS_KEY
description: Backblaze access key. Required when the storage adapter is set to Backblaze. Your Backblaze keyID will be your access key. You can get your keyID from your Backblaze console.
- label: Storage | _APP_STORAGE_BACKBLAZE_SECRET
id: $$cap_APP_STORAGE_BACKBLAZE_SECRET
description: Backblaze secret key. Required when the storage adapter is set to Backblaze. Your Backblaze applicationKey will be your secret key. You can get your applicationKey from your Backblaze console.
- label: Storage | _APP_STORAGE_BACKBLAZE_REGION
id: $$cap_APP_STORAGE_BACKBLAZE_REGION
description: Backblaze region. Required when storage adapter is set to Backblaze. You can find your region info from your Backblaze console.
defaultValue: us-west-004
- label: Storage | _APP_STORAGE_BACKBLAZE_BUCKET
id: $$cap_APP_STORAGE_BACKBLAZE_BUCKET
description: Backblaze bucket. Required when storage adapter is set to Backblaze. You can create your bucket from your Backblaze console.
- label: Storage | _APP_STORAGE_LINODE_ACCESS_KEY
id: $$cap_APP_STORAGE_LINODE_ACCESS_KEY
description: Linode object storage access key. Required when the storage adapter is set to Linode. You can get your access key from your Linode console.
- label: Storage | _APP_STORAGE_LINODE_SECRET
id: $$cap_APP_STORAGE_LINODE_SECRET
description: Linode object storage secret key. Required when the storage adapter is set to Linode. You can get your secret key from your Linode console.
- label: Storage | _APP_STORAGE_LINODE_REGION
id: $$cap_APP_STORAGE_LINODE_REGION
description: Linode object storage region. Required when storage adapter is set to Linode. You can find your region info from your Linode console.
defaultValue: eu-central-1
- label: Storage | _APP_STORAGE_LINODE_BUCKET
id: $$cap_APP_STORAGE_LINODE_BUCKET
description: Linode object storage bucket. Required when storage adapter is set to Linode. You can create buckets in your Linode console.
- label: Storage | _APP_STORAGE_WASABI_ACCESS_KEY
id: $$cap_APP_STORAGE_WASABI_ACCESS_KEY
description: Wasabi access key. Required when the storage adapter is set to Wasabi. You can get your access key from your Wasabi console.
- label: Storage | _APP_STORAGE_WASABI_SECRET
id: $$cap_APP_STORAGE_WASABI_SECRET
description: Wasabi secret key. Required when the storage adapter is set to Wasabi. You can get your secret key from your Wasabi console.
- label: Storage | _APP_STORAGE_WASABI_REGION
id: $$cap_APP_STORAGE_WASABI_REGION
description: Wasabi region. Required when storage adapter is set to Wasabi. You can find your region info from your Wasabi console.
defaultValue: eu-central-1
- label: Storage | _APP_STORAGE_WASABI_BUCKET
id: $$cap_APP_STORAGE_WASABI_BUCKET
description: Wasabi bucket. Required when storage adapter is set to Wasabi. You can create buckets in your Wasabi console.
- label: Functions | _APP_FUNCTIONS_SIZE_LIMIT
id: $$cap_APP_FUNCTIONS_SIZE_LIMIT
description: The maximum size deployment in bytes. The default value is 30MB.
defaultValue: 30000000
validRegex: /.{1,}/
- label: Functions | _APP_FUNCTIONS_TIMEOUT
id: $$cap_APP_FUNCTIONS_TIMEOUT
description: The maximum number of seconds allowed as a timeout value when creating a new function. The default value is 900 seconds.
defaultValue: 900
validRegex: /.{1,}/
- label: Functions | _APP_FUNCTIONS_BUILD_TIMEOUT
id: $$cap_APP_FUNCTIONS_BUILD_TIMEOUT
description: The maximum number of seconds allowed as a timeout value when building a new function. The default value is 900 seconds.
defaultValue: 900
validRegex: /.{1,}/
- label: Functions | _APP_FUNCTIONS_CONTAINERS
id: $$cap_APP_FUNCTIONS_CONTAINERS
description: The maximum number of containers Appwrite is allowed to keep alive in the background for function environments. Running containers allow faster execution time as there is no need to recreate each container every time a function gets executed. The default value is 10.
defaultValue: 10
validRegex: /.{1,}/
- label: Functions | _APP_FUNCTIONS_CPUS
id: $$cap_APP_FUNCTIONS_CPUS
description: The maximum number of CPU core a single cloud function is allowed to use. Please note that setting a value higher than available cores will result in a function error, which might result in an error. The default value is empty. When it's empty, CPU limit will be disabled.
- label: Functions | _APP_FUNCTIONS_MEMORY
id: $$cap_APP_FUNCTIONS_MEMORY_ALLOCATED
description: The maximum amount of memory a single cloud function is allowed to use in megabytes. The default value is empty. When it's empty, memory limit will be disabled.
- label: Functions | _APP_FUNCTIONS_MEMORY_SWAP
id: $$cap_APP_FUNCTIONS_MEMORY_SWAP
description: The maximum amount of swap memory a single cloud function is allowed to use in megabytes. The default value is empty. When it's empty, swap memory limit will be disabled.
- label: Functions | _APP_FUNCTIONS_RUNTIMES
id: $$cap_APP_FUNCTIONS_RUNTIMES
description: |-
This option allows you to limit the available environments for cloud functions. This option is very useful for low-cost servers to safe disk space.
To enable/activate this option, pass a list of allowed environments separated by a comma.
Currently, supported environments are: node-14.5, node-16.0, node-18.0, php-8.0, php-8.1, ruby-3.0, ruby-3.1, python-3.8, python-3.9, python-3.10, deno-1.21, deno-1.24, dart-2.15, dart-2.16, dart-2.17, dotnet-3.1, dotnet-6.0, java-8.0, java-11.0, java-17.0, java-18.0, swift-5.5, kotlin-1.6, cpp-17.0
defaultValue: node-18.0
- label: Functions | _APP_EXECUTOR_SECRET
id: $$cap_APP_EXECUTOR_SECRET
description: The secret key used by Appwrite to communicate with the function executor.
defaultValue: $$cap_gen_random_hex(16)
- label: Functions | _APP_FUNCTIONS_INACTIVE_THRESHOLD
id: $$cap_APP_FUNCTIONS_INACTIVE_THRESHOLD
description: The minimum time a function can be inactive before it's container is shutdown and put to sleep. The default value is 60 seconds
defaultValue: 60
validRegex: /.{1,}/
- label: Functions | DOCKERHUB_PULL_USERNAME
id: $$cap_DOCKERHUB_PULL_USERNAME
description: The username for hub.docker.com. This variable is used to pull images from hub.docker.com.
- label: Functions | DOCKERHUB_PULL_PASSWORD
id: $$cap_DOCKERHUB_PULL_PASSWORD
description: The password for hub.docker.com. This variable is used to pull images from hub.docker.com.
- label: Functions | _APP_MAINTENANCE_INTERVAL
id: $$cap_APP_MAINTENANCE_INTERVAL
description: Interval value containing the number of seconds that the Appwrite maintenance process should wait before executing system cleanups and optimizations. The default value is 86400 seconds (1 day).
defaultValue: 86400
validRegex: /.{1,}/
- label: Functions | _APP_MAINTENANCE_RETENTION_CACHE
id: $$cap_APP_MAINTENANCE_RETENTION_CACHE
description: The maximum duration (in seconds) upto which to retain cached files. The default value is 2592000 seconds (30 days).
defaultValue: 2592000
validRegex: /.{1,}/
- label: Functions | _APP_MAINTENANCE_RETENTION_EXECUTION
id: $$cap_APP_MAINTENANCE_RETENTION_EXECUTION
description: The maximum duration (in seconds) upto which to retain execution logs. The default value is 1209600 seconds (14 days).
defaultValue: 1209600
validRegex: /.{1,}/
- label: Functions | _APP_MAINTENANCE_RETENTION_AUDIT
id: $$cap_APP_MAINTENANCE_RETENTION_AUDIT
description: The maximum duration (in seconds) upto which to retain audit logs. The default value is 1209600 seconds (14 days).
defaultValue: 1209600
validRegex: /.{1,}/
- label: Functions | _APP_MAINTENANCE_RETENTION_ABUSE
id: $$cap_APP_MAINTENANCE_RETENTION_ABUSE
description: The maximum duration (in seconds) upto which to retain abuse logs. The default value is 86400 seconds (1 day).
defaultValue: 86400
validRegex: /.{1,}/
- label: GraphQL | _APP_GRAPHQL_MAX_BATCH_SIZE
id: $$cap_APP_GRAPHQL_MAX_BATCH_SIZE
description: Maximum number of batched queries per request. The default value is 10.
defaultValue: 10
validRegex: /.{1,}/
- label: GraphQL | _APP_GRAPHQL_MAX_COMPLEXITY
id: $$cap_APP_GRAPHQL_MAX_COMPLEXITY
description: Maximum complexity of a GraphQL query. One field adds one to query complexity. Lists multiply the complexity by the number of items requested. The default value is 250.
defaultValue: 250
validRegex: /.{1,}/
- label: GraphQL | _APP_GRAPHQL_MAX_DEPTH
id: $$cap_APP_GRAPHQL_MAX_DEPTH
description: Maximum depth of a GraphQL query. One nested field level adds one to query depth. The default value is 3.
defaultValue: 3
validRegex: /.{1,}/

View File

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

View File

@ -1,40 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
documentation: Taken from https://docs.archivebox.io/en/latest/Docker.html and https://docs.archivebox.io/en/latest/Configuration.html?highlight=Configuration#configuration
volumes:
- $$cap_appname-data:/data
environment:
ALLOWED_HOSTS: '*'
MEDIA_MAX_SIZE: $$cap_max_size_in_mo
restart: always
caproverExtra:
dockerfileLines:
- FROM archivebox/archivebox:$$cap_archivebox_version
- CMD ["server", "--quick-init", "0.0.0.0:8000"]
containerHttpPort: '8000'
caproverOneClickApp:
variables:
- id: $$cap_archivebox_version
label: archivebox Version
defaultValue: sha-5940dd6
description: Check out their Docker page for the valid tags https://hub.docker.com/r/archivebox/archivebox/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_max_size_in_mo
label: Media max size
defaultValue: 750m
description: Max size of media in MO
validRegex: /^[0-9]+m$/
instructions:
start: >-
ArchiveBox is a powerful, self-hosted internet archiving solution to collect, save, and view sites you want to preserve offline.
please note ArchiveBox NEED you to run some command lines to create the account and does not allow to create a default account.
end: >-
ArchiveBox is deployed and available as $$cap_appname.
It may take a few minutes for ArchiveBox to initialize.
Before adding something you need to create an account by running the command `su - archivebox` then `archivebox manage createsuperuser" into the `data` folder
To go into your container please follow those instructions: https://caprover.com/docs/troubleshooting.html#how-to-run-shell-inside-my-application-inside-container
Once the super admin is setted you can add other via the web ui.
displayName: ArchiveBox
isOfficial: true
description: Open-source self-hosted web archiving.

View File

@ -1,48 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: ghcr.io/advplyr/audiobookshelf:$$cap_version
volumes:
- $$cap_appname-config:/config
- $$cap_path_to_audiobooks:/audiobooks
- $$cap_path_to_podcasts:/podcasts
- $$cap_path_to_metadata:/metadata
restart: always
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: Audiobookshelf Version
defaultValue: '2.2.14'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/advplyr/audiobookshelf/tags
validRegex: '/.{1,}/'
- id: $$cap_path_to_audiobooks
label: Location of audiobooks directory
defaultValue: 'audiobooks-volume-placeholder'
description: full path to the directory where the audiobooks are stored. Path on host MUST exist for the app to start!
validRegex: /\/[^\s-][a-zA-Z0-9_\/-]*[^\/][^\s-]/
- id: $$cap_path_to_podcasts
label: Location of podcasts directory
defaultValue: 'podcasts-volume-placeholder'
description: full path to the directory where the podcasts are stored. Path on host MUST exist for the app to start!
validRegex: /\/[^\s-][a-zA-Z0-9_\/-]*[^\/][^\s-]/
- id: $$cap_path_to_metadata
label: Location of metadata directory
defaultValue: 'metadata-volume-placeholder'
description: full path to the directory where the metadata is stored. Path on host MUST exist for the app to start!
validRegex: /\/[^\s-][a-zA-Z0-9_\/-]*[^\/][^\s-]/
instructions:
start: |-
Audiobookshelf is a self-hosted audiobook and podcast server. Official Docker image.
end: |-
Audiobookshelf has been succesfully deployed!
It is available at http://$$cap_appname.$$cap_root_domain
displayName: Audiobookshelf
isOfficial: true
description: Audiobookshelf is a self-hosted audiobook and podcast server.
documentation: See https://www.audiobookshelf.org/docs

View File

@ -1,213 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: '80'
websocketSupport: 'true'
image: ghcr.io/azuracast/azuracast:$$cap_AZURACAST_VERSION
hostname: $$cap_appname.$$cap_root_domain
restart: unless-stopped
ports:
- $$cap_AZURACAST_SFTP_PORT:$$cap_AZURACAST_SFTP_PORT
- '8000:8000'
- '8005:8005'
- '8006:8006'
- '8010:8010'
- '8015:8015'
- '8016:8016'
- '8020:8020'
- '8025:8025'
- '8026:8026'
- '8030:8030'
- '8035:8035'
- '8036:8036'
- '8040:8040'
- '8045:8045'
- '8046:8046'
- '8050:8050'
- '8055:8055'
- '8056:8056'
- '8060:8060'
- '8065:8065'
- '8066:8066'
- '8070:8070'
- '8075:8075'
- '8076:8076'
- '8090:8090'
- '8095:8095'
- '8096:8096'
- '8100:8100'
- '8105:8105'
- '8106:8106'
- '8110:8110'
- '8115:8115'
- '8116:8116'
- '8120:8120'
- '8125:8125'
- '8126:8126'
- '8130:8130'
- '8135:8135'
- '8136:8136'
- '8140:8140'
- '8145:8145'
- '8146:8146'
- '8150:8150'
- '8155:8155'
- '8156:8156'
- '8160:8160'
- '8165:8165'
- '8166:8166'
- '8170:8170'
- '8175:8175'
- '8176:8176'
- '8180:8180'
- '8185:8185'
- '8186:8186'
- '8190:8190'
- '8195:8195'
- '8196:8196'
- '8200:8200'
- '8205:8205'
- '8206:8206'
- '8210:8210'
- '8215:8215'
- '8216:8216'
- '8220:8220'
- '8225:8225'
- '8226:8226'
- '8230:8230'
- '8235:8235'
- '8236:8236'
- '8240:8240'
- '8245:8245'
- '8246:8246'
- '8250:8250'
- '8255:8255'
- '8256:8256'
- '8260:8260'
- '8265:8265'
- '8266:8266'
- '8270:8270'
- '8275:8275'
- '8276:8276'
- '8280:8280'
- '8285:8285'
- '8286:8286'
- '8290:8290'
- '8295:8295'
- '8296:8296'
- '8300:8300'
- '8305:8305'
- '8306:8306'
- '8310:8310'
- '8315:8315'
- '8316:8316'
- '8320:8320'
- '8325:8325'
- '8326:8326'
- '8330:8330'
- '8335:8335'
- '8336:8336'
- '8340:8340'
- '8345:8345'
- '8346:8346'
- '8350:8350'
- '8355:8355'
- '8356:8356'
- '8360:8360'
- '8365:8365'
- '8366:8366'
- '8370:8370'
- '8375:8375'
- '8376:8376'
- '8380:8380'
- '8385:8385'
- '8386:8386'
- '8390:8390'
- '8395:8395'
- '8396:8396'
- '8400:8400'
- '8405:8405'
- '8406:8406'
- '8410:8410'
- '8415:8415'
- '8416:8416'
- '8420:8420'
- '8425:8425'
- '8426:8426'
- '8430:8430'
- '8435:8435'
- '8436:8436'
- '8440:8440'
- '8445:8445'
- '8446:8446'
- '8450:8450'
- '8455:8455'
- '8456:8456'
- '8460:8460'
- '8465:8465'
- '8466:8466'
- '8470:8470'
- '8475:8475'
- '8476:8476'
- '8480:8480'
- '8485:8485'
- '8486:8486'
- '8490:8490'
- '8495:8495'
- '8496:8496'
environment:
AZURACAST_VERSION: $$cap_AZURACAST_VERSION
AZURACAST_SFTP_PORT: $$cap_AZURACAST_SFTP_PORT
MYSQL_ROOT_PASSWORD: $$cap_AZURACAST_DB_PASSWORD
PUID: $$cap_AZURACAST_PUID
PGID: $$cap_AZURACAST_PGID
volumes:
- $$cap_appname-stations:/var/azuracast/stations
- $$cap_appname-backups:/var/azuracast/backups
- $$cap_appname-db:/var/lib/mysql
- $$cap_appname-storage:/var/azuracast/storage
caproverOneClickApp:
instructions:
start: |-
AzuraCast is a "web radio station in a box". We include everything you need to broadcast your own Internet
radio station, along with a powerful web interface to manage your stations, let live DJs connect to your stream,
and view detailed reports about your audience.
Note: This one-click app exposes all the ports in the range from 8000-8500 that are needed to run your first
50 stations, both for outgoing broadcasting and incoming DJ connections. If you're solely using the AzuraCast
AutoDJ, these ports aren't necessary as you can just enable the "Use Web Proxy" setting inside AzuraCast. If you
plan to use direct ports or accept incoming DJ connections, ensure the ports in the range from 8000 to 8500
(excluding port 8080, as it's commonly used for other applications) are not used by other applications and are cleared
through your firewall.
end: |-
AzuraCast is up and running! You should now complete the web setup in your browser at
http://$$cap_appname.$$cap_root_domain/
displayName: AzuraCast
isOfficial: true
description: Self-hosted web radio management suite
documentation: https://www.azuracast.com/docs
variables:
- id: $$cap_AZURACAST_VERSION
label: Version
description: Valid values include "latest" for Rolling Release, "stable" for Stable release channel, and any specific version.
defaultValue: 'latest'
- id: $$cap_AZURACAST_DB_PASSWORD
label: MariaDB Root Password
description: Specify a password for the root user of the built-in MariaDB database.
validRegex: /.{1,}/
- id: $$cap_AZURACAST_PUID
label: User ID for AzuraCast User (Advanced)
defaultValue: '1000'
description: User ID that the process uses; changing this is only necessary if you're using custom file mounts.
validRegex: /.{1,}/
- id: $$cap_AZURACAST_PGID
label: Group ID for AzuraCast User (Advanced)
defaultValue: '1000'
description: Group ID that the process uses; changing this is only necessary if you're using custom file mounts.
validRegex: /.{1,}/
- id: $$cap_AZURACAST_SFTP_PORT
label: SFTP Port (Advanced)
description: Port used by station managers to connect via SFTP to manage media in bulk.
defaultValue: 2022
validRegex: /.{1,}/

View File

@ -1,26 +0,0 @@
captainVersion: 4
services:
'$$cap_appname':
image: ckulka/baikal:$$cap_version
volumes:
- '$$cap_appname-data:/var/www/baikal/Specific'
- '$$cap_appname-config:/var/www/baikal/config'
caproverExtra:
containerHttpPort: '80'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: Baikal Version
defaultValue: '0.9.2-nginx'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/ckulka/baikal/tags
validRegex: "/^([^\\s^\\/])+$/"
instructions:
start: |-
Baïkal is a lightweight CalDAV+CardDAV server. It offers an extensive web interface with easy management of users, address books and calendars. It is fast and simple to install and only needs a basic php capable server. The data can be stored in a MySQL or a SQLite database.
More details: https://sabre.io/baikal/
end: |-
Baïkal has been successfully deployed!
displayName: Baïkal
isOfficial: false
description: Baïkal is a lightweight CalDAV+CardDAV server. It offers an extensive web interface with easy management of users, address books and calendars.
documentation: See https://sabre.io/baikal/

View File

@ -1,83 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: baserow/baserow:$$cap_BASEROW_VERSION
environment:
BASEROW_PUBLIC_URL: http://$$cap_appname.$$cap_root_domain
FROM_EMAIL: $$cap_BASEROW_FROM_EMAIL
EMAIL_SMTP: $$cap_BASEROW_EMAIL_SMTP_ENABLED
EMAIL_SMTP_HOST: $$cap_BASEROW_EMAIL_SMTP_HOST
EMAIL_SMTP_PORT: $$cap_BASEROW_EMAIL_SMTP_PORT
EMAIL_SMTP_USER: $$cap_BASEROW_EMAIL_SMTP_USER
EMAIL_SMTP_PASSWORD: $$cap_BASEROW_EMAIL_SMTP_PASSWORD
EMAIL_SMTP_USE_TLS: $$cap_BASEROW_EMAIL_SMTP_USE_TLS
EMAIL_SMTP_USE_SSL: $$cap_BASEROW_EMAIL_SMTP_USE_SSL
volumes:
- $$cap_appname-data:/baserow/data
caproverOneClickApp:
instructions:
start: |-
Baserow is an open-source online database tool.
Users can use this no-code platform to create a database without any technical experience.
It lowers the barriers to app creation so that anyone who can work with a spreadsheet can also create a database.
The interface looks a lot like a spreadsheet.
end: |-
Baserow has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain`
Please do the following steps:
1. Activate **WebSocket Support**
2. If you enabled HTTPS, you should adjust the `BASEROW_PUBLIC_URL` environment variable accordingly
Enjoy your self-hosted Airtable alternative!
displayName: Baserow
isOfficial: true
description: Open Source No-Code Database And Airtable Alternative
documentation: https://baserow.io/docs
variables:
- id: $$cap_BASEROW_VERSION
label: Version
description: >-
Check out their valid tags at https://hub.docker.com/r/baserow/baserow/tags
defaultValue: '1.18.0'
validRegex: /.{1,}/
- id: $$cap_BASEROW_FROM_EMAIL
label: Mail | From
description: >-
The email address Baserow will send emails from
- id: $$cap_BASEROW_EMAIL_SMTP_ENABLED
label: SMTP | Enabled
description: >-
If set to any non empty value then Baserow will start sending emails using the configuration options below.
If not set then Baserow will not send emails and just print them to the logs instead
- id: $$cap_BASEROW_EMAIL_SMTP_HOST
label: SMTP | Host
description: >-
The host of the external SMTP server that Baserow should use to send emails
- id: $$cap_BASEROW_EMAIL_SMTP_PORT
label: SMTP | Port
description: >-
The host's port of the external SMTP server
- id: $$cap_BASEROW_EMAIL_SMTP_USER
label: SMTP | User
description: >-
The username to authenticate with the external SMTP server when sending emails
- id: $$cap_BASEROW_EMAIL_SMTP_PASSWORD
label: SMTP | Password
description: >-
The password to authenticate with the external SMTP server when sending emails
- id: $$cap_BASEROW_EMAIL_SMTP_USE_TLS
label: SMTP | Use TLS
description: >-
If set to any non empty value then Baserow will attempt to send emails using TLS.
Whether to use a TLS (secure) connection when talking to the SMTP server.
This is used for explicit TLS connections, generally on port 587.
If you are experiencing hanging connections, see the implicit TLS setting `EMAIL_SMTP_USE_SSL`
- id: $$cap_BASEROW_EMAIL_SMTP_USE_SSL
label: SMTP | Use SSL
description: >-
If set to any non empty value then an implicit TLS (secure) connection will be used when talking to the SMTP server.
In most email documentation this type of TLS connection is referred to as SSL.
It is generally used on port 465.
If you are experiencing problems, see the explicit TLS setting `EMAIL_SMTP_USE_TLS`.
Note that `EMAIL_SMTP_USE_TLS` / `EMAIL_SMTP_USE_SSL` are mutually exclusive, so only set one of those settings

View File

@ -1,64 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: linuxserver/bazarr:$$cap_bazarr_version
environment:
TZ: $$cap_tz
PUID: $$cap_puid
PGID: $$cap_guid
hostname: $$cap_appname.$$cap_root_domain
volumes:
- $$cap_appname-config:/config
- $$cap_path_to_movies:/movies
- $$cap_path_to_tv:/tv
caproverExtra:
containerHttpPort: 6767
caproverOneClickApp:
variables:
- id: $$cap_bazarr_version
label: Bazarr Version
defaultValue: '1.0.1'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/bazarr/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_tz
label: Time Zone
defaultValue: Europe/Brussels
description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: /.{1,}/
- id: $$cap_path_to_movies
label: Location of TV library on disk
description: Location of TV library on disk
validRegex: /\/[^\s-][a-zA-Z0-9_\/-]*[^\/][^\s-]/
- id: $$cap_path_to_tv
label: Location of movie library on disk
description: Location of movie library on disk
validRegex: /\/[^\s-][a-zA-Z0-9_\/-]*[^\/][^\s-]/
- id: $$cap_puid
label: User ID
defaultValue: '1000'
description: User ID that the process uses, run (id $user) in your instance to see the id
validRegex: /.{1,}/
- id: $$cap_guid
label: Group ID
defaultValue: '1000'
description: Group ID that the process uses, run (id $user) in your instance to see the id
validRegex: /.{1,}/
instructions:
start: >-
Bazarr is a companion application to Sonarr and Radarr.
It can manage and download subtitles based on your requirements.
You define your preferences by TV show or movie and Bazarr takes care of everything for you.
end: >-
Bazarr is deployed and available at http://$$cap_appname.$$cap_root_domain.
displayName: Bazarr
isOfficial: true
description: Bazarr is a companion application to Sonarr and Radarr. It can manage and download subtitles based on your requirements.
documentation: Taken from https://hub.docker.com/r/linuxserver/bazarr.

View File

@ -1,47 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: vaultwarden/server:$$cap_bitwardenrs_version
environment:
DOMAIN: https://$$cap_appname.$$cap_root_domain
WEBSOCKET_ENABLED: true
SIGNUPS_ALLOWED: $$cap_register_enabled
ADMIN_TOKEN: $$cap_admin_token
ports:
- 3012:3012
volumes:
- $$cap_appname-data:/data
restart: unless-stopped
caproverOneClickApp:
variables:
- id: $$cap_bitwardenrs_version
label: vaultwarden Version
defaultValue: 1.26.0
description: Check out their Docker page for the valid tags https://hub.docker.com/r/vaultwarden/server/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_register_enabled
label: enabled open registration
defaultValue: true
description: If field is true, all visitors can create an account. If false, only the administrator can invite other users.
validRegex: /^(true|false)$/
- id: $$cap_admin_token
label: admin password
defaultValue:
description: this password enables the admin zone on /admin. If you let this password empty, the admin interface will be disabled and it will be the best safety option.
instructions:
start: >-
This is a Bitwarden server API implementation written in Rust compatible with upstream Bitwarden clients, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal.
This project is not associated with the Bitwarden project nor 8bit Solutions LLC.
if you want more details please go to https://www.reddit.com/r/selfhosted/comments/fvld0n/bitwarden_vs_bitwarden_rs/
end: >-
Bitwarden_rs is deployed and available as $$cap_appname. Please give it a few minutes to boot, otherwise you will see a 502 error (even if the logs say it's working).
Please activate https and https redirect otherwise you will have an error on account creation. You need to enable websocket too.
If you enabled the admin token please go to https://$$cap_appname.$$cap_root_domain/admin to begin
displayName: vaultwarden
isOfficial: true
description: Lightweight fully featured Rust implementation of Bitwarden.
documentation: Taken from https://hub.docker.com/r/vaultwarden/server

View File

@ -1,63 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: lscr.io/linuxserver/mariadb:$$cap_mariadb_version
environment:
PGID: 1000
PUID: 1000
MYSQL_ROOT_PASSWORD: $$cap_DB_PASS
TZ: $$cap_timezone
MYSQL_DATABASE: bookstackapp
MYSQL_USER: bookstack
MYSQL_PASSWORD: $$cap_DB_PASS
volumes:
- $$cap_appname-db-config:/config
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
environment:
PUID: 1000
PGID: 1000
APP_URL: http://$$cap_appname.$$cap_root_domain
DB_HOST: srv-captain--$$cap_appname-db
DB_PORT: 3306
DB_USER: bookstack
DB_PASS: $$cap_DB_PASS
DB_DATABASE: bookstackapp
image: lscr.io/linuxserver/bookstack:$$cap_bookstack_version
restart: always
volumes:
- $$cap_appname-config:/config
caproverOneClickApp:
variables:
- label: Database Password
description: Password to connect to the database
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_DB_PASS
- label: Timezone
description: This is the timezone for the application, find yours at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: Europe/London
id: $$cap_timezone
- id: $$cap_bookstack_version
label: Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/bookstack/tags
defaultValue: 'v23.10.4-ls118'
- id: $$cap_mariadb_version
label: MariaDB Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/mariadb/tags
defaultValue: '10.11.5-r0-ls122'
instructions:
start: |-
A platform to create documentation/wiki content built with PHP & Laravel.
GitHub: https://github.com/BookStackApp/BookStack
end: |-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
The default username is admin@admin.com with the password of password.
displayName: BookStack
isOfficial: true
description: A platform to create documentation/wiki content built with PHP & Laravel
documentation: https://www.bookstackapp.com/docs/

View File

@ -1,147 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: 3000
dockerfileLines:
- FROM botpress/server:$$cap_BOTPRESS_VERSION
- CMD /botpress/bp
environment:
DATABASE_URL: postgres://$$cap_POSTGRES_USER:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-db/$$cap_POSTGRES_DB
REDIS_URL: redis://srv-captain--$$cap_appname-cache?password=$$cap_REDIS_PASSWORD
EXTERNAL_URL: http://$$cap_appname.$$cap_root_domain
BP_MODULE_NLU_DUCKLINGURL: http://srv-captain--$$cap_appname-lang:8000
BP_MODULE_NLU_LANGUAGESOURCES: '[{"endpoint": "http://srv-captain--$$cap_appname-lang:3100"}]'
BP_PRODUCTION: $$cap_BOTPRESS_PRODUCTION
BPFS_STORAGE: $$cap_BOTPRESS_STORAGE
VERBOSITY_LEVEL: $$cap_BOTPRESS_VERBOSITY_LEVEL
BP_DECISION_MIN_CONFIDENCE: $$cap_BOTPRESS_DECISION_MIN_CONFIDENCE
FAST_TEXT_VERBOSITY: $$cap_BOTPRESS_FAST_TEXT_VERBOSITY
FAST_TEXT_CLEANUP_MS: $$cap_BOTPRESS_FAST_TEXT_CLEANUP_MS
depends_on:
- $$cap_appname-lang
- $$cap_appname-db
- $$cap_appname-cache
volumes:
- $$cap_appname:/botpress/data
$$cap_appname-lang:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM botpress/server:$$cap_BOTPRESS_VERSION
- USER root
- RUN mkdir /botpress/lang && chown -R botpress:botpress /botpress/lang
- USER botpress
- CMD bash -c "./duckling -p 8000 & ./bp lang --langDir /botpress/lang --port 3100"
volumes:
- $$cap_appname-lang:/botpress/lang
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
POSTGRES_USER: $$cap_POSTGRES_USER
volumes:
- $$cap_appname-db:/var/lib/postgresql/data
$$cap_appname-cache:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM redis:$$cap_REDIS_VERSION
- CMD redis-server --requirepass $$cap_REDIS_PASSWORD
volumes:
- $$cap_appname-cache:/data
caproverOneClickApp:
displayName: Botpress
isOfficial: true
description: Open Source Platform For Developers To Build High-Quality Digital Assistants
documentation: https://botpress.com/docs
instructions:
start: |-
Botpress is a tool to simplify building chat bots for developers.
The platform puts together the boilerplate code and infrastructure you need to get a chatbot up and running and gives a complete dev-friendly platform that ships with all the tools you need to build, deploy, and manage production-grade chat bots in record time.
end: |-
Botpress has been successfully deployed! It might take few moments before it's fully started.
Please perform the following steps:
1. Go to the **HTTP Settings** of `$$cap_appname` and **Enable WebSocket Support**
2. Visit your Botpress instance at `http://$$cap_appname.$$cap_root_domain` and create your account
3. Go to **Code Editor** and select **Configurations** > **Module Configurations** > `nlu.json` in the side bar
4. Replace value for `ducklingURL` with `http://srv-captain--$$cap_appname-lang:8000`
5. Replace value for `languageSources` > `endpoint` with `http://srv-captain--$$cap_appname-lang:3100`
6. Restart `$$cap_appname` in CapRover by clicking on **Save & Update**
Have fun with Botpress!
variables:
- id: $$cap_BOTPRESS_VERSION
label: Version | Botpress
description: Version of Botpress. Check out their Docker page for the valid tags https://hub.docker.com/r/botpress/server/tags
defaultValue: v12_30_2
validRegex: /.{1,}/
- id: $$cap_POSTGRES_VERSION
label: Version | PostgreSQL
description: Version of PostgreSQL. Check out their Docker page for the valid tags https://hub.docker.com/_/postgres/tags
defaultValue: 11.2-alpine
validRegex: /.{1,}/
- id: $$cap_REDIS_VERSION
label: Version | Redis
description: Version of Redis. Check out their Docker page for the valid tags https://hub.docker.com/_/redis/tags
defaultValue: 5.0.5-alpine
validRegex: /.{1,}/
- id: $$cap_BOTPRESS_PRODUCTION
label: General | Production Mode
description: Whether to enable production mode.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_BOTPRESS_STORAGE
label: General | Storage
description: Storage destination used by BPFS to read and write files (global and bots). Either `disk` or `database`.
defaultValue: database
validRegex: /.{1,}/
- id: $$cap_BOTPRESS_VERBOSITY_LEVEL
label: General | Verbosity Level
description: When set higher than `0`, Botpress will be more chatty when processing requests.
defaultValue: '0'
validRegex: /.{1,}/
- id: $$cap_BOTPRESS_DECISION_MIN_CONFIDENCE
label: General | Decision Minimum Confidence
description: Minimum threshold required for the Decision Engine to elect a suggestion.
defaultValue: '0.5'
validRegex: /.{1,}/
- id: $$cap_BOTPRESS_FAST_TEXT_VERBOSITY
label: General | Fast Text Verbosity
description: Level of verbosity that FastText will use when training models.
defaultValue: '0'
validRegex: /.{1,}/
- id: $$cap_BOTPRESS_FAST_TEXT_CLEANUP_MS
label: General | Fast Text Clean-Up
description: Model will be kept in memory until it receives no messages to process for that duration. Defined in milliseconds.
defaultValue: 60000
validRegex: /.{1,}/
- id: $$cap_POSTGRES_DB
label: PostgreSQL | Name
description: Name of the database.
defaultValue: botpress
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: PostgreSQL | User
description: Name of the database user.
defaultValue: botpress
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PASSWORD
label: PostgreSQL | Password
description: Password of the database user.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/
- id: $$cap_REDIS_PASSWORD
label: Redis | Password
description: Password for Redis.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/

View File

@ -1,252 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: boxyhq/jackson:$$cap_boxyhq_jackson_version
restart: always
caproverExtra:
containerHttpPort: '5225'
environment:
EXTERNAL_URL: $$cap_external_url
SAML_AUDIENCE: $$cap_saml_audience
JACKSON_API_KEYS: $$cap_jackson_api_keys
ADMIN_PORTAL_SSO_TENANT: $$cap_admin_portal_sso_tenant
ADMIN_PORTAL_SSO_PRODUCT: $$cap_admin_portal_sso_product
IDP_ENABLED: $$cap_idp_enabled
PRE_LOADED_CONNECTION: $$cap_pre_loaded_connection
CLIENT_SECRET_VERIFIER: $$cap_client_secret_verifier
DB_ENGINE: $$cap_db_engine
DB_URL: $$cap_db_url
DB_TYPE: $$cap_db_type
DB_TTL: $$cap_db_ttl
DB_CLEANUP_LIMIT: $$cap_db_cleanup_limit
DB_PAGE_LIMIT: $$cap_db_page_limit
DB_ENCRYPTION_KEY: $$cap_db_encryption_key
SMTP_HOST: $$cap_smtp_host
SMTP_PORT: $$cap_smtp_port
SMTP_USER: $$cap_smtp_user
SMTP_PASSWORD: $$cap_smtp_password
SMTP_FROM: $$cap_smtp_from
NEXTAUTH_ACL: $$cap_nextauth_acl
NEXTAUTH_URL: $$cap_nextauth_url
NEXTAUTH_SECRET: $$cap_nextauth_secret
NEXTAUTH_ADMIN_CREDENTIALS: $$cap_nextauth_admin_credentials
RETRACED_HOST_URL: $$cap_retraced_host_url
RETRACED_EXTERNAL_URL: $$cap_retraced_external_url
RETRACED_ADMIN_ROOT_TOKEN: $$cap_retraced_admin_root_token
TERMINUS_PROXY_HOST_URL: $$cap_terminus_proxy_host_url
TERMINUS_ADMIN_ROOT_TOKEN: $$cap_terminus_admin_root_token
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: $$cap_otel_exporter_otlp_metrics_endpoint
OTEL_EXPORTER_OTLP_METRICS_HEADERS: $$cap_otel_exporter_otlp_metrics_headers
OPENID_JWS_ALG: $$cap_openid_jws_alg
OPENID_RSA_PRIVATE_KEY: $$cap_openid_rsa_private_key
OPENID_RSA_PUBLIC_KEY: $$cap_openid_rsa_public_key
PUBLIC_KEY: $$cap_public_key
PRIVATE_KEY: $$cap_private_key
BOXYHQ_LICENSE_KEY: $$cap_boxyhq_license_key
WEBHOOK_URL: $$cap_webhook_url
WEBHOOK_SECRET: $$cap_webhook_secret
node_options: $$cap_node_options
NEXT_TELEMETRY_DISABLED: $$cap_next_telemetry_disabled
caproverOneClickApp:
variables:
- id: $$cap_external_url
label: External URL
description: The public URL to reach this service. This is used internally to construct the callback url at which the SAML/OIDC IdP sends back the authorization response. (https://boxyhq.com/docs/jackson/deploy/env-variables#external_url)
validRegex: '/.{1,}/'
defaultValue: $$cap_appname.$$cap_root_domain
- id: $$cap_saml_audience
label: SAML Audience
validRegex: '/.{1,}/'
description: The value of this setting (same as SP EntityID of Jackson) allows the Jackson instance to verify that it is the intended recipient of a SAML response. The same value is also set in the SAML App created on the IdP end by your customers. Once set do not change this value unless you get your customers to reconfigure their SAML App again. It is case-sensitive. This does not have to be a real URL. (https://boxyhq.com/docs/jackson/deploy/env-variables#saml_audience)
defaultValue: $$cap_appname.$$cap_root_domain
- id: $$cap_jackson_api_keys
label: API Keys
validRegex: '/.{1,}/'
description: A comma separated list of API keys that will be validated when serving the API requests for SSO connection (/api/v1/connections) and Directory Sync (/api/v1/directory-sync). (https://boxyhq.com/docs/jackson/deploy/env-variables#jackson_api_keys)
defaultValue: $$cap_gen_random_hex(64)
- id: $$cap_admin_portal_sso_tenant
label: Admin Portal SSO Tenant
description: This will be used as the tenant for the SSO connections (added from Settings tab) used to login into the Admin portal itself. Set this to a value that is less likely to conflict with the main Enterprise SSO connections. (https://boxyhq.com/docs/jackson/deploy/env-variables#admin_portal_sso_tenant)
validRegex: '/.{1,}/'
defaultValue: _jackson_boxyhq
- id: $$cap_admin_portal_sso_product
label: Admin Portal SSO Product
description: This will be used as the product for the SSO connections (added from Settings tab) used to login into the Admin portal itself. Set this to a value that is less likely to conflict with the main Enterprise SSO connections. (https://boxyhq.com/docs/jackson/deploy/env-variables#admin_portal_sso_product)
validRegex: '/.{1,}/'
defaultValue: _jackson_admin_portal
- id: $$cap_idp_enabled
label: IDP Enabled
description: Set to true to enable IdP initiated login for SAML. SP initiated login is the only recommended flow but you might have to support IdP login at times. (https://boxyhq.com/docs/jackson/deploy/env-variables#idp_enabled)
defaultValue: true
- id: $$cap_pre_loaded_connection
label: Pre loaded connection
description: If you only need a single tenant or a handful of pre-configured tenants then this config will help you read and load IdP (both OpenID and SAML)connections. It works well with the mem DB engine so you don't have to configure any external databases for this to work (though it works with those as well). This is a path (absolute or relative) to a directory that contains files organized in the format described in the next section. (https://boxyhq.com/docs/jackson/deploy/env-variables#pre_loaded_connection)
- id: $$cap_client_secret_verifier
label: Client secret verifier
description: When tenant and product are used for the SAML flow (and PKCE is not being used) then we use dummy as placeholders for client_id and client_secret. This is not a security issue because SAML is tenanted and hence your Identity Provider will block access to anyone trying to log into your SAML tenant. However for additional security you should set CLIENT_SECRET_VERIFIER to a random secret and use that value as the client_secret during the OAuth 2.0 flow. (https://boxyhq.com/docs/jackson/deploy/env-variables#client_secret_verifier)
validRegex: '/.{1,}/'
defaultValue: $$cap_gen_random_hex(64)
- id: $$cap_db_engine
label: DB Engine
description: Supported values are redis, sql, mongo, mem, planetscale, dynamodb (https://boxyhq.com/docs/jackson/deploy/env-variables#db_engine)
validRegex: '/.{1,}/'
defaultValue: sql
- id: $$cap_db_url
label: DB URL
description: The database URL to connect to. If you are using self-signed certificates then pass sslmode=no-verify instead of sslmode=require in the DB_URL. This is because self-signed certs will be rejected as unauthorized in strict mode. Also, set DB_SSL=true and DB_SSL_REJECT_UNAUTHORIZED=false (see env vars below for more details). (https://boxyhq.com/docs/jackson/deploy/env-variables#db_url)
validRegex: '/.{1,}/'
defaultValue: postgres://postgres_user:postgres_password@localhost:5432/postgres_db
- id: $$cap_db_type
label: DB Type
description: Only needed when DB_ENGINE is sql. Supported values are postgres, mysql, mariadb, mssql (https://boxyhq.com/docs/jackson/deploy/env-variables#db_type)
validRegex: '/.{1,}/'
defaultValue: postgres
- id: $$cap_db_ttl
label: DB TTL
description: TTL for the code, session and token stores (in seconds). (https://boxyhq.com/docs/jackson/deploy/env-variables#db_ttl)
defaultValue: 300
- id: $$cap_db_cleanup_limit
label: DB Cleanup limit
description: Limit cleanup of TTL entries to this number. (https://boxyhq.com/docs/jackson/deploy/env-variables#db_cleanup_limit)
defaultValue: 1000
- id: $$cap_db_page_limit
label: DB Page limit
description: Page limit
defaultValue: 50
- id: $$cap_db_encryption_key
label: DB Encryption key
description: To encrypt data at rest specify a 32 character key. You can use openssl to generate a random 32 character key 'openssl rand -base64 24' (https://boxyhq.com/docs/jackson/deploy/env-variables#db_encryption_key)
- id: $$cap_smtp_host
label: SMTP Host
description: The SMTP host. (https://boxyhq.com/docs/jackson/deploy/env-variables#smtp_host)
defaultValue: smtp.example.com
- id: $$cap_smtp_port
label: SMTP Port
description: The SMTP server port. (https://boxyhq.com/docs/jackson/deploy/env-variables#smtp_port)
defaultValue: 587
- id: $$cap_smtp_user
label: SMTP User
description: Username for the SMTP server. (https://boxyhq.com/docs/jackson/deploy/env-variables#smtp_user)
defaultValue: info@example.com
- id: $$cap_smtp_password
label: SMTP Password
description: Password for the SMTP server. (https://boxyhq.com/docs/jackson/deploy/env-variables#smtp_password)
- id: $$cap_smtp_from
label: SMTP From
description: From address used to send mail. (https://boxyhq.com/docs/jackson/deploy/env-variables#smtp_from)
defaultValue: noreply@example.com
- id: $$cap_nextauth_acl
label: NextAuth ACL
description: Set this to a comma separated string of email addresses or glob patterns like tonystark@gmail.com,*@marvel.com. Access will be denied to email addresses which don't match. If you don't specify any value access is denied to all. (https://boxyhq.com/docs/jackson/deploy/env-variables#nextauth_acl)
defaultValue: tonystark@gmail.com,*@marvel.com
- id: $$cap_nextauth_url
label: NextAuth URL
description: When running locally this will point to the local server https://boxyhq.my-domain.com. When deploying to production, set this to the canonical URL of the site. (https://boxyhq.com/docs/jackson/deploy/env-variables#nextauth_url)
validRegex: '/.{1,}/'
defaultValue: $$cap_appname.$$cap_root_domain
- id: $$cap_nextauth_secret
label: NextAuth Secret
description: Set this to a random string. You can use openssl rand -base64 32 to get one. This secret is used to encrypt JWT and hash the email verification token. (https://boxyhq.com/docs/jackson/deploy/env-variables#nextauth_secret)
validRegex: '/.{1,}/'
defaultValue: $$cap_gen_random_hex(64)
- id: $$cap_nextauth_admin_credentials
label: NextAuth Admin credentials
description: Set this to a comma separated string of the pattern email:password to enable login to the Admin Portal, for example NEXTAUTH_ADMIN_CREDENTIALS=deepak@boxyhq.com:Password123. If you don't specify any value access is denied to all. (https://boxyhq.com/docs/jackson/deploy/env-variables#nextauth_admin_credentials)
- id: $$cap_retraced_host_url
label: Retraced Host URL
description: If you'd like to use the Admin Portal to manage our Audit Logs service (Retraced) then set this env var to the URL of the service. (https://boxyhq.com/docs/jackson/deploy/env-variables#retraced_host_url)
- id: $$cap_retraced_external_url
label: Retraced External URL
description: If you'd like to use the Admin Portal to manage our Audit Logs service (Retraced) then set this env var to the Public URL of the service. If this is the same as RETRACED_HOST_URL above then you can skip this and it will default to the value of RETRACED_HOST_URL. (https://boxyhq.com/docs/jackson/deploy/env-variables#retraced_external_url)
- id: $$cap_retraced_admin_root_token
label: Retraced Admin root token
description: you need to set the admin root token for Retraced so that we can connect to Retraced and fetch projects and audit logs. (https://boxyhq.com/docs/jackson/deploy/env-variables#retraced_admin_root_token)
- id: $$cap_terminus_proxy_host_url
label: Terminus Proxy Host URL
- id: $$cap_terminus_admin_root_token
label: Terminus Admin root token
- id: $$cap_otel_exporter_otlp_metrics_endpoint
label: OTEL Exporter OTLP Metrics endpoint
description: Target URL to which the exporter is going to send metrics.. (https://boxyhq.com/docs/jackson/deploy/env-variables#otel_exporter_otlp_endpoint-or-otel_exporter_otlp_metrics_endpoint)
- id: $$cap_otel_exporter_otlp_metrics_headers
label: OTEL Exporter OTLP Metrics headers
description: Headers relevant for the endpoint, useful for specifying authentication details for providers. (https://boxyhq.com/docs/jackson/deploy/env-variables#otel_exporter_otlp_headers-or-otel_exporter_otlp_metrics_headers)
- id: $$cap_openid_jws_alg
label: OpenID JWS algorithms
description: The algorithm used to sign the id_token. Jackson uses jose to create the ID token. Supported algorithms can be found at https://github.com/panva/jose/issues/114#digital-signatures. (https://boxyhq.com/docs/jackson/deploy/env-variables#openid_jws_alg)
defaultValue: RS256
- id: $$cap_openid_rsa_private_key
label: OpenID RSA Private key
description: Base64 value of private key. To generate one 'openssl genrsa -out private-key.pem 3072' then 'openssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in private-key.pem -out private_key.pem' and 'cat private_key.pem | base64'. (https://boxyhq.com/docs/jackson/deploy/env-variables#openid_rsa_private_key)
- id: $$cap_openid_rsa_public_key
label: OpenID RSA Public key
description: Base64 value of public key. You can generate the public key from the private key as shown below 'openssl rsa -in private_key.pem -pubout -out public_key.pem' and than 'cat public_key.pem | base64'. (https://boxyhq.com/docs/jackson/deploy/env-variables#openid_rsa_public_key)
- id: $$cap_public_key
label: Public key
description: This is the public key of the private key used to sign the SAML requests. Jackson expects the public key to be base64 encoded. (https://boxyhq.com/docs/jackson/deploy/env-variables#public_key)
- id: $$cap_private_key
label: Private key
description: This is the private key used to sign the SAML requests. Jackson expects the private key to be base64 encoded. To generate a private key and public key pair you can use the following command 'openssl req -x509 -newkey rsa:2048 -keyout key.pem -out public.crt -sha256 -days 365 -nodes' then 'cat public.crt | base64' and that 'cat key.pem | base64' (https://boxyhq.com/docs/jackson/deploy/env-variables#private_key)
- id: $$cap_boxyhq_license_key
label: BoxyHQ License key
- id: $$cap_webhook_url
label: Webhook URL
description: Specify a webhook URL to receive events about sso and directory connections. (https://boxyhq.com/docs/jackson/deploy/env-variables#webhook_url)
- id: $$cap_webhook_secret
label: Webhook Secret
description: Specify a secret to be used to sign the webhook payload. This is used to verify the authenticity of the webhook payload. (https://boxyhq.com/docs/jackson/deploy/env-variables#webhook_secret)
- id: $$cap_node_options
label: Node Options
defaultValue: --max-http-header-size=81920 --dns-result-order=ipv4first
- id: $$cap_next_telemetry_disabled
label: Next Telemetry disabled
defaultValue: 1
- id: $$cap_boxyhq_jackson_version
label: BoxyHQ Jackson Version
defaultValue: 1.13.0
description: Check out their Docker page for the valid tags https://hub.docker.com/r/boxyhq/jackson/tags/
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
Reduce Time to Market without sacrificing your security posture!
BoxyHQs suite of APIs for security and privacy helps engineering teams build and ship compliant cloud applications faster.
SAML Jackson can be used with any web application to integrate the Single Sign-On (SSO) authentication.
NOTE: If you turn it to HTTPS, then dont forget change variables from 'http://$$cap_appname.$$cap_root_domain' to 'https://$$cap_appname.$$cap_root_domain'
Note: This app is intended for advanced users who'd like to have a central DB in a single container for BoxyHQ Jackson. You should start by configuring your DB at you self, you can it do before or after you installed the BoxyHQ Jackson.
end: >-
BoxyHQ is deployed and available as http://$$cap_appname.$$cap_root_domain.
NOTE: If you turn it to HTTPS, then dont forget change variables from 'http://$$cap_appname.$$cap_root_domain' to 'https://$$cap_appname.$$cap_root_domain'
IMPORTANT: It will take up to 2 minutes for BoxyHQ Jackson 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.
displayName: BoxyHQ Jackson (SAML to OAuht) - No Database
isOfficial: true
description: This will create a BoxyHQ Jackson only. You will need to create and configure the database information manually. Intended for advanced users.
documentation: Taken from https://hub.docker.com/r/boxyhq/jackson/.

View File

@ -1,165 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
documentation: https://docs.browserless.io/docs/docker-quickstart.html
image: browserless/chrome:$$cap_browserless_version
restart: always
volumes:
- $$cap_appname-workspace:/downloads
- $$cap_appname-metrics:/metrics
- $$cap_appname-user-data:/user-data
environment:
DEMO_MODE: $$cap_demo_mode
ENABLE_DEBUGGER: $$cap_enable_debugger
MAX_CONCURRENT_SESSIONS: $$cap_max_concurrent_sessions
CONNECTION_TIMEOUT: $$cap_connection_timeout
MAX_QUEUE_LENGTH: $$cap_max_queue_length
WORKSPACE_DIR: $$cap_workspace_dir
WORKSPACE_DELETE_EXPIRED: $$cap_workspace_delete_expired
WORKSPACE_EXPIRE_DAYS: $$cap_workspace_expire_days
DEFAULT_USER_DATA_DIR: $$cap_default_user_data_dir
METRICS_JSON_PATH: $$cap_metrics_json_path
DISABLE_AUTO_SET_DOWNLOAD_BEHAVIOR: $$cap_disable_auto_set_download_behavior
DEFAULT_BLOCK_ADS: $$cap_default_block_ads
ENABLE_API_GET: $$cap_enable_api_get
TOKEN: $$cap_token
ENABLE_CORS: $$cap_enable_cors
ENABLE_XVBF: $$cap_enable_xvbf
EXIT_ON_HEALTH_FAILURE: $$cap_exit_on_health_failure
DEFAULT_IGNORE_HTTPS_ERRORS: $$cap_default_ignore_https_errors
DEFAULT_IGNORE_DEFAULT_ARGS: $$cap_default_ignore_default_args
DISABLED_FEATURES: $$cap_disabled_features
PREBOOT_CHROME: $$cap_preboot_chrome
KEEP_ALIVE: $$cap_keep_alive
CHROME_REFRESH_TIME: $$cap_chrome_refresh_time
FUNCTION_ENABLE_INCOGNITO_MODE: $$cap_function_enable_incognito_mode
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_browserless_version
label: Browserless Version
defaultValue: 1-chrome-stable
description: Browserless Image Version
validRegex: /^([^\s^\/])+$/
- id: $$cap_demo_mode
label: Demo Mode
defaultValue: 'false'
validRegex: /^(true|false)$/
description: If you want to serve the interactive debugger, but not allow it to handle puppeteer.connect calls, you can do so via the DEMO_MODE flag.
- id: $$cap_enable_debugger
label: Enable Debugger
defaultValue: 'true'
validRegex: /^(true|false)$/
description: If you want to disable the debugger (and all accompnaying HTML) you can set the ENABLE_DEBUGGER to false to only allow puppeteer.connect calls to succeed.
- id: $$cap_max_concurrent_sessions
label: Max Concurrent Sessions
defaultValue: 5
description: Since running Chrome can be rather resource intensive you'll probably want to limit the number of concurrent sessions. This is, by default, set to 5 when not specified. Once the limit is reached then queueing begins to take place and requests will wait until more workers are ready.
- id: $$cap_connection_timeout
label: Connection Timeout
defaultValue: 30000
description: Connection timeout is a parameter that sets how long any session can run for. This is in place to prevent scripts that don't cleanup properly, or run into errors tha cause them to hang. The value of which can be set in milliseconds, and defaults to 30000, or 30 seconds.
- id: $$cap_max_queue_length
label: Max Queue Length
defaultValue: 5
description: This value determines how many items in the queue are allowed before requests are issued a 429 response code and closed.
- id: $$cap_workspace_dir
label: workspace location
defaultValue: /downloads
description: Defining a workspace location
- id: $$cap_workspace_delete_expired
label: Deleting workspace files automatically
defaultValue: 'false'
validRegex: /^(true|false)$/
description: When downloads from Chrome are larger, it's easy for the docker image to fill it's disk-space if you forget to periodically delete files.
- id: $$cap_workspace_expire_days
label: time to delete workspace files
defaultValue: 30
description: When WORKSPACE_DELETE_EXPIRED is true, browserless attempts to delete files older than 30 days in the workspace directory.
- id: $$cap_default_user_data_dir
label: User Data Dir
defaultValue: /user-data
description: Sets a default directory to cache user data to (cookies, local-storage and more).
- id: $$cap_metrics_json_path
label: Persisting Metrics
defaultValue: /metrics/metrics.json
description: browserless captures metrics while it's running, and exposes them via the /metrics endpoint.
- id: $$cap_disable_auto_set_download_behavior
label: Disable download behavior
defaultValue: 'false'
validRegex: /^(true|false)$/
description: By default, browserless tells chromium to use a special directory in /tmp for storing files. If you want opt-out of this behavior, set to true
- id: $$cap_default_block_ads
label: Block Ads
defaultValue: 'false'
validRegex: /^(true|false)$/
description: Starts all sessions with the ad-blocker already running
- id: $$cap_enable_api_get
label: Enable API GET
defaultValue: 'true'
validRegex: /^(true|false)$/
description: Allows for enabling an expiremental GET-style operation, as opposed to POSTing bodies of code to run on our APIs.
- id: $$cap_token
label: Token
defaultValue: $$cap_gen_random_hex(32)
validRegex: /^([^\s^\/])+$/
description: If you're exposing your instance to the world, but don't want anyone to use it, you can optionally apply a TOKEN param that will restrict calls without a token query-string parameter.
- id: $$cap_enable_cors
label: Enable CORS
defaultValue: 'true'
validRegex: /^(true|false)$/
description: You can enable cross-origin-resource-sharing with browserless
- id: $$cap_enable_xvbf
label: Enable XVFB
defaultValue: 'true'
validRegex: /^(true|false)$/
description: in some hosting environments it's not possible to write to the appropriate folders to support XVFB and you should set this parameter to false.
- id: $$cap_exit_on_health_failure
label: Exit on health failure
defaultValue: 'true'
validRegex: /^(true|false)$/
description: In order for browserless to restart on health-failure checks, you'll have to set to true.
- id: $$cap_default_ignore_https_errors
label: Ignore HTTPS errors
defaultValue: 'true'
validRegex: /^(true|false)$/
description: Tells browserless to, by default, ignore or not ignore HTTPS errors on sites.
- id: $$cap_default_ignore_default_args
label: Ignore Default Args
defaultValue: 'false'
validRegex: /^(true|false)$/
description: When set this will override any default arguments set by browserless to Chrome's launch arguments
- id: $$cap_disabled_features
label: Disable Routes
defaultValue: ''
description: Allows for disabling routes by supplying a list of routes to disable
- id: $$cap_preboot_chrome
label: Pre-booting Chrome
defaultValue: 'false'
validRegex: /^(true|false)$/
description: You can, optionally, pre-boot Chrome and keep it in a pool of instances (determined by MAX_CONCURRENT_SESSIONS) in order to cut-down on the boot time.
- id: $$cap_keep_alive
label: Keeping Chrome Alive
defaultValue: 'false'
validRegex: /^(true|false)$/
description: When the PREBOOT_CHROME flag is set, you can optionally keep Chrome "alive" after sessions are complete. This allows you to re-use Chrome instances without having to start and stop them (making for much faster execution).
- id: $$cap_chrome_refresh_time
label: Chrome Refresh Time
defaultValue: 3600000
description: When both PREBOOT_CHROME and KEEP_ALIVE are true browserless keeps track of how long Chrome has been running, and will attempt to close it after a certain period.
- id: $$cap_function_enable_incognito_mode
label: Function Incognito Mode
defaultValue: 'false'
validRegex: /^(true|false)$/
description: When set, and PREBOOT_CHROME and KEEP_ALIVE are set, allows for generating a fresh page (incognito page) from a re-used browser.
instructions:
start: >-
Browserless Web is communication between web applications without the need for a web browser.
end: >-
Your service is available at http://$$cap_appname.$$cap_root_domain?token=$$cap_token
Atention: you need activate Websocket Support!
displayName: Browserless
isOfficial: true
description: Browserless Web is communication between web applications without the need for a web browser.
documentation: https://docs.browserless.io/docs/docker.html

View File

@ -1,447 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: $$cap_BTCPAY_PORT
image: btcpayserver/btcpayserver:$$cap_BTCPAYSERVER_VERSION
hostname: $$cap_appname.$$cap_root_domain
environment:
BTCPAY_HOST: $$cap_appname.$$cap_root_domain
BTCPAY_POSTGRES: User ID=$$cap_POSTGRES_USER;Host=srv-captain--$$cap_appname-postgres;Port=$$cap_POSTGRES_PORT;Application Name=btcpayserver;Database=btcpayserver$$cap_NBITCOIN_NETWORK
BTCPAY_EXPLORERPOSTGRES: User ID=$$cap_POSTGRES_USER;Host=srv-captain--$$cap_appname-postgres;Port=$$cap_POSTGRES_PORT;Application Name=btcpayserver;MaxPoolSize=80;Database=nbxplorer$$cap_NBITCOIN_NETWORK
BTCPAY_NETWORK: $$cap_NBITCOIN_NETWORK
BTCPAY_BIND: $$cap_BIND_ADDRESS:$$cap_BTCPAY_PORT
BTCPAY_ROOTPATH: $$cap_BTCPAY_ROOTPATH
BTCPAY_DEBUGLOG: $$cap_BTCPAY_DEBUGLOG
BTCPAY_UPDATEURL: $$cap_BTCPAY_UPDATEURL
BTCPAY_DOCKERDEPLOYMENT: 'true'
BTCPAY_CHAINS: $$cap_USED_CHAIN
BTCPAY_BTCEXPLORERURL: http://srv-captain--$$cap_appname-nbxplorer:$$cap_NBXPLORER_PORT/
BTCPAY_BTCLIGHTNING: 'type=clightning;server=unix://etc/clightning_bitcoin/lightning-rpc'
BTCPAY_BTCEXTERNALSPARK: 'server=/spark/btc/;cookiefile=/etc/clightning_bitcoin_spark/.cookie'
BTCPAY_BTCEXTERNALRTL: 'server=/rtl/api/authenticate/cookie;cookiefile=/etc/clightning_bitcoin_rtl/.cookie'
BTCPAY_BTCEXTERNALCLIGHTNINGREST: 'server=/clightning-rest/btc;macaroonfilepath=/etc/clightning_bitcoin_rest_certs/access.macaroon;macaroondirectorypath=/etc/clightning_bitcoin_rest_certs'
depends_on:
- $$cap_appname-postgres
- $$cap_appname-bitcoind
- $$cap_appname-lightning
volumes:
- $$cap_appname-data:/datadir
- $$cap_appname-nbxplorer-data:/root/.nbxplorer
- $$cap_appname-plugins:/root/.btcpayserver/Plugins
- $$cap_appname-lightning-data:/etc/clightning_bitcoin
- $$cap_appname-lightning-spark:/etc/clightning_bitcoin_spark
- $$cap_appname-lightning-rtl-data:/etc/clightning_bitcoin_rtl
- $$cap_appname-lightning-rest-certificates:/etc/clightning_bitcoin_rest_certs
$$cap_appname-postgres:
caproverExtra:
notExposeAsWebApp: 'true'
dockerfileLines:
- FROM btcpayserver/postgres:$$cap_POSTGRES_VERSION
- CMD ["-c", "random_page_cost=1.0", "-c", "shared_preload_libraries=pg_stat_statements"]
environment:
POSTGRES_HOST_AUTH_METHOD: $$cap_POSTGRES_HOST_AUTH_METHOD
volumes:
- $$cap_appname-postgres:/var/lib/postgresql/data
$$cap_appname-nbxplorer:
caproverExtra:
notExposeAsWebApp: 'true'
image: nicolasdorier/nbxplorer:$$cap_NBXPLORER_VERSION
environment:
NBXPLORER_NETWORK: $$cap_NBITCOIN_NETWORK
NBXPLORER_BIND: $$cap_BIND_ADDRESS:$$cap_NBXPLORER_PORT
NBXPLORER_TRIMEVENTS: $$cap_NBXPLORER_TRIMEVENTS
NBXPLORER_SIGNALFILESDIR: $$cap_NBXPLORER_SIGNALFILESDIR
NBXPLORER_POSTGRES: User ID=$$cap_POSTGRES_USER;Host=srv-captain--$$cap_appname-postgres;Port=$$cap_POSTGRES_PORT;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer$$cap_NBITCOIN_NETWORK
NBXPLORER_AUTOMIGRATE: $$cap_NBXPLORER_AUTOMIGRATE
NBXPLORER_NOMIGRATEEVTS: $$cap_NBXPLORER_NOMIGRATEEVTS
NBXPLORER_CHAINS: $$cap_USED_CHAIN
NBXPLORER_BTCRPCURL: http://srv-captain--$$cap_appname-bitcoind:$$cap_BITCOIN_RPC_PORT/
NBXPLORER_BTCNODEENDPOINT: srv-captain--$$cap_appname-bitcoind:$$cap_BITCOIN_NODE_PORT
depends_on:
- $$cap_appname-postgres
volumes:
- $$cap_appname-nbxplorer-data:/datadir
- $$cap_appname-bitcoind-data:/root/.bitcoin
$$cap_appname-bitcoind:
caproverExtra:
notExposeAsWebApp: 'true'
image: btcpayserver/bitcoin:$$cap_BITCOIN_VERSION
environment:
BITCOIN_NETWORK: $$cap_NBITCOIN_NETWORK
BITCOIN_WALLETDIR: $$cap_BITCOIN_WALLETDIR
BITCOIN_EXTRA_ARGS: |
rpcport=$$cap_BITCOIN_RPC_PORT
rpcbind=$$cap_BIND_ADDRESS:$$cap_BITCOIN_RPC_PORT
rpcallowip=$$cap_BIND_ADDRESS/$$cap_BITCOIN_IP_ALLOWLIST_CIDR
port=$$cap_BITCOIN_NODE_PORT
whitelist=$$cap_BIND_ADDRESS/$$cap_BITCOIN_IP_ALLOWLIST_CIDR
maxmempool=$$cap_BITCOIN_MAX_MEMPOOL
prune=$$cap_BITCOIN_PRUNE
$$cap_BITCOIN_ADDITIONAL_ARGUMENTS
volumes:
- $$cap_appname-bitcoind-wallet-data:/walletdata
- $$cap_appname-bitcoind-data:/data
$$cap_appname-lightning:
caproverExtra:
notExposeAsWebApp: 'true'
image: btcpayserver/lightning:$$cap_LIGHTNING_VERSION
environment:
LIGHTNINGD_NETWORK: $$cap_NBITCOIN_NETWORK
LIGHTNINGD_CHAIN: $$cap_USED_CHAIN
LIGHTNINGD_ALIAS: $$cap_LIGHTNINGD_ALIAS
LIGHTNINGD_ANNOUNCEADDR: $$cap_LIGHTNINGD_ANNOUNCEADDR
LIGHTNINGD_PORT: $$cap_LIGHTNINGD_PORT
LIGHTNINGD_READY_FILE: $$cap_LIGHTNINGD_READY_FILE
LIGHTNINGD_OPT: |
bitcoin-datadir=$$cap_LIGHTNINGD_BITCOIN_DATA_DIRECTORY
bitcoin-rpcconnect=srv-captain--$$cap_appname-bitcoind
experimental-offers
$$cap_LIGHTNINGD_ADDITIONAL_ARGUMENTS
ports:
- $$cap_LIGHTNINGD_PORT:$$cap_LIGHTNINGD_PORT
depends_on:
- $$cap_appname-bitcoind
volumes:
- $$cap_appname-lightning-data:/root/.lightning
- $$cap_appname-bitcoind-data:/etc/bitcoin
- $$cap_appname-nbxplorer-data:/root/.nbxplorer
$$cap_appname-lightning-spark:
caproverExtra:
notExposeAsWebApp: 'true'
image: shesek/spark-wallet:$$cap_LIGHTNING_SPARK_VERSION
environment:
NETWORK: $$cap_NBITCOIN_NETWORK
SPARK_OPT: $$cap_LIGHTNING_SPARK_OPTIONS
volumes:
- $$cap_appname-lightning-data:/etc/lightning
- $$cap_appname-lightning-spark:/data
depends_on:
- $$cap_appname-lightning
$$cap_appname-lightning-rest:
caproverExtra:
notExposeAsWebApp: 'true'
image: saubyk/c-lightning-rest:$$cap_LIGHTNING_REST_VERSION
environment:
PROTOCOL: $$cap_LIGHTNING_REST_PROTOCOL
NODE: srv-captain--$$cap_appname-lightning:$$cap_LIGHTNING_REST_LIGHTNINGD_PORT
LIGHTNINGD_READY_FILE: $$cap_LIGHTNINGD_READY_FILE
depends_on:
- $$cap_appname-lightning
volumes:
- $$cap_appname-lightning-data:/root/.lightning
- $$cap_appname-bitcoind-data:/etc/bitcoin
- $$cap_appname-lightning-rest-certificates:/usr/src/app/certs
- $$cap_appname-nbxplorer-data:/root/.nbxplorer
$$cap_appname-rtl:
caproverExtra:
notExposeAsWebApp: 'true'
image: shahanafarooqui/rtl:$$cap_RTL_VERSION
environment:
LN_IMPLEMENTATION: $$cap_RTL_LN_IMPLEMENTATION
CONFIG_PATH: $$cap_RTL_LIGHTNING_CONFIG_PATH
LN_SERVER_URL: http://srv-captain--$$cap_appname-lightning-rest:$$cap_RTL_LN_SERVER_URL_PORT/v1
MACAROON_PATH: $$cap_RTL_MACAROON_PATH
RTL_CONFIG_PATH: $$cap_RTL_CONFIG_PATH
BITCOIND_CONFIG_PATH: $$cap_RTL_BITCOIND_CONFIG_PATH
RTL_SSO: $$cap_RTL_SSO
RTL_COOKIE_PATH: $$cap_RTL_COOKIE_PATH
LOGOUT_REDIRECT_LINK: $$cap_RTL_LOGOUT_REDIRECT_LINK
volumes:
- $$cap_appname-lightning-data:/root/.lightning
- $$cap_appname-bitcoind-data:/etc/bitcoin
- $$cap_appname-lightning-rtl-data:/data
- $$cap_appname-lightning-rest-certificates:/etc/clightning_bitcoin_rest_certs
caproverOneClickApp:
instructions:
start: |-
BTCPay Server is a free, open-source & self-hosted bitcoin payment gateway.
It allows self-sovereign individuals and businesses to accept bitcoin payments online or in person without any fees.
This will deploy BTCPay Server with Bitcoin Full Node (with 50 GB pruning), Core Lightning Node, Spark Wallet and Ride The Lightning.
Please note that features like SSH access and Onion service have been omitted to keep deployment simple.
You may need to open the port `9735` in your firewall.
end: |-
BTCPay Server has been successfully deployed!
Please change the following settings before using the service:
1. Go to the settings for `$$cap_appname`
2. Enable **Websocket Support**
3. Enable **HTTPS**
4. Click on **Edit Default Nginx Configurations** and paste the following content before the last closing bracket "}":
```
location /rtl/ {
proxy_pass http://srv-captain--$$cap_appname-rtl:$$cap_RTL_PORT/rtl/;
}
location /spark/btc/ {
proxy_pass http://srv-captain--$$cap_appname-lightning-spark:$$cap_LIGHTNING_SPARK_PORT/;
}
location /clightning-rest/btc/ {
rewrite ^/clightning-rest/btc/(.*) /$1 break;
proxy_pass http://srv-captain--$$cap_appname-lightning-rest:$$cap_RTL_LN_SERVER_URL_PORT/;
}
```
Now you can access it at `https://$$cap_appname.$$cap_root_domain`
It will take some time to synchronize the Bitcoin full node.
You should also observe the app logs from time to time.
displayName: BTCPay Server
isOfficial: true
description: Free, open-source & self-hosted, Bitcoin payment processor.
documentation: https://docs.btcpayserver.org
variables:
- id: $$cap_BIND_ADDRESS
label: General | Bind Address
description: Address to bind the services.
defaultValue: '0.0.0.0'
validRegex: /.{1,}/
- id: $$cap_BTCPAYSERVER_VERSION
label: General | BTCPay Server Version
description: Check out their valid tags at https://hub.docker.com/r/btcpayserver/btcpayserver/tags
defaultValue: '1.6.11'
validRegex: /.{1,}/
- id: $$cap_POSTGRES_VERSION
label: General | PostgreSQL Version
description: Check out their valid tags at https://hub.docker.com/r/btcpayserver/postgres/tags
defaultValue: '13.7'
validRegex: /.{1,}/
- id: $$cap_NBXPLORER_VERSION
label: General | NBXplorer Version
description: Check out their valid tags at https://hub.docker.com/r/nicolasdorier/nbxplorer/tags
defaultValue: '2.3.38'
validRegex: /.{1,}/
- id: $$cap_BITCOIN_VERSION
label: General | Bitcoin Node Version
description: Check out their valid tags at https://hub.docker.com/r/btcpayserver/bitcoin/tags
defaultValue: '23.0'
validRegex: /.{1,}/
- id: $$cap_LIGHTNING_VERSION
label: General | Lightning Version
description: Check out their valid tags at https://hub.docker.com/r/btcpayserver/lightning/tags
defaultValue: v0.10.2
validRegex: /.{1,}/
- id: $$cap_LIGHTNING_SPARK_VERSION
label: General | Lightning Spark Version
description: Check out their valid tags at https://hub.docker.com/r/shesek/spark-wallet/tags
defaultValue: 0.3.1-standalone
validRegex: /.{1,}/
- id: $$cap_LIGHTNING_REST_VERSION
label: General | Lightning REST Version
description: Check out their valid tags at https://hub.docker.com/r/saubyk/c-lightning-rest/tags
defaultValue: '0.9.0'
validRegex: /.{1,}/
- id: $$cap_RTL_VERSION
label: General | Ride The Lightning Version
description: Check out their valid tags at https://hub.docker.com/r/shahanafarooqui/rtl/tags
defaultValue: '0.13.1'
validRegex: /.{1,}/
- id: $$cap_NBITCOIN_NETWORK
label: General | Network Type
description: The type of Bitcoin network to use (e.g. `mainnet`, `testnet`, or `regtest`)
defaultValue: mainnet
validRegex: /^(mainnet|testnet|regtest|simnet)$/
- id: $$cap_USED_CHAIN
label: Explorer | Chain
description: Blockchain to be used. Defaults is `btc` and should **not** be changed.
defaultValue: btc
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PORT
label: Database | Port
description: Port of the PostgreSQL database host.
defaultValue: 5432
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: Database | User
description: User of the PostgreSQL database.
defaultValue: postgres
validRegex: /.{1,}/
- id: $$cap_POSTGRES_HOST_AUTH_METHOD
label: Database | Authentication Method
description: Method of authentication for incoming connections in PostgreSQL.
defaultValue: trust
validRegex: /.{1,}/
- id: $$cap_BTCPAY_ROOTPATH
label: Application | Root Path
description: Root path of the application.
defaultValue: /
validRegex: /.{1,}/
- id: $$cap_BTCPAY_PORT
label: Application | Port
description: Port of the application host.
defaultValue: 49392
validRegex: /.{1,}/
- id: $$cap_BTCPAY_DEBUGLOG
label: Application | Debug Log
description: Log file for debugging information.
defaultValue: btcpay.log
validRegex: /.{1,}/
- id: $$cap_BTCPAY_UPDATEURL
label: Application | Update URL
description: URL to BTCPay Server releases.
defaultValue: https://api.github.com/repos/btcpayserver/btcpayserver/releases/latest
validRegex: /.{1,}/
- id: $$cap_NBXPLORER_PORT
label: Explorer | Port
description: Port of the NBXplorer host.
defaultValue: 32838
validRegex: /.{1,}/
- id: $$cap_NBXPLORER_TRIMEVENTS
label: Explorer | Trim Events
description: Trim the amount of events in NBXplorer.
defaultValue: 10000
validRegex: /.{1,}/
- id: $$cap_NBXPLORER_SIGNALFILESDIR
label: Explorer | Signal Files Directory
description: Path to signal files directory in NBXplorer.
defaultValue: /datadir
validRegex: /.{1,}/
- id: $$cap_NBXPLORER_AUTOMIGRATE
label: Explorer | Automatic Migrations
description: Whether to enable automatic migrations.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_NBXPLORER_NOMIGRATEEVTS
label: Explorer | Event Migrations
description: Whether to disable event migrations.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_BITCOIN_RPC_PORT
label: Bitcoin Node | RPC Port
description: Port of Bitcoin node RPC.
defaultValue: 43782
validRegex: /.{1,}/
- id: $$cap_BITCOIN_NODE_PORT
label: Bitcoin Node | Node Port
description: Port of Bitcoin node endpoint.
defaultValue: 39388
validRegex: /.{1,}/
- id: $$cap_BITCOIN_WALLETDIR
label: Bitcoin Node | Wallet Directory
description: Path to wallet files directory of the Bitcoin node.
defaultValue: /walletdata
validRegex: /.{1,}/
- id: $$cap_BITCOIN_MAX_MEMPOOL
label: Bitcoin Node | Maximum Mempool Size
description: Maximum Bitcoin node mempool size in megabytes.
defaultValue: 500
validRegex: /.{1,}/
- id: $$cap_BITCOIN_IP_ALLOWLIST_CIDR
label: Bitcoin Node | Allowlist Subnet
description: Whitelist IP subnet using CIDR notation for the Bitcoin node.
defaultValue: '0'
validRegex: /.{1,}/
- id: $$cap_BITCOIN_PRUNE
label: Bitcoin Node | Prune
description: |-
Configure a disk space on stored blocks of the Bitcoin node, denoted in megabytes.
Default is 50 gigabytes, this will keep around 6 months of blocks.
defaultValue: 50000
- id: $$cap_BITCOIN_ADDITIONAL_ARGUMENTS
label: Bitcoin Node | Additional Arguments
description: Additional Bitcoin node startup arguments.
- id: $$cap_LIGHTNINGD_ANNOUNCEADDR
label: Lightning Node | Announced Address
description: IP address of your server. E.g. `123.123.123.123`.
validRegex: /.{1,}/
- id: $$cap_LIGHTNINGD_ALIAS
label: Lightning Node | Alias
description: An alias for your Lightning node.
defaultValue: my-awesome-node-$$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_LIGHTNINGD_PORT
label: Lightning Node | Port
description: Port of your Lightning node host.
defaultValue: 9735
validRegex: /.{1,}/
- id: $$cap_LIGHTNINGD_READY_FILE
label: Lightning Node | Ready File
description: Path to Bitcoin node ready status indicator file in the Lightning node.
defaultValue: /root/.nbxplorer/btc_fully_synched
validRegex: /.{1,}/
- id: $$cap_LIGHTNINGD_BITCOIN_DATA_DIRECTORY
label: Lightning Node | Bitcoin Data Directory
description: Path to Bitcoin data directory in the Lightning node.
defaultValue: /etc/bitcoin
validRegex: /.{1,}/
- id: $$cap_LIGHTNINGD_ADDITIONAL_ARGUMENTS
label: Lightning Node | Additional Arguments
description: Additional Lightning node startup arguments.
- id: $$cap_LIGHTNING_SPARK_OPTIONS
label: Lightning Node | Spark | Lightning Network Files
description: Additional start up options for Lightning Spark.
defaultValue: --no-tls -C /data/.cookie
validRegex: /.{1,}/
- id: $$cap_LIGHTNING_SPARK_PORT
label: Lightning Node | Spark | Port
description: Port of Lightning Spark host.
defaultValue: 9737
validRegex: /.{1,}/
- id: $$cap_LIGHTNING_REST_PROTOCOL
label: Lightning Node | REST | Protocol
description: Which HTTP protocol to use in Lightning REST.
defaultValue: http
validRegex: /^(http|https)$/
- id: $$cap_LIGHTNING_REST_LIGHTNINGD_PORT
label: Lightning Node | Spark | Lightning REST API Port
description: REST API port of the Lightning node.
defaultValue: 9835
validRegex: /.{1,}/
- id: $$cap_RTL_LN_IMPLEMENTATION
label: Ride The Lightning | Lightning Implementation
description: Lightning implementation used for Ride The Lightning.
defaultValue: CLT
validRegex: /.{1,}/
- id: $$cap_RTL_LIGHTNING_CONFIG_PATH
label: Ride The Lightning | Lightning Configuration
description: Path to Lightning configuration for Ride The Lightning.
defaultValue: /root/.lightning/config
validRegex: /.{1,}/
- id: $$cap_RTL_LN_SERVER_URL_PORT
label: Ride The Lightning | Lightning REST Server Port
description: Port of the Lightning REST server for Ride The Lightning.
defaultValue: 3001
validRegex: /.{1,}/
- id: $$cap_RTL_MACAROON_PATH
label: Ride The Lightning | Macaroon Path
description: Path to the macaroon file for Ride The Lightning.
defaultValue: /etc/clightning_bitcoin_rest_certs
validRegex: /.{1,}/
- id: $$cap_RTL_CONFIG_PATH
label: Ride The Lightning | Configuration Path
description: Path to the configuration file for Ride The Lightning.
defaultValue: /data/
validRegex: /.{1,}/
- id: $$cap_RTL_BITCOIND_CONFIG_PATH
label: Ride The Lightning | Bitcoin Configuration Path
description: Path to the Bitcoin configuration file for Ride The Lightning.
defaultValue: /etc/bitcoin/bitcoin.conf
validRegex: /.{1,}/
- id: $$cap_RTL_SSO
label: Ride The Lightning | Single-Sign-On
description: Whether to use Single-Sign-On for Ride The Lightning.
defaultValue: 1
validRegex: /.{1,}/
- id: $$cap_RTL_COOKIE_PATH
label: Ride The Lightning | Cookie Path
description: Path to the cookie file for Ride The Lightning.
defaultValue: /data/.cookie
validRegex: /.{1,}/
- id: $$cap_RTL_LOGOUT_REDIRECT_LINK
label: Ride The Lightning | Log-Out Redirect Link
description: Log-Out redirect link for Ride The Lightning.
defaultValue: /server/services
validRegex: /.{1,}/
- id: $$cap_RTL_PORT
label: Ride The Lightning | Port
description: Port of Ride The Lightning host.
defaultValue: 3000
validRegex: /.{1,}/

View File

@ -1,87 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: budibase/budibase:$$cap_BUDIBASE_VERSION
environment:
ENABLE_ANALYTICS: $$cap_BUDIBASE_ENABLE_ANALYTICS
JWT_SECRET: $$cap_BUDIBASE_JWT_SECRET
MINIO_ACCESS_KEY: $$cap_MINIO_ACCESS_KEY
MINIO_SECRET_KEY: $$cap_MINIO_SECRET_KEY
REDIS_PASSWORD: $$cap_REDIS_PASSWORD
COUCHDB_USER: $$cap_COUCH_DB_USER
COUCHDB_PASSWORD: $$cap_COUCH_DB_PASSWORD
INTERNAL_API_KEY: $$cap_BUDIBASE_INTERNAL_API_KEY
BB_ADMIN_USER_EMAIL: $$cap_BUDIBASE_ADMIN_USER_EMAIL
BB_ADMIN_USER_PASSWORD: $$cap_BUDIBASE_ADMIN_USER_PASSWORD
SENTRY_DSN: $$cap_BUDIBASE_SENTRY_DSN
volumes:
- $$cap_appname:/data
caproverOneClickApp:
displayName: Budibase
description: Low code platform for creating internal apps, workflows, and admin panels in minutes
documentation: https://docs.budibase.com
isOfficial: true
instructions:
start: Build apps, forms, and workflows that perfectly fit your business - so you can move forward, faster.
end: |-
Budibase has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain`.
Administrator user is `$$cap_BUDIBASE_ADMIN_USER_EMAIL` with password `$$cap_BUDIBASE_ADMIN_USER_PASSWORD`.
variables:
- id: $$cap_BUDIBASE_VERSION
label: Application | Version
description: Budibase version. Check out their valid tags at https://hub.docker.com/r/budibase/budibase/tags
defaultValue: v2.0.31
validRegex: /.{1,}/
- id: $$cap_BUDIBASE_ADMIN_USER_EMAIL
label: Application | Admin User Mail
description: Administrator mail address.
validRegex: /.{1,}/
- id: $$cap_BUDIBASE_ADMIN_USER_PASSWORD
label: Application | Admin User Password
description: Administrator password.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/
- id: $$cap_BUDIBASE_ENABLE_ANALYTICS
label: Application | Enable Analytics
description: Whether to send telemetry data.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_BUDIBASE_JWT_SECRET
label: Application | JWT Secret
description: Secret for JWT.
defaultValue: $$cap_gen_random_hex(64)
validRegex: /.{1,}/
- id: $$cap_BUDIBASE_INTERNAL_API_KEY
label: Application | Internal API Key
description: Key for the internal API.
defaultValue: $$cap_gen_random_hex(64)
validRegex: /.{1,}/
- id: $$cap_BUDIBASE_SENTRY_DSN
label: Application | Sentry DSN
description: Optional Sentry DSN for error tracking.
- id: $$cap_REDIS_PASSWORD
label: Queue | Password
description: Password for Redis.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/
- id: $$cap_MINIO_ACCESS_KEY
label: Storage | Access Key
description: Access key for Minio.
defaultValue: $$cap_gen_random_hex(64)
validRegex: /.{1,}/
- id: $$cap_MINIO_SECRET_KEY
label: Storage | Secret Key
description: Secret key for Minio.
defaultValue: $$cap_gen_random_hex(64)
validRegex: /.{1,}/
- id: $$cap_COUCH_DB_USER
label: Database | User
description: User for CouchDB.
defaultValue: budibase
validRegex: /.{1,}/
- id: $$cap_COUCH_DB_PASSWORD
label: Database | Password
description: Password for CouchDB.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/

View File

@ -1,54 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgres:
image: postgres:12-alpine
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: $$cap_DB_PASS
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
image: cachethq/docker:$$cap_cachet_version
environment:
DB_DRIVER: pgsql
DB_HOST: srv-captain--$$cap_appname-postgres
DB_PORT: 5432
DB_DATABASE: postgres
DB_USERNAME: postgres
DB_PASSWORD: $$cap_DB_PASS
DB_PREFIX: chq_
APP_KEY: $$cap_gen_random_hex(32)
APP_LOG: errorlog
APP_ENV: production
APP_DEBUG: false
DEBUG: false
restart: always
caproverExtra:
containerHttpPort: '8000'
caproverOneClickApp:
variables:
- label: Database Password
description: Password to connect to the database
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_DB_PASS
- id: $$cap_cachet_version
label: Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/cachethq/docker/tags
defaultValue: '2.3.15'
instructions:
start: |-
📛 An open source status page system for everyone.
GitHub: https://github.com/CachetHQ/Cachet
end: |-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
If you need help with installation check out the docs! https://docs.cachethq.io/docs
displayName: Cachet
isOfficial: true
description: An open source status page system for everyone.
documentation: https://docs.cachethq.io/docs

View File

@ -1,104 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: 3000
image: calcom/cal.com:$$cap_CALCOM_VERSION
environment:
NEXT_PUBLIC_WEBAPP_URL: http://$$cap_appname.$$cap_root_domain
NEXTAUTH_SECRET: $$cap_CALCOM_NEXTAUTH_SECRET
CALENDSO_ENCRYPTION_KEY: $$cap_CALCOM_CALENDSO_ENCRYPTION_KEY
CALCOM_TELEMETRY_DISABLED: $$cap_CALCOM_TELEMETRY_DISABLED
NODE_TLS_REJECT_UNAUTHORIZED: $$cap_CALCOM_NODE_TLS_REJECT_UNAUTHORIZED
DATABASE_URL: postgresql://$$cap_POSTGRES_USER:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-db/$$cap_POSTGRES_DATABASE
EMAIL_FROM: $$cap_CALCOM_EMAIL_FROM
EMAIL_SERVER_HOST: $$cap_CALCOM_EMAIL_SERVER_HOST
EMAIL_SERVER_PORT: $$cap_CALCOM_EMAIL_SERVER_PORT
EMAIL_SERVER_USER: $$cap_CALCOM_EMAIL_SERVER_USER
EMAIL_SERVER_PASSWORD: $$cap_CALCOM_EMAIL_SERVER_PASSWORD
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_DB: $$cap_POSTGRES_DATABASE
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
volumes:
- $$cap_appname-db:/var/lib/postgresql/data
caproverOneClickApp:
instructions:
start: |-
The open source Calendly alternative.
You are in charge of your own data, workflow and appearance.
White-label by design.
API-driven and ready to be deployed on your own domain.
Full control of your events and data.
end: |-
Cal.com has been successfully deployed! It might take few moments before it's fully started.
You can access the application at `http://$$cap_appname.$$cap_root_domain`.
If you enabled HTTPS, you should adjust the `NEXT_PUBLIC_WEBAPP_URL` environment variable accordingly.
displayName: Cal.com
isOfficial: true
description: Scheduling Infrastructure For Everyone
documentation: https://cal.com/docs
variables:
- id: $$cap_CALCOM_VERSION
label: Application | Version
description: Cal.com version. Check out their valid tags at https://hub.docker.com/r/calcom/cal.com/tags
defaultValue: 'v3.1.3'
validRegex: /.{1,}/
- id: $$cap_CALCOM_NEXTAUTH_SECRET
label: Application | Cookie Secret
description: Cookie Encryption Key
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_CALCOM_CALENDSO_ENCRYPTION_KEY
label: Application | Authentication Secret
description: Authentication Encryption Key
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_CALCOM_TELEMETRY_DISABLED
label: Application | Usage Data Collection
description: Allow cal.com to collect anonymous usage data. Set to `1` to disable
defaultValue: '1'
- id: $$cap_CALCOM_NODE_TLS_REJECT_UNAUTHORIZED
label: Application | Reject Unauthorized Requests
description: Whether to reject unauthorized requests. Set to `0` if running behind a load balancer or reverse proxy
defaultValue: '0'
- id: $$cap_CALCOM_EMAIL_FROM
label: Email | From
description: Sender email address. Optional
- id: $$cap_CALCOM_EMAIL_SERVER_HOST
label: Email | Host
description: SMTP Host. Optional
- id: $$cap_CALCOM_EMAIL_SERVER_PORT
label: Email | Port
description: SMTP Port. Optional
- id: $$cap_CALCOM_EMAIL_SERVER_USER
label: Email | User
description: SMTP User. Optional
- id: $$cap_CALCOM_EMAIL_SERVER_PASSWORD
label: Email | Password
description: SMTP Password. Optional
- id: $$cap_POSTGRES_VERSION
label: Database | Version
description: PostgreSQL version. Check out their valid tags at https://hub.docker.com/_/postgres/tags
defaultValue: '15.0-alpine'
validRegex: /.{1,}/
- id: $$cap_POSTGRES_DATABASE
label: Database | Name
description: Name of the PostgreSQL database
defaultValue: calcom
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: Database | User Name
description: Name of the PostgreSQL user
defaultValue: calcom
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PASSWORD
label: Database | User Password
description: Password of the PostgreSQL user
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/

View File

@ -1,38 +0,0 @@
captainVersion: 4
services:
# Calibre-web
$$cap_appname:
image: lscr.io/linuxserver/calibre-web:$$cap_app_version
restart: always
environment:
APP_URL: http://$$cap_appname.$$cap_root_domain
TZ: $$cap_timezone
volumes:
- $$cap_appname-config:/config
- $$cap_appname-books:/books
caproverExtra:
containerHttpPort: '8083'
caproverOneClickApp:
variables:
- id: $$cap_app_version
label: Calibre-web
defaultValue: '2021.10.24'
description: Check out their docker page for the valid tags https://hub.docker.com/r/linuxserver/calibre-web/tags
- id: $$cap_timezone
label: Timezone
defaultValue: 'Europe/London'
description: 'See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for list of timezones.'
instructions:
start: >-
Calibre-web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database. It is also possible to integrate google drive and edit metadata and your calibre library through the app itself.
end: >-
Done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
Default admin login: Username: admin Password: admin123
displayName: 'Calibre Web'
isOfficial: true
description: Calibre-web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
documentation: https://github.com/janeczku/calibre-web

View File

@ -1,80 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: calcom/cal.com:$$cap_version
restart: always
environment:
NODE_ENV: production
NEXT_PUBLIC_WEBAPP_URL: http://$$cap_appname.$$cap_root_domain
NEXTAUTH_SECRET: $$cap_secret_key_base
CALENDSO_ENCRYPTION_KEY: $$cap_calendso_encryption_key
POSTGRES_USER: $$cap_postgres_user
POSTGRES_PASSWORD: $$cap_postgres_password
POSTGRES_DB: $$cap_postgres_db
DATABASE_HOST: $$cap_postgres_host
DATABASE_URL: postgresql://$$cap_postgres_user:$$cap_postgres_password@$$cap_postgres_host/$$cap_postgres_db
GOOGLE_API_CREDENTIALS: '{}'
EMAIL_FROM: $$cap_email_from
EMAIL_SERVER_HOST: $$cap_email_host
EMAIL_SERVER_PORT: $$cap_email_server_password
EMAIL_SERVER_USER: $$cap_email_server_user
EMAIL_SERVER_PASSWORD: $$cap_email_server_password
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_version
label: Cal.com Version
defaultValue: 'v2.5.4'
description: Check out their docker page for the valid tags https://hub.docker.com/r/calcom/cal.com/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_secret_key_base
label: Secret Key Base
description: The randomized string which is used to verify the integrity of signed cookies. Use `openssl rand -base64 32` to generate a key
defaultValue: secret
- id: $$cap_calendso_encryption_key
label: Secret Key Base
description: Encryption key that will be used to encrypt CalDAV credentials, choose a random string, for example with `dd if=/dev/urandom bs=1K count=1 | md5sum`
defaultValue: secret
- id: $$cap_postgres_user
label: Postgres user
defaultValue: user
- id: $$cap_postgres_password
label: Postgres password
defaultValue: password
- id: $$cap_postgres_db
label: Postgres db
defaultValue: calendso
- id: $$cap_postgres_host
label: Postgres host
defaultValue: database:5432
- id: $$cap_email_from
label: Emails from
defaultValue: notifications@example.com
- id: $$cap_email_host
label: Emails server host
defaultValue: smtp.example.com
- id: $$cap_email_port
label: Emails server port
defaultValue: '587'
- id: $$cap_email_server_user
label: Emails server user
defaultValue: email_user
- id: $$cap_email_server_password
label: Emails server password
defaultValue: email_password
instructions:
start: >-
The open-source Calendly alternative.
end: >-
Aaaand you're Cal.com is now successfully deployed! 😄
Please change the following settings before using the service:
1. Go to the settings for `$$cap_appname`
2. Enable **Websocket Support**
Remember that this app will not create a Database by itself. You need to provide all that information.
displayName: 'Cal.com - No Database'
isOfficial: true
description: 'The open-source Calendly alternative.'
documentation: 'Read more at: https://github.com/calcom/cal.com'

View File

@ -1,32 +0,0 @@
captainVersion: 4
version: 3.3
services:
'$$cap_appname':
image: ghcr.io/premoweb/chadburn:$$cap_version
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
TZ: '$$cap_tz'
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: Chadburn version
defaultValue: '1.0.1'
description: See https://github.com/PremoWeb/Chadburn/releases for a list of versions and changelog details.
validRegex: "/^([^\\s^\\/])+$/"
- id: '$$cap_tz'
label: Time Zone
defaultValue: America/Los_Angeles
description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: '/.{1,}/'
instructions:
start: |-
Chadburn is a modern and low footprint job scheduler for docker environments, written in Go. Chadburn aims to be a replacement for the old fashioned cron.
end: |-
Chadburn has been successfully deployed! Please visit https://github.com/PremoWeb/Chadburn for more information on usage.
displayName: Chadburn
isOfficial: true
description: Chadburn is a modern and low footprint job scheduler for docker environments, built on Go. Chadburn is a suitable replacement for the old fashioned cron in Docker environments.
documentation: See https://github.com/Premoweb/Chadburn for official documentation and how it's used within Caprover.

View File

@ -1,30 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: dgtlmoon/changedetection.io:$$cap_version
environment:
BASE_URL: http://$$cap_appname.$$cap_root_domain
volumes:
- '$$cap_appname-data:/datastore'
caproverExtra:
containerHttpPort: '5000'
caproverOneClickApp:
variables:
- id: $$cap_version
label: ChangeDetection.io version
defaultValue: 0.40.2
description: 'Check out their docker page for the valid tags https://hub.docker.com/r/dgtlmoon/changedetection.io/tags'
instructions:
start: >-
Self-hosted website change detection monitoring.
For more info visit https://github.com/dgtlmoon/changedetection.io
end: |-
ChangeDetection.io has been successfully deployed!
App is available as http://$$cap_appname.$$cap_root_domain.
Don't forget to use Caprover's HTTP Basic Auth to protect your app.
displayName: ChangeDetection.io
isOfficial: false
description: >-
ChangeDetection.io is the self-hosted website change detection monitoring.
documentation: >-
This docker-compose is taken from https://github.com/dgtlmoon/changedetection.io

View File

@ -1,158 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgres:
image: postgres:12
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
restart: always
environment:
POSTGRES_USER: chaskiq
POSTGRES_PASSWORD: $$cap_chaskiq_postgres_password
POSTGRES_DB: chaskiq
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-redis:
volumes:
- $$cap_appname-redis-data:/data
restart: always
environment:
REDIS_PASSWORD: $$cap_chaskiq_redis_password
caproverExtra:
dockerfileLines:
- FROM redis:alpine
- CMD exec redis-server --requirepass "$$cap_chaskiq_redis_password"
notExposeAsWebApp: 'true'
$$cap_appname-web:
restart: always
environment:
HOST: https://$$cap_appname-web.$$cap_root_domain
WS: wss://$$cap_appname-web.$$cap_root_domain/cable
RAILS_ENV: production
RAILS_LOG_TO_STDOUT: 'true'
RAILS_SERVE_STATIC_FILES: 'true'
SECRET_KEY_BASE: $$cap_chaskiq_secret_key_base
ADMIN_EMAIL: $$cap_ADMIN_USER_EMAIL
ADMIN_PASSWORD: $$cap_ADMIN_PASSWORD
DATABASE_URL: postgres://chaskiq:$$cap_chaskiq_postgres_password@srv-captain--$$cap_appname-postgres:5432/chaskiq
REDIS_URL: redis://default:$$cap_chaskiq_redis_password@srv-captain--$$cap_appname-redis:6379
AWS_ACCESS_KEY_ID: $$cap_chaskiq_aws_key_id
AWS_SECRET_ACCESS_KEY: $$cap_chaskiq_aws_access_key
AWS_S3_BUCKET: $$cap_chaskiq_aws_s3_bucket
AWS_S3_REGION: $$cap_chaskiq_aws_s3_region
GEOCODER_API_KEY: $$cap_chaskiq_geocoder_api_key
DEFAULT_GEOCODER_SERVICE: $$cap_chaskiq_geocoder_service
SCOUT_KEY: $$cap_chaskiq_scoutapp_key
DEFAULT_OUTGOING_EMAIL_DOMAIN: $$cap_chaskiq_default_ongoing_domain
DEFAULT_SENDER_EMAIL: $$cap_chaskiq_default_sender_email
caproverExtra:
containerHttpPort: '3000'
dockerfileLines:
- FROM chaskiq/chaskiq:$$cap_chaskiq_version
- EXPOSE 3000
- CMD bundle exec rails db:setup; bundle exec rails admin_generator; bundle exec rails s -b 0.0.0.0 -p 3000
$$cap_appname-worker:
restart: always
environment:
HOST: https://$$cap_appname.$$cap_root_domain
WS: wss://$$cap_appname.$$cap_root_domain/cable
RAILS_ENV: production
RAILS_LOG_TO_STDOUT: 'true'
SECRET_KEY_BASE: $$cap_chaskiq_secret_key_base
ADMIN_EMAIL: $$cap_ADMIN_USER_EMAIL
ADMIN_PASSWORD: $$cap_ADMIN_PASSWORD
DATABASE_URL: postgres://chaskiq:$$cap_chaskiq_postgres_password@srv-captain--$$cap_appname-postgres:5432/chaskiq
REDIS_URL: redis://default:$$cap_chaskiq_redis_password@srv-captain--$$cap_appname-redis:6379
AWS_ACCESS_KEY_ID: $$cap_chaskiq_aws_key_id
AWS_SECRET_ACCESS_KEY: $$cap_chaskiq_aws_access_key
AWS_S3_BUCKET: $$cap_chaskiq_aws_s3_bucket
AWS_S3_REGION: $$cap_chaskiq_aws_s3_region
GEOCODER_API_KEY: $$cap_chaskiq_geocoder_api_key
DEFAULT_GEOCODER_SERVICE: $$cap_chaskiq_geocoder_service
SCOUT_KEY: $$cap_chaskiq_scoutapp_key
DEFAULT_OUTGOING_EMAIL_DOMAIN: $$cap_chaskiq_default_ongoing_domain
DEFAULT_SENDER_EMAIL: $$cap_chaskiq_default_sender_email
caproverExtra:
dockerfileLines:
- FROM chaskiq/chaskiq:$$cap_chaskiq_version
- CMD bundle exec sidekiq -C config/sidekiq.yml
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_chaskiq_version
label: Chaskiq Version Tag
description: You can use latest tag or check version builds on https://hub.docker.com/r/chaskiq/chaskiq/tags
defaultValue: 9009088
- defaultValue: 'admin@example.com'
description: This is the admin email. Please change it.
id: $$cap_ADMIN_USER_EMAIL
label: Admin Email
validRegex: /^([^\s^\/])+$/
- id: $$cap_ADMIN_PASSWORD
description: This is the admin password. Change it if you will.
defaultValue: $$cap_gen_random_hex(12)
label: Admin Password
validRegex: /^[^\@]{12,}$/
- id: $$cap_chaskiq_default_sender_email
label: Default sender email
description: 'Default email sender, like: notifications@mail.yourapp.com'
validRegex: /^([^\s^\/])+$/
- id: $$cap_chaskiq_default_ongoing_domain
label: Default deliver domain
description: For multiple email deliver tasks, like mail.yourdomain.com
- id: $$cap_chaskiq_secret_key_base
defaultValue: $$cap_gen_random_hex(64)
label: Chaskiq Secret Key Base
description: The randomized string which is used to verify the integrity of signed cookies. Please use a string with more than 26 characters
validRegex: /^[^\@]{26,}$/
- id: $$cap_chaskiq_postgres_password
defaultValue: $$cap_gen_random_hex(12)
label: Postgres Password
description: Password must be at least 12 characters. Please use a random string.
validRegex: /^[^\@]{12,}$/
- id: $$cap_chaskiq_redis_password
defaultValue: $$cap_gen_random_hex(12)
label: Redis Password
description: Password must be at least 12 characters. Please use a random string.
validRegex: /^[^\@]{12,}$/
- id: $$cap_chaskiq_aws_key_id
label: AWS access key id
description: Amazon access key id (for file storage and email dispatching S3 / SES / SNS)
- id: $$cap_chaskiq_aws_access_key
label: AWS access key
description: Amazon access key (for file storage and email dispatching S3 / SES / SNS)
- id: $$cap_chaskiq_aws_s3_bucket
label: AWS S3 bucket
description: Amazon S3 bucket name
- id: $$cap_chaskiq_aws_s3_region
label: AWS bucket region
description: 'AWS S3 bucket region like: us-east-1'
- id: $$cap_chaskiq_aws_sns_configuration_set
label: SNS configuration set
description: This is important for chaskiq to receive emails (optional)
- id: $$cap_chaskiq_scoutapp_key
label: Scout app key
description: Scout AMP key, for performance & error monitoring (optional)
- id: $$cap_chaskiq_bugsnag_key
label: Bugsnag API key
description: Bugsnag API key for error reporting (optional)
- id: $$cap_chaskiq_geocoder_service
defaultValue: maxmind_local
label: Geocoder service name, like (maxmind, ip_info, baidu, yandex)
description: The complete list of services can be found at https://github.com/alexreisner/geocoder/tree/master/lib/geocoder/lookups
- id: $$cap_chaskiq_geocoder_api_key
label: Geocoder API key
description: leave this empty if maxmind_local service is set
instructions:
start: A full featured Live Chat, Support & Marketing platform https://chaskiq.io
end: >-
Your Chaskiq instance is now successfully deployed.
The admin account was created, just log in with those credentials.
The app will need to be served over SSL, activate HTTPS on the domain and websocket support.
displayName: Chaskiq
isOfficial: true
description: A full-featured Live Chat, Support & Marketing platform
documentation: 'Read more at: https://dev.chaskiq.io'

View File

@ -1,47 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: douglara/chatwoot-botpress-bridge:$$cap_version
restart: always
environment:
RAILS_ENV: production
CHATWOOT_ENDPOINT: $$cap_chatwoot_endpoint
CHATWOOT_BOT_TOKEN: $$cap_chatwoot_bot_token
BOTPRESS_ENDPOINT: $$cap_botpress_endpoint
BOTPRESS_BOT_ID: $$cap_botpress_bot_id
SECRET_KEY_BASE: $$cap_secret_key_base
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_version
label: Chatwoot Botpress Bridge Version
defaultValue: '1'
description: Check out their docker page for the valid tags https://hub.docker.com/r/douglara/chatwoot-botpress-bridge/tags
- id: $$cap_secret_key_base
label: Secret Key Base
description: The randomized string which is used to verify the integrity of signed cookies. Use `openssl rand -hex 64` to generate a key
validRegex: /.{1,}/
- id: $$cap_chatwoot_endpoint
label: Chatwoot endpoint
description: 'Chawoot url example: https://app.chatwoot.com'
- id: $$cap_chatwoot_bot_token
label: Chatwoot Bot Token
description: 'To generate token follow instructions: https://github.com/douglara/chatwoot-botpress-bridge'
- id: $$cap_botpress_endpoint
label: Botpress endpoint
description: 'Botpress url example: https://app.botpress.com'
- id: $$cap_botpress_bot_id
label: Botpress Bot ID
description: 'ID for bot you have created in botpress'
instructions:
start: >-
Bridge to connect chatwoot and botpress.
end: >-
Aaaand you're Bridge is now successfully deployed! 😄
Get all instructions to use in https://github.com/douglara/chatwoot-botpress-bridge
displayName: 'Chatwoot Botpress Bridge'
isOfficial: false
description: 'Bridge to connect chatwoot and botpress.'
documentation: 'Read more at: https://github.com/douglara/chatwoot-botpress-bridge'

View File

@ -1,94 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgres:
image: postgres:15
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
restart: always
environment:
POSTGRES_USER: chatwoot
POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password
POSTGRES_DB: chatwoot
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-redis:
volumes:
- $$cap_appname-redis-data:/data
restart: always
environment:
REDIS_PASSWORD: $$cap_chatwoot_redis_password
caproverExtra:
dockerfileLines:
- FROM redis:alpine
- CMD exec redis-server --requirepass "$$cap_chatwoot_redis_password"
notExposeAsWebApp: 'true'
$$cap_appname-web:
restart: always
environment:
RAILS_ENV: production
RAILS_LOG_TO_STDOUT: 'true'
SECRET_KEY_BASE: $$cap_chatwoot_secret_key_base
POSTGRES_HOST: srv-captain--$$cap_appname-postgres
POSTGRES_DATABASE: chatwoot
POSTGRES_USERNAME: chatwoot
POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password
REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379
REDIS_PASSWORD: $$cap_chatwoot_redis_password
INSTALLATION_ENV: caprover
caproverExtra:
containerHttpPort: '3000'
dockerfileLines:
- FROM chatwoot/chatwoot:$$cap_chatwoot_version
- RUN chmod +x docker/entrypoints/rails.sh
- ENTRYPOINT ["docker/entrypoints/rails.sh"]
- EXPOSE 3000
- CMD bundle exec rails db:chatwoot_prepare; bundle exec rails s -b 0.0.0.0 -p 3000
$$cap_appname-worker:
restart: always
environment:
RAILS_ENV: production
RAILS_LOG_TO_STDOUT: 'true'
FRONTEND_URL: http://$$cap_appname.$$cap_root_domain
SECRET_KEY_BASE: $$cap_chatwoot_secret_key_base
POSTGRES_HOST: srv-captain--$$cap_appname-postgres
POSTGRES_DATABASE: chatwoot
POSTGRES_USERNAME: chatwoot
POSTGRES_PASSWORD: $$cap_chatwoot_postgres_password
REDIS_URL: redis://srv-captain--$$cap_appname-redis:6379
REDIS_PASSWORD: $$cap_chatwoot_redis_password
INSTALLATION_ENV: caprover
caproverExtra:
dockerfileLines:
- FROM chatwoot/chatwoot:$$cap_chatwoot_version
- RUN chmod +x docker/entrypoints/rails.sh
- ENTRYPOINT ["docker/entrypoints/rails.sh"]
- CMD bundle exec sidekiq -C config/sidekiq.yml
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_chatwoot_version
label: Chatwoot Version Tag
description: Choose the latest version from https://hub.docker.com/r/chatwoot/chatwoot/tags
defaultValue: v3.1.1
- id: $$cap_chatwoot_secret_key_base
label: Chatwoot Secret Key Base
description: The randomized string which is used to verify the integrity of signed cookies. Please use a string with more than 26 characters
validRegex: /^[^\@]{26,}$/
- id: $$cap_chatwoot_postgres_password
label: Postgres Password
description: Password must be at least 12 characters. Please use a random string.
validRegex: /^[^\@]{12,}$/
- id: $$cap_chatwoot_redis_password
label: Redis Password
description: Password must be at least 12 characters. Please use a random string.
validRegex: /^[^\@]{12,}$/
instructions:
start: Open-source customer support SaaS alternative to Intercom, Drift, Crisp.
end: >-
Your Chatwoot instance is now successfully deployed.
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
isOfficial: true
description: Open-source customer support SaaS alternative to Intercom, Drift, Crisp
documentation: 'Read more at: https://www.chatwoot.com/docs'

View File

@ -1,30 +0,0 @@
captainVersion: 4
services:
'$$cap_appname':
image: checkmk/check-mk-raw:$$cap_version
volumes:
- '$$cap_appname-data:/omd/sites'
- /etc/localtime:/etc/localtime
ports:
- 8000:8000
caproverExtra:
containerHttpPort: '5000'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: CheckMK Version
defaultValue: '2023.04.07'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/checkmk/check-mk-raw/tags
validRegex: "/^([^\\s^\\/])+$/"
instructions:
start: |-
Checkmk is a leading IT monitoring software. Easy configuration, scalable, flexible.
Open source and enterprise. Ready to go in minutes.
More details: https://checkmk.com/
end: |-
!!IMPORTEND!! Your username is 'cmkadmin' and your password is generated during the container initialization and is written in the logs.
CheckMK has been successfully deployed!
displayName: CheckMK RAW
isOfficial: true
description: Quickly gain a complete view of your IT infrastructure, no matter how complex. Checkmk provides powerful monitoring of networks, servers, clouds, containers and applications. Fast. Effective.
documentation: See https://docs.checkmk.com/latest/

View File

@ -1,76 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
depends_on:
- $$cap_appname-mariadb
image: nmtan/chevereto:$$cap_chevereto_version
restart: 'always'
environment:
TZ: $$cap_tz
PUID: $$cap_puid
PGID: $$cap_guid
CHEVERETO_DB_HOST: srv-captain--$$cap_appname-mariadb
CHEVERETO_DB_USERNAME: $$cap_mariadb-user
CHEVERETO_DB_PASSWORD: $$cap_mariadb-pass
CHEVERETO_DB_NAME: $$cap_mariadb-db
volumes:
- $$cap_appname-images:/var/www/html/images
# MariaDB
$$cap_appname-mariadb:
image: mariadb:$$cap_mariadb_version
environment:
MYSQL_RANDOM_ROOT_PASSWORD: '1'
MYSQL_DATABASE: $$cap_mariadb-db
MYSQL_USER: $$cap_mariadb-user
MYSQL_PASSWORD: $$cap_mariadb-pass
volumes:
- $$cap_appname-mariadb-data:/var/lib/mysql
restart: unless-stopped
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_tz
label: Timezone
description: This is the timezone for the application, find yours at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: Europe/Brussels
- id: $$cap_chevereto_version
label: Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/nmtan/chevereto/tags
defaultValue: 'installer'
- id: $$cap_puid
label: User ID
defaultValue: '1000'
description: User ID that the process uses, run (id $user) in your instance to see the id
validRegex: /.{1,}/
- id: $$cap_guid
label: Group ID
defaultValue: '1000'
description: Group ID that the process uses, run (id $user) in your instance to see the id
validRegex: /.{1,}/
- id: $$cap_mariadb_version
label: MariaDB Version
defaultValue: '10.5.6'
description: Check out their docker page for the valid tags https://hub.docker.com/r/library/mariadb/tags/
validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb-db
label: MariaDB Database
description: Database name for Chevereto
defaultValue: 'chevereto'
- id: $$cap_mariadb-user
label: MariaDB User
description: Database User for Chevereto
defaultValue: 'chevereto'
- id: $$cap_mariadb-pass
label: MariaDB database user password
description: Super secret database user password
instructions:
start: |-
Chevereto is a powerful and fast image hosting script that allows you to create your very own full featured image hosting website in just minutes.
end: |-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
displayName: Chevereto
isOfficial: false
description: Chevereto is a powerful and fast image hosting script that allows you to create your very own full featured image hosting website in just minutes.
documentation: https://github.com/tanmng/docker-chevereto

View File

@ -1,52 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgres:
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_USER: claper
POSTGRES_PASSWORD: $$cap_postgres_passwd
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
image: ghcr.io/claperco/claper:$$cap_claper_ver
container_name: claper
volumes:
- $$cap_appname-uploads:/app/priv/static/uploads
environment:
DATABASE_URL: postgres://claper:$$cap_postgres_passwd@srv-captain--$$cap_appname-postgres:5432/claper
MAIL_TRANSPORT: local
ENDPOINT_HOST: $$cap_appname.$$cap_root_domain
ENDPOINT_PORT: 443
SECRET_KEY_BASE: $$cap_gen_random_hex(64)
caproverExtra:
containerHttpPort: '4000'
caproverOneClickApp:
variables:
- id: $$cap_postgres_passwd
label: Postgres User Password
description: User password for the database instance.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /^(?=.*\d).{10,}$/
- id: $$cap_claper_ver
label: Claper Version
description: Check out their page for the valid tags https://github.com/ClaperCo/Claper/pkgs/container/claper
defaultValue: 1.4.0
validRegex: /.+/
- id: $$cap_POSTGRES_VERSION
label: Postgres Version
description: Version of PostgreSQL. Check out their Docker page for the valid tags https://hub.docker.com/_/postgres/tags
defaultValue: 15-alpine
instructions:
start: |-
Claper turns your presentations into an interactive, engaging and exciting experience.
end: |-
Please enable websocket and HTTPS after the installation.
displayName: Claper
isOfficial: true
description: Claper turns your presentations into an interactive, engaging and exciting experience.
documentation: For more information, check https://claper.co/

View File

@ -1,93 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: oznu/cloudflare-ddns:latest
environment:
API_KEY: $$cap_api_key
ZONE: $$cap_zone
SUBDOMAIN: $$cap_subdomain
PROXIED: $$cap_proxied
RRTYPE: $$cap_rrtype
DNS_SERVER: $$cap_dns_server
CRON: $$cap_cron
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_api_key
label: Cloudflare API token
defaultValue: ''
description: Your CloudFlare scoped API token. See the Creating a Cloudflare API token upward.
validRegex: /.{1,}/
- id: $$cap_zone
label: DNS zone
defaultValue: $$cap_root_domain
description: The DNS zone that DDNS updates should be applied to. Defaults to your CapRover root domain.
validRegex: /.{1,}/
- id: $$cap_subdomain
label: Zone's subdomain
defaultValue: '*'
description: A subdomain of the ZONE to write DNS changes to. If this is not supplied the root zone will be used. Defaults to your CapRover apps subdomains.
- id: $$cap_proxied
label: Proxied?
defaultValue: 'false'
description: If you are using free ClourFlare tier, leave as false. Set to true to make traffic go through the CloudFlare CDN.
validRegex: /.{1,}/
- id: $$cap_rrtype
label: Resource record type
defaultValue: 'A'
description: Set to AAAA to use set IPv6 records instead of IPv4 records. Defaults to A for IPv4 records.
validRegex: /.{1,}/
- id: $$cap_dns_server
label: DNS server
defaultValue: '1.1.1.1'
description: Set to the IP address of the DNS server you would like to use. Defaults to 1.1.1.1 (CloudFlare DNS) otherwise.
validRegex: /.{1,}/
- id: $$cap_cron
label: Cron
defaultValue: '*/5 * * * *'
description: Sets how often your container checks for IP changes. Defaults to every 5 minutes. You can read more about CRON configuration here https://en.wikipedia.org/wiki/Cron
validRegex: /.{1,}/
instructions:
start: >-
This small Alpine Linux based Docker image will allow you to use the free CloudFlare DNS Service as a Dynamic DNS Provider (DDNS).
Default values are tuned to work with CapRover.
To create a CloudFlare API token for your DNS zone go to https://dash.cloudflare.com/profile/api-tokens and follow these steps:
1 - Click Create Token
2 - Provide the token a name, for example, cloudflare-ddns
3 - Grant the token the following permissions:
Zone - Zone Settings - Read
Zone - Zone - Read
Zone - DNS - Edit
4 - Set the zone resources to:
Include - All zones
5 - Complete the wizard and copy the generated token into the Cloudflare API token field
end: >-
Cloudflare DDNS has been successfully deployed.
displayName: CloudFlare DDNS
isOfficial: false
description: This small image will allow you to use the free CloudFlare DNS Service as a Dynamic DNS Provider (DDNS).
documentation: Taken from https://github.com/oznu/docker-cloudflare-ddns

View File

@ -1,22 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: cockpithq/cockpit:core-$$cap_COCKPIT_VERSION
volumes:
- $$cap_appname:/var/www/html
caproverOneClickApp:
variables:
- id: $$cap_COCKPIT_VERSION
label: Version
description: Check out their Docker page for the valid tags https://hub.docker.com/r/cockpithq/cockpit/tags
defaultValue: 2.5.2
instructions:
start: >-
Cockpit is a self-hosted, flexible and user-friendly headless content platform for creating custom digital experiences.
end: >-
Cockpit has been successfully deployed! It might take few moments before it's fully started.
Navigate to `http://$$cap_appname.$$cap_root_domain/install` to finish the installation.
displayName: Cockpit
isOfficial: true
description: Headless Content Platform
documentation: https://github.com/Cockpit-HQ/Cockpit

View File

@ -1,55 +0,0 @@
captainVersion: 4
services:
$$cap_appname-mariadb:
image: linuxserver/mariadb:110.4.14mariabionic-ls77
environment:
MYSQL_ROOT_PASSWORD: $$cap_DB_PASS
MYSQL_DATABASE: codimd
MYSQL_USER: codimd
MYSQL_PASSWORD: $$cap_DB_PASS
PGID: 1000
PUID: 1000
TZ: $$cap_timezone
volumes:
- $$cap_appname-mariadb-config:/config
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
environment:
DB_HOST: srv-captain--$$cap_appname-mariadb
DB_USER: codimd
DB_PASS: $$cap_DB_PASS
DB_NAME: codimd
DB_PORT: 3306
PGID: 1000
PUID: 1000
TZ: $$cap_timezone
image: linuxserver/codimd:1.6.0-ls44
restart: always
volumes:
- $$cap_appname-config:/config
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- label: Database Password
description: Password to connect to the database
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_DB_PASS
- label: Timezone
description: This is the timezone for the application, find yours at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: Europe/London
id: $$cap_timezone
instructions:
start: |-
Realtime collaborative Markdown notes on all platforms.
GitHub: https://github.com/hackmdio/codimd
end: |-
Aaaand you're done! 😄
Your service is available as $$cap_appname
displayName: CodiMD
isOfficial: true
description: Realtime collaborative Markdown notes on all platforms
documentation: https://hackmd.io/c/codimd-documentation

View File

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

View File

@ -1,44 +0,0 @@
captainVersion: 4
services:
# Commento
$$cap_appname:
image: registry.gitlab.com/commento/commento@$$cap_commento_version
restart: always
environment:
COMMENTO_ORIGIN: https://$$cap_appname.$$cap_root_domain
COMMENTO_POSTGRES: postgres://commento:$$cap_commento_postgres_password@srv-captain--$$cap_appname-postgres:5432/commento?sslmode=disable
caproverExtra:
containerHttpPort: '8080'
# Postgres
$$cap_appname-postgres:
image: postgres:12
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
restart: always
environment:
POSTGRES_USER: commento
POSTGRES_PASSWORD: $$cap_commento_postgres_password
POSTGRES_DB: commento
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_commento_version
label: Commento Manifest digest
defaultValue: 'sha256:e792ac5c384ca7d45bfc228ef6ec3084a54af98847ee75a8aac7aa720f4f87a2'
description: Starts with 'sha256:'. Find on https://gitlab.com/commento/commento/container_registry/337942
- id: $$cap_commento_postgres_password
label: Postgres Password
description: Password must be at least 12 characters. Please use a random string.
validRegex: /^[^\@]{12,}$/
instructions:
start: >-
Commento is a fast, privacy-focused commenting platform.
end: >-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
More environment variables can be found at https://docs.commento.io/configuration/backend/
displayName: 'Commento'
isOfficial: true
description: Commento is a fast, privacy-focused commenting platform.
documentation: https://docs.commento.io/

View File

@ -1,50 +0,0 @@
captainVersion: 4
services:
$$cap_appname-mongo:
image: mongo:4.2
volumes:
- $$cap_appname-mongo:/data/db
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-redis:
image: redis:3.2
volumes:
- $$cap_appname-redis:/data
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-talk:
depends_on:
- $$cap_appname-mongo
- $$cap_appname-redis
image: coralproject/talk:$$cap_talk_version
restart: always
caproverExtra:
containerHttpPort: '5000'
environment:
MONGODB_URI: 'mongodb://srv-captain--$$cap_appname-mongo:27017/coral'
REDIS_URI: 'redis://srv-captain--$$cap_appname-redis:6379'
SIGNING_SECRET: $$cap_signing_secret
caproverOneClickApp:
variables:
- id: $$cap_signing_secret
label: Signing Secret
defaultValue: $$cap_gen_random_hex(32)
description: ''
validRegex: /.{1,}/
- id: $$cap_talk_version
label: Coral Talk Version
defaultValue: '6'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/coralproject/talk/tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
Online comments are broken. Our open-source commenting platform, Coral, rethinks how moderation, comment display, and conversation function, creating the opportunity for safer, smarter discussions around your work.
end: >
Coral is deployed and available as $$cap_appname-talk .
IMPORTANT: It will take up to 2 minutes for the application to be ready. Before that, you might see a 502 error page.
displayName: Coral Talk
isOfficial: true
description: Coral is an open-source commenting platform with a full suite of tools helps moderators easily identify disruptive comments.
documentation: Taken from https://docs.coralproject.net/coral/installation-from-docker/

View File

@ -1,72 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: cortezaproject/corteza:$$corteza_version
restart: always
depends_on:
- $$cap_appname-db
volumes:
- $$cap_appname-data:/data
environment:
VIRTUAL_HOST: $$cap_appname.$$cap_root_domain
DB_DSN: postgres://$$cap_postgre_username:$$cap_postgre_password@srv-captain--$$cap_appname-db:5432/$$cap_postgre_db_name?sslmode=disable
HTTP_WEBAPP_ENABLED: true
DOMAIN: $$cap_appname.$$cap_root_domain
VERSION: $$corteza_version
LETSENCRYPT_HOST: $$cap_lets_encrypt
$$cap_appname-db:
image: postgres:13
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
environment:
POSTGRES_USER: $$cap_postgre_username
POSTGRES_PASSWORD: $$cap_postgre_password
POSTGRES_DB: $$cap_postgre_db_name
caproverOneClickApp:
variables:
- id: '$$corteza_version'
label: Corteza Version
defaultValue: '2021.9.5'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/cortezaproject/corteza/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_postgre_db_name
label: PostgreSQL Database name
description: ''
defaultValue: 'corteza'
validRegex: /.{1,}/
- id: $$cap_postgre_username
label: PostgreSQL username
defaultValue: 'cortezaUser'
description: ''
validRegex: /.{1,}/
- id: $$cap_postgre_password
label: PostgreSQL Password
description: ''
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/
- id: $$cap_lets_encrypt
defaultValue: $$cap_appname.$$cap_root_domain
label: Lets Encrypt Host for SSL.
description: 'Set your root domain if you are going to use SSL (https://). Leave empty otherwise.'
instructions:
start: |-
Corteza is an open-source, self-hosted cloud-based platform for your work. It provides a wide ecosystem of a Unified Workspace (like Google G Suite), Enterprise Messaging (like Slack), a Low-Code environment for rapidly and securely delivering records-based management solutions, and CRM and Service Solution (like Salesforce).
For more info visit https://cortezaproject.org/
end: |-
Corteza has been successfully deployed!
--------------------------------------------
Before you proceed, please enable Websocket Support
https://captain.$$cap_root_domain/#/apps/details/$$cap_appname
--------------------------------------------
App is available as http://$$cap_appname.$$cap_root_domain
displayName: Corteza
isOfficial: true
description: Corteza is a free, open-source, Low Code platform for building your organisation key applications, growing its productivity and protecting its data and the privacy of all those concerned.
documentation: This docker-compose is taken https://github.com/cortezaproject

View File

@ -1,29 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: couchbase:$$cap_cb_version
volumes:
- $$cap_appname-data:/opt/couchbase/var
restart: always
caproverExtra:
containerHttpPort: '8091'
caproverOneClickApp:
variables:
- id: $$cap_cb_version
label: CouchBase Version
defaultValue: 'community-6.6.0'
description: Check out their Docker page for the valid tags https://registry.hub.docker.com/_/couchbase?tab=tags
validRegex: /^([^\s^\/])+$/
instructions:
start: |-
Couchbase Server, originally known as Membase, is an open-source, distributed multi-model NoSQL document-oriented database software package optimized for interactive applications.
After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME.
end: |-
Wait for few minutes to completly finish the deployment.
Visit http://$$cap_appname.$$cap_root_domain on the host machine to see the Web Console to start Couchbase Server setup.
DB will be internally available as srv-captain--$$cap_appname in ports 8091,8092,8093,8094,11210.
If you want this app available externally, map these ports on Caprover App-Config settings and allow on firewall.
displayName: CouchBase
isOfficial: true
description: Couchbase is an open-source, distributed multi-model NoSQL document-oriented database software
documentation: Taken from https://registry.hub.docker.com/_/couchbase

View File

@ -1,38 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: ibmcom/couchdb3:$$cap_couchdb_version
volumes:
- $$cap_appname-db-data:/opt/couchdb/data
- $$cap_appname-db-etc:/opt/couchdb/etc
restart: always
environment:
COUCHDB_USER: $$cap_couchdb_user
COUCHDB_PASSWORD: $$cap_couchdb_password
caproverExtra:
containerHttpPort: '5984'
caproverOneClickApp:
variables:
- id: $$cap_couchdb_version
label: CouchDB Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/library/couchdb/tags/
defaultValue: '3.2.1'
validRegex: /^([^\s^\/])+$/
- id: $$cap_couchdb_user
label: CouchDB Username
defaultValue: mainuser
validRegex: /^([a-zA-Z0-9_])+$/
- id: $$cap_couchdb_password
label: CouchDB Password
defaultValue: ''
validRegex: /.{1,}/
instructions:
start: >-
CouchDB is a database that uses JSON for documents, an HTTP API, & JavaScript/declarative indexing.
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.
end: CouchDB is deployed and available as $$cap_appname at port 5984 to other apps
displayName: CouchDB + Clouseau
isOfficial: true
description: CouchDB + Clouseau (Full Text Search) - IBM CouchDB 3 official image
documentation: Taken from https://hub.docker.com/r/ibmcom/couchdb3/

View File

@ -1,40 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: couchdb:$$cap_couchdb_version
volumes:
- $$cap_appname-db-data:/opt/couchdb/data
- $$cap_appname-db-etc:/opt/couchdb/etc
restart: always
environment:
COUCHDB_USER: $$cap_couchdb_user
COUCHDB_PASSWORD: $$cap_couchdb_password
caproverExtra:
containerHttpPort: '5984'
caproverOneClickApp:
variables:
- id: $$cap_couchdb_version
label: CouchDB Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/library/couchdb/tags/
defaultValue: '2'
validRegex: /^([^\s^\/])+$/
- id: $$cap_couchdb_user
label: CouchDB Username
defaultValue: mainuser
validRegex: /^([a-zA-Z0-9_])+$/
- id: $$cap_couchdb_password
label: CouchDB Password
defaultValue: ''
validRegex: /.{1,}/
instructions:
start: >-
CouchDB is a database that uses JSON for documents, an HTTP API, & JavaScript/declarative indexing.
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.
end: CouchDB is deployed and available as $$cap_appname at port 5984 to other apps
displayName: CouchDB
isOfficial: true
description: Apache CouchDB is an open-source document-oriented NoSQL database, implemented in Erlang
documentation: Taken from https://hub.docker.com/_/couchdb/

View File

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

View File

@ -1,360 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
dockerfileLines:
- ARG CRATER_PHP_VERSION
- FROM shinsenter/crater:php$CRATER_PHP_VERSION
- ARG TZ
- ARG PUID
- ARG PGID
- ARG CRATER_AUTO_OPTIMIZE
- ARG CRATER_LINK_STORAGE
- ARG CRATER_AUTO_MIGRATION
- ARG CRATER_QUEUE_ENABLED
- ARG CRATER_QUEUE_OPTIONS
- ARG CRATER_SCHEDULE_ENABLED
- ARG CRATER_SCHEDULE_OPTIONS
- ARG APP_ENV
- ARG APP_KEY
- ARG APP_DEBUG
- ARG APP_LOG_LEVEL
- ARG APP_URL
- ARG DB_CONNECTION
- ARG DB_HOST
- ARG DB_PORT
- ARG DB_DATABASE
- ARG DB_USERNAME
- ARG DB_PASSWORD
- ARG BROADCAST_DRIVER
- ARG CACHE_DRIVER
- ARG QUEUE_DRIVER
- ARG SESSION_DRIVER
- ARG SESSION_LIFETIME
- ARG REDIS_HOST
- ARG REDIS_PORT
- ARG MAIL_DRIVER
- ARG MAIL_HOST
- ARG MAIL_PORT
- ARG MAIL_USERNAME
- ARG MAIL_PASSWORD
- ARG MAIL_ENCRYPTION
- ARG MAIL_FROM_ADDRESS
- ARG MAIL_FROM_NAME
- ARG PUSHER_APP_ID
- ARG PUSHER_KEY
- ARG PUSHER_SECRET
- ARG SANCTUM_STATEFUL_DOMAINS
- ARG SESSION_DOMAIN
- ARG TRUSTED_PROXIES
- ARG CRON_JOB_AUTH_TOKEN
- ARG PROJECT_DIRECTORY=/var/www/html
- ARG STARTUP_COMMANDS_FILE=/startup/500-init-crater
- ARG ENVIRONMENT_FILE=$PROJECT_DIRECTORY/.env
- >-
ARG ENVIRONMENT_VARIABLE_NAMES="APP_ENV APP_KEY APP_DEBUG
APP_LOG_LEVEL APP_URL DB_CONNECTION DB_HOST DB_PORT
DB_DATABASE DB_USERNAME DB_PASSWORD BROADCAST_DRIVER
CACHE_DRIVER QUEUE_DRIVER SESSION_DRIVER SESSION_LIFETIME
REDIS_HOST REDIS_PORT MAIL_DRIVER MAIL_HOST MAIL_PORT
MAIL_USERNAME MAIL_PASSWORD MAIL_ENCRYPTION MAIL_FROM_ADDRESS
MAIL_FROM_NAME PUSHER_APP_ID PUSHER_KEY PUSHER_SECRET
SANCTUM_STATEFUL_DOMAINS SESSION_DOMAIN TRUSTED_PROXIES
CRON_JOB_AUTH_TOKEN"
- ARG COMMAND_CLEAN_ENVIRONMENT_FILE="> $ENVIRONMENT_FILE"
- ARG COMMAND_ADD_TO_ENVIRONMENT_FILE="for name in $ENVIRONMENT_VARIABLE_NAMES; do printf \"\$name=\${!name}\\\n\" >> $ENVIRONMENT_FILE; done"
- ARG COMMAND_NOTIFY="echo; echo 'Created environment file'"
- ENV TZ=$TZ
- ENV PUID=$PUID
- ENV PGID=$PGID
- ENV CRATER_AUTO_OPTIMIZE=$CRATER_AUTO_OPTIMIZE
- ENV CRATER_LINK_STORAGE=$CRATER_LINK_STORAGE
- ENV CRATER_AUTO_MIGRATION=$CRATER_AUTO_MIGRATION
- ENV CRATER_QUEUE_ENABLED=$CRATER_QUEUE_ENABLED
- ENV CRATER_QUEUE_OPTIONS=$CRATER_QUEUE_OPTIONS
- ENV CRATER_SCHEDULE_ENABLED=$CRATER_SCHEDULE_ENABLED
- ENV CRATER_SCHEDULE_OPTIONS=$CRATER_SCHEDULE_OPTIONS
- ENV WEBHOME=$PROJECT_DIRECTORY
- RUN printf "\n$COMMAND_CLEAN_ENVIRONMENT_FILE\n$COMMAND_ADD_TO_ENVIRONMENT_FILE\n$COMMAND_NOTIFY" >> $STARTUP_COMMANDS_FILE
environment:
CRATER_PHP_VERSION: $$cap_PHP_VERSION
TZ: $$cap_TZ
PUID: $$cap_PUID
PGID: $$cap_PGID
CRATER_AUTO_OPTIMIZE: $$cap_CRATER_AUTO_OPTIMIZE
CRATER_LINK_STORAGE: $$cap_CRATER_LINK_STORAGE
CRATER_AUTO_MIGRATION: $$cap_CRATER_AUTO_MIGRATION
CRATER_QUEUE_ENABLED: $$cap_CRATER_QUEUE_ENABLED
CRATER_QUEUE_OPTIONS: $$cap_CRATER_QUEUE_OPTIONS
CRATER_SCHEDULE_ENABLED: $$cap_CRATER_SCHEDULE_ENABLED
CRATER_SCHEDULE_OPTIONS: $$cap_CRATER_SCHEDULE_OPTIONS
APP_ENV: $$cap_APP_ENV
APP_KEY: $$cap_APP_KEY
APP_DEBUG: $$cap_APP_DEBUG
APP_LOG_LEVEL: $$cap_APP_LOG_LEVEL
APP_URL: $$cap_APP_URL
DB_CONNECTION: $$cap_DB_CONNECTION
DB_HOST: srv-captain--$$cap_appname-db
DB_PORT: $$cap_DB_PORT
DB_DATABASE: $$cap_DB_DATABASE
DB_USERNAME: $$cap_DB_USERNAME
DB_PASSWORD: $$cap_DB_PASSWORD
BROADCAST_DRIVER: $$cap_BROADCAST_DRIVER
CACHE_DRIVER: $$cap_CACHE_DRIVER
QUEUE_DRIVER: $$cap_QUEUE_DRIVER
SESSION_DRIVER: $$cap_SESSION_DRIVER
SESSION_LIFETIME: $$cap_SESSION_LIFETIME
REDIS_HOST: srv-captain--$$cap_appname-queue
REDIS_PORT: $$cap_REDIS_PORT
MAIL_DRIVER: $$cap_MAIL_DRIVER
MAIL_HOST: $$cap_MAIL_HOST
MAIL_PORT: $$cap_MAIL_PORT
MAIL_USERNAME: $$cap_MAIL_USERNAME
MAIL_PASSWORD: $$cap_MAIL_PASSWORD
MAIL_ENCRYPTION: $$cap_MAIL_ENCRYPTION
MAIL_FROM_ADDRESS: $$cap_MAIL_FROM_ADDRESS
MAIL_FROM_NAME: $$cap_MAIL_FROM_NAME
PUSHER_APP_ID: $$cap_PUSHER_APP_ID
PUSHER_KEY: $$cap_PUSHER_KEY
PUSHER_SECRET: $$cap_PUSHER_SECRET
SANCTUM_STATEFUL_DOMAINS: $$cap_appname.$$cap_root_domain
SESSION_DOMAIN: $$cap_appname.$$cap_root_domain
TRUSTED_PROXIES: $$cap_TRUSTED_PROXIES
CRON_JOB_AUTH_TOKEN: $$cap_CRON_JOB_AUTH_TOKEN
volumes:
- $$cap_appname-web:/var/www/html
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: mysql:$$cap_MYSQL_VERSION
environment:
TZ: $$cap_TZ
MYSQL_USER: $$cap_DB_USERNAME
MYSQL_PASSWORD: $$cap_DB_PASSWORD
MYSQL_DATABASE: $$cap_DB_DATABASE
MYSQL_ROOT_PASSWORD: $$cap_DB_ROOT_PASSWORD
volumes:
- $$cap_appname-db-data:/var/lib/mysql
- $$cap_appname-db-dump:/docker-entrypoint-initdb.d
$$cap_appname-queue:
caproverExtra:
notExposeAsWebApp: 'true'
image: redis:$$cap_REDIS_VERSION
volumes:
- $$cap_appname-queue:/data
caproverOneClickApp:
instructions:
start: |-
Crater is an open-source web & mobile app that helps you track expenses, payments & create professional invoices & estimates.
Please note that this is **NOT** the official image.
We are using the image provided by Shinsenter: https://hub.docker.com/r/shinsenter/crater
Please make sure you enter `APP_URL` and `APP_KEY` before proceeding.
end: |-
Crater has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain`
It will show the installation wizard.
Please enter the following details:
- Database Host: `srv-captain--$$cap_appname-db`
- Database Name: `$$cap_DB_DATABASE`
- Database Username: `$$cap_DB_USERNAME`
- Database Password: `$$cap_DB_PASSWORD`
displayName: Crater
isOfficial: false
description: Open Source Invoicing Solution for Individuals & Businesses
documentation: See https://docs.craterapp.com/developer-guide.html
variables:
- id: $$cap_PHP_VERSION
label: PHP Image Version Tag
description: Without "php" prefix. Check out their valid tags at https://hub.docker.com/r/shinsenter/crater/tags
defaultValue: '8.1'
validRegex: /.{1,}/
- id: $$cap_MYSQL_VERSION
label: MySQL Image Version Tag
description: Check out their valid tags at https://hub.docker.com/_/mysql/tags
defaultValue: '8.0.30'
validRegex: /.{1,}/
- id: $$cap_REDIS_VERSION
label: Redis Image Version Tag
description: Check out their valid tags at https://hub.docker.com/_/redis/tags
defaultValue: '7.0.5'
validRegex: /.{1,}/
- id: $$cap_TZ
label: Timezone
description: Timezone for the application, find yours at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: UTC
validRegex: /.{1,}/
- id: $$cap_PUID
label: User ID
defaultValue: '1000'
description: User ID that the process uses, run (id $user) on your instance to see the ID
validRegex: /.{1,}/
- id: $$cap_PGID
label: Group ID
defaultValue: '1000'
description: Group ID that the process uses, run (id $user) on your instance to see the ID
validRegex: /.{1,}/
- id: $$cap_CRATER_AUTO_OPTIMIZE
label: Automatic Optimizations
defaultValue: 'false'
description: Optimization and caching of all configs, views and routes.
validRegex: /^(true|false)$/
- id: $$cap_CRATER_LINK_STORAGE
label: Link Storage
defaultValue: 'false'
description: Symlinks to the storage folder.
validRegex: /^(true|false)$/
- id: $$cap_CRATER_AUTO_MIGRATION
label: Automatic Migrations
defaultValue: 'false'
description: Run Crater migrations for development purposes.
validRegex: /^(true|false)$/
- id: $$cap_CRATER_QUEUE_ENABLED
label: Enable Queue Worker
defaultValue: 'true'
description: Start queue worker when the container is up.
validRegex: /^(true|false)$/
- id: $$cap_CRATER_QUEUE_OPTIONS
label: Queue Worker Options
description: Extra arguments for queue worker.
- id: $$cap_CRATER_SCHEDULE_ENABLED
label: Enable Schedule Worker
defaultValue: 'true'
description: Start schedule worker when container is up.
validRegex: /^(true|false)$/
- id: $$cap_CRATER_SCHEDULE_OPTIONS
label: Schedule Worker Options
description: Extra arguments for schedule worker.
- id: $$cap_APP_ENV
label: Environment
defaultValue: production
description: Application environment.
validRegex: /^(production|development)$/
- id: $$cap_APP_KEY
label: Key
description: |-
Base64 encoded application key for encryption.
Run `openssl rand -base64 32` in the terminal to generate a key.
Prepend `base64:` and paste it here.
Example: `base64:cUNxR6ZmeVIj2zd7Q9z0OmHy+DpDB8wv+15OA9AVHKY=`
validRegex: /.{1,}/
- id: $$cap_APP_DEBUG
label: Debugging Mode
defaultValue: 'false'
description: Whether debugging information should be shown.
validRegex: /^(true|false)$/
- id: $$cap_APP_LOG_LEVEL
label: Log Level
defaultValue: error
description: Level of information shown in the logging console.
validRegex: /.{1,}/
- id: $$cap_APP_URL
label: Application URL
description: URL of user-facing service. (e.g. http://crater.example.com)
validRegex: /.{1,}/
- id: $$cap_DB_CONNECTION
label: Database Type
description: Type of database (e.g. mysql, sqlite, pgsql)
defaultValue: mysql
validRegex: /.{1,}/
- id: $$cap_DB_PORT
label: Database Port
description: Port of database host.
defaultValue: 3306
validRegex: /.{1,}/
- id: $$cap_DB_DATABASE
label: Database Name
description: Name of database.
defaultValue: crater
validRegex: /.{1,}/
- id: $$cap_DB_USERNAME
label: Database User Name
description: Name of database user.
defaultValue: crater
validRegex: /.{1,}/
- id: $$cap_DB_PASSWORD
label: Database User Password
description: Password of database user.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/
- id: $$cap_DB_ROOT_PASSWORD
label: Database Root User Password
description: Password of database root user.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/
- id: $$cap_BROADCAST_DRIVER
label: Broadcast Driver
description: Driver for broadcasting.
defaultValue: log
validRegex: /.{1,}/
- id: $$cap_CACHE_DRIVER
label: Cache Driver
description: Driver for caching.
defaultValue: file
validRegex: /.{1,}/
- id: $$cap_QUEUE_DRIVER
label: Queue Driver
description: Driver for queue.
defaultValue: sync
validRegex: /.{1,}/
- id: $$cap_SESSION_DRIVER
label: Session Driver
description: Driver for sessions.
defaultValue: cookie
validRegex: /.{1,}/
- id: $$cap_SESSION_LIFETIME
label: Session Lifetime
description: Duration of a valid session in minutes.
defaultValue: 1440
validRegex: /.{1,}/
- id: $$cap_REDIS_PORT
label: Redis Port
description: Port of Redis host.
defaultValue: 6379
validRegex: /.{1,}/
- id: $$cap_MAIL_DRIVER
label: Mail Driver
description: Driver for email delivery.
defaultValue: smtp
validRegex: /.{1,}/
- id: $$cap_MAIL_HOST
label: Mail Host
description: Host of mail server.
- id: $$cap_MAIL_PORT
label: Mail Port
description: Port of mail server.
- id: $$cap_MAIL_USERNAME
label: Mail User Name
description: Name of mail server user.
- id: $$cap_MAIL_PASSWORD
label: Mail User Password
description: Password of mail server user.
- id: $$cap_MAIL_ENCRYPTION
label: Mail Server Encryption
description: Mail server's encryption type (e.g. ssl or tls).
- id: $$cap_MAIL_FROM_ADDRESS
label: Mail From Address
description: Sender mail address for system mails.
defaultValue: admin@crater.in
validRegex: /.{1,}/
- id: $$cap_MAIL_FROM_NAME
label: Mail From Name
description: Sender name for system mails.
defaultValue: Crater
validRegex: /.{1,}/
- id: $$cap_PUSHER_APP_ID
label: Pusher Application ID
description: If using Pusher, insert application ID here.
- id: $$cap_PUSHER_KEY
label: Pusher Key
description: If using Pusher, insert key here.
- id: $$cap_PUSHER_SECRET
label: Pusher Secret
description: If using Pusher, insert secret here.
- id: $$cap_TRUSTED_PROXIES
label: Trusted Proxies
description: Restrict proxy access.
defaultValue: '*'
validRegex: /.{1,}/
- id: $$cap_CRON_JOB_AUTH_TOKEN
label: Cronjob Authentication Token
description: Authentication token for cronjob executions.

View File

@ -1,41 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: soulteary/cronicle:$$cap_version
restart: always
volumes:
- /etc/localtime:/etc/localtime
- /etc/timezone:/etc/timezone
- $$cap_appname:/opt/cronicle/data
- $$cap_appname-plugins:/opt/cronicle/plugins
environment:
- TZ=$$cap_timezone
logging:
driver: 'json-file'
options:
max-size: '10m'
caproverExtra:
containerHttpPort: '3012'
caproverOneClickApp:
variables:
- id: $$cap_version
label: Cronicle Version
defaultValue: '0.9.17'
description: Check out their docker page for the valid tags https://hub.docker.com/r/soulteary/cronicle/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_timezone
label: Timezone
defaultValue: 'Etc/UTC'
description: 'Check out all the available timezones here https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'
instructions:
start: >-
A simple, distributed task scheduler and runner with a web based UI.
end: >-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain.
**IMPORTANT: Make sure to enable websocket support in the HTTP settings**.
**Credentials**: `admin`/`admin`
displayName: 'Cronicle'
isOfficial: false
description: A simple, distributed task scheduler and runner with a web based UI.
documentation: Taken from https://github.com/jhuckaby/Cronicle and https://github.com/soulteary/docker-cronicle

View File

@ -1,37 +0,0 @@
captainVersion: 4
services:
'$$cap_appname':
image: balzack/databag:$$cap_version
environment:
TZ: '$$cap_tz'
PHP_TZ: '$$cap_tz'
volumes:
- '$$cap_appname-data:/var/lib/databag'
caproverExtra:
containerHttpPort: '7000'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: Databag Version
defaultValue: '0.1.8'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/balzack/databag/tags
validRegex: "/^([^\\s^\\/])+$/"
- id: '$$cap_tz'
label: Time Zone
defaultValue: America/Los_Angeles
description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: '/.{1,}/'
instructions:
start: |-
Configure your instance and create accounts in the admin dashboard.
Login to your account and connect with others.
Start a conversation.
More details: https://github.com/balzack/databag
end: |-
Databag has been successfully deployed!
IMPORTANT!! You need to enable https and websocket support.
displayName: Databag
isOfficial: true
description: Databag is a federated chat app for selfhosting that focuses on privacy and security; the service includes clients for the browser as well as F-Droid, iOS and Android.
documentation: See https://github.com/balzack/databag

View File

@ -1,35 +0,0 @@
captainVersion: 4
caproverOneClickApp:
displayName: Davos
description: 'Davos is an FTP automation tool that periodically scans given host locations for new files.'
documentation: 'https://github.com/linuxserver/davos'
instructions:
end: 'Your service is available at http://$$cap_appname.$$cap_root_domain'
start: 'davos is an FTP download automation tool that allows you to scan various FTP servers for files you are interested in.'
isOfficial: true
variables:
- defaultValue: 2.2.1
id: $$cap_davos_version
label: Davos Version
validRegex: /^([^\s^\/])+$/
- defaultValue: '1000'
id: $$cap_davos_puid
label: Puid
validRegex: /^([^\s^\/])+$/
- defaultValue: '1000'
id: $$cap_davos_pgid
label: Pgid
validRegex: /^([^\s^\/])+$/
services:
$$cap_appname-davos:
caproverExtra:
containerHttpPort: '8080'
container_name: davos
environment:
PGID: $$cap_davos_pgid
PUID: $$cap_davos_puid
image: lscr.io/linuxserver/davos:$$cap_davos_version
restart: unless-stopped
volumes:
- $$cap_appname-config:/config
- $$cap_appname-download:/download

View File

@ -1,149 +0,0 @@
captainVersion: 4
services:
# MySQL
$$cap_appname-mysql:
image: mysql:$$cap_mysql_tag
volumes:
- $$cap_appname-data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: $$cap_mysql_root_password
MYSQL_USER: $$cap_mysql_user
MYSQL_PASSWORD: $$cap_mysql_password
MYSQL_DATABASE: $$cap_mysql_database_name
caproverExtra:
notExposeAsWebApp: 'true'
# Redis
$$cap_appname-redis:
image: redis:$$cap_redis_tag
caproverExtra:
notExposeAsWebApp: 'true'
# Directus
$$cap_appname:
depends_on:
- $$cap_appname-mysql
- $$cap_appname-redis
image: directus/directus:$$cap_directus_tag
volumes:
- $$cap_appname-uploads:/directus/uploads
- $$cap_appname-extensions:/directus/extensions
restart: always
environment:
KEY: $$cap_directus_auth_public_key
SECRET: $$cap_directus_auth_secret_key
PUBLIC_URL: https://$$cap_appname.$$cap_root_domain
DB_CLIENT: 'mysql'
DB_HOST: srv-captain--$$cap_appname-mysql
DB_PORT: '3306'
DB_DATABASE: $$cap_mysql_database_name
DB_USER: $$cap_mysql_user
DB_PASSWORD: $$cap_mysql_password
CACHE_ENABLED: 'true'
CACHE_STORE: 'redis'
CACHE_AUTO_PURGE: $$cap_redis_auto_purge
CACHE_TTL: $$cap_redis_ttl
# Before Directus 10.4.0
CACHE_REDIS: redis://srv-captain--$$cap_appname-redis:6379
# Since Directus 10.4.0
REDIS: redis://srv-captain--$$cap_appname-redis:6379
ADMIN_EMAIL: $$cap_admin_email
ADMIN_PASSWORD: $$cap_admin_password
TELEMETRY: 'false'
caproverExtra:
containerHttpPort: '8055'
caproverOneClickApp:
variables:
- label: Directus image tag
id: $$cap_directus_tag
defaultValue: '9.22.1'
validRegex: /.{1,}/
description: Tag of Directus image on https://hub.docker.com/r/directus/directus/tags
- label: Directus Auth Secret Key
id: $$cap_directus_auth_secret_key
defaultValue: $$cap_gen_random_hex(22)
validRegex: /^(?=.*\d).{10,}$/
description: Directus Auth Secret Key (must not be the same as Directus Auth Public Key)
- label: Directus Auth Public Key
id: $$cap_directus_auth_public_key
defaultValue: $$cap_gen_random_hex(22)
validRegex: /^(?=.*\d).{10,}$/
description: Directus Auth Public Key (must not be the same as Directus Auth Secret Key)
- label: Directus admin user email
id: $$cap_admin_email
defaultValue: admin@example.com
validRegex: /.{1,}/
description: Directus admin user email
- label: Directus admin user password
id: $$cap_admin_password
defaultValue: $$cap_gen_random_hex(22)
validRegex: /^(?=.*\d).{8,}$/
description: Directus admin user password
- label: MySQL image tag
id: $$cap_mysql_tag
defaultValue: '5.7'
validRegex: /.{1,}/
description: 'Tag of MySQL image on https://hub.docker.com/_/mysql/tags. NOTE: Not working with MySQL version 8 or higher!'
- label: MySQL root password
id: $$cap_mysql_root_password
defaultValue: $$cap_gen_random_hex(22)
validRegex: /^(?=.*\d).{10,}$/
description: Root password for the MySQL database instance.
- label: MySQL database name
id: $$cap_mysql_database_name
defaultValue: directus
validRegex: /.{1,}/
description: Name of the Directus database instance.
- label: MySQL user name
id: $$cap_mysql_user
defaultValue: directus
validRegex: /.{1,}/
description: User for the Directus database instance.
- label: MySQL user password
id: $$cap_mysql_password
defaultValue: $$cap_gen_random_hex(22)
validRegex: /^(?=.*\d).{10,}$/
description: User password for the Directus database instance.
- label: Redis image tag
id: $$cap_redis_tag
defaultValue: '7.0-alpine'
validRegex: /.{1,}/
description: Tag of redis image on https://hub.docker.com/_/redis/tags
- label: Redis CACHE_AUTO_PURGE (true or false)
id: $$cap_redis_auto_purge
defaultValue: 'true'
validRegex: /.{1,}/
description: Automatically purge the data cache on create, update, and delete actions. (https://docs.directus.io/self-hosted/config-options.html#cache)
- label: Redis CACHE_TTL
id: $$cap_redis_ttl
defaultValue: '1d'
validRegex: /.{1,}/
description: How long the data cache is persisted. (https://docs.directus.io/self-hosted/config-options.html#cache)
instructions:
end: >
Your service is available at http://$$cap_appname.$$cap_root_domain after a few minutes. You should enable HTTPS. If you wont enable HTTPS adjust the PUBLIC_URL (environmental variable) in your App Configs.
start: >-
Directus is an open-source headless CMS and an Open Data Platform built to democratize the database. It provides a dynamic API and intuitive Admin Panel App. For more information and available options, see https://github.com/directus or the official documentation at https://docs.directus.io
displayName: 'Directus + MySQL + Redis'
isOfficial: true
description: Directus is an open-source headless CMS and an Open Data Platform built to democratize the database. It provides a dynamic API and intuitive Admin Panel App.
documentation: Taken from https://docs.directus.io/self-hosted/docker-guide.html.

View File

@ -1,100 +0,0 @@
captainVersion: 4
services:
# Postgres
$$cap_appname-postgres:
image: postgres:13
volumes:
- $$cap_appname-data:/var/lib/postgresql/data
environment:
POSTGRES_DB: $$cap_postgres_database_name
POSTGRES_USER: $$cap_postgres_user
POSTGRES_PASSWORD: $$cap_postgres_passwd
caproverExtra:
notExposeAsWebApp: 'true'
# Cache
$$cap_appname-redis:
image: redis:7
volumes:
- $$cap_appname-redis:/data
caproverExtra:
notExposeAsWebApp: 'true'
# Directus
$$cap_appname:
depends_on:
- $$cap_appname-postgres
- $$cap_appname-redis
image: directus/directus:$$cap_directus_tag
volumes:
- $$cap_appname-uploads:/directus/uploads
- $$cap_appname-extensions:/directus/extensions
restart: always
environment:
KEY: $$cap_directus_auth_public_key
SECRET: $$cap_directus_auth_secret_key
DB_CLIENT: 'pg'
DB_HOST: srv-captain--$$cap_appname-postgres
DB_PORT: '5432'
DB_DATABASE: $$cap_postgres_database_name
DB_USER: $$cap_postgres_user
DB_PASSWORD: $$cap_postgres_passwd
CACHE_ENABLED: 'true'
CACHE_STORE: 'redis'
REDIS_HOST: srv-captain--$$cap_appname-redis
REDIS_PORT: '6379'
ADMIN_EMAIL: $$cap_admin_email
ADMIN_PASSWORD: $$cap_admin_password
caproverExtra:
containerHttpPort: '8055'
caproverOneClickApp:
variables:
- description: Tag of Directus image on https://hub.docker.com/r/directus/directus/tags
defaultValue: 10.4.3
id: $$cap_directus_tag
label: Directus image tag
validRegex: /.{1,}/
- description: Name of the Directus database instance.
defaultValue: directus
id: $$cap_postgres_database_name
label: Postgres database name
validRegex: /.{1,}/
- description: User for the Directus database instance.
defaultValue: directus
id: $$cap_postgres_user
label: Postgres user
validRegex: /.{1,}/
- description: User password for the Directus database instance.
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_postgres_passwd
label: Postgres user password
validRegex: /^(?=.*\d).{10,}$/
- description: Directus Auth Secret Key (must not be the same as Directus Auth Public Key)
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_directus_auth_secret_key
label: Directus Auth Secret Key
validRegex: /^(?=.*\d).{10,}$/
- description: Directus Auth Public Key (must not be the same as Directus Auth Secret Key)
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_directus_auth_public_key
label: Directus Auth Public Key
validRegex: /^(?=.*\d).{10,}$/
- description: Directus admin user email
defaultValue: admin@example.com
id: $$cap_admin_email
label: Directus admin user email
validRegex: /.{1,}/
- description: Directus admin user password
defaultValue: $$cap_gen_random_hex(8)
id: $$cap_admin_password
label: Directus admin user password
validRegex: /^(?=.*\d).{8,}$/
instructions:
end: >
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
start: >-
Directus is an open-source suite of software that wraps custom SQL 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
displayName: 'Directus'
isOfficial: true
description: Directus is an open-source tool for managing content across all your omni-channel digital experiences
documentation: Taken from https://docs.directus.io/guides/installation/docker/.

View File

@ -1,153 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgresql:
documentation: Taken from https://hub.docker.com/r/bitnami/postgresql
image: docker.io/bitnami/postgresql:$$cap_postgresql_version
restart: always
environment:
POSTGRESQL_DATABASE: $$cap_db_name
POSTGRESQL_USERNAME: $$cap_db_user
POSTGRESQL_PASSWORD: $$cap_db_pass
POSTGRESQL_POSTGRES_PASSWORD: $$cap_db_pass
volumes:
- $$cap_appname-postgresql-data:/bitnami/postgresql
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-redis:
documentation: Taken from https://hub.docker.com/r/bitnami/redis
image: docker.io/bitnami/redis:$$cap_redis_version
restart: always
environment:
ALLOW_EMPTY_PASSWORD: yes
volumes:
- $$cap_appname-redis-data:/bitnami
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
documentation: Taken from https://hub.docker.com/r/bitnami/discourse
image: docker.io/bitnami/discourse:$$cap_discourse_version
depends_on:
- $$cap_appname-postgresql
- $$cap_appname-redis
volumes:
- $$cap_appname-data:/bitnami
environment:
POSTGRESQL_HOST: srv-captain--$$cap_appname-postgresql
POSTGRESQL_ROOT_USER: postgres
POSTGRESQL_CLIENT_CREATE_DATABASE_NAME: $$cap_db_name
POSTGRESQL_CLIENT_CREATE_DATABASE_USERNAME: $$cap_db_user
POSTGRESQL_CLIENT_CREATE_DATABASE_PASSWORD: $$cap_db_pass
POSTGRESQL_CLIENT_POSTGRES_PASSWORD: $$cap_db_pass
DISCOURSE_USERNAME: $$cap_admin_user
DISCOURSE_PASSWORD: $$cap_admin_pass
DISCOURSE_EMAIL: $$cap_admin_email
DISCOURSE_SITENAME: $$cap_sitename
DISCOURSE_POSTGRESQL_NAME: $$cap_db_name
DISCOURSE_POSTGRESQL_USERNAME: $$cap_db_user
DISCOURSE_POSTGRESQL_PASSWORD: $$cap_db_pass
DISCOURSE_HOSTNAME: $$cap_appname.$$cap_root_domain
REDIS_HOST: srv-captain--$$cap_appname-redis
SMTP_HOST: $$cap_smtp_host
SMTP_PORT: $$cap_smtp_port
SMTP_USER: $$cap_smtp_user
SMTP_PASSWORD: $$cap_smtp_pass
caproverExtra:
containerHttpPort: '3000'
$$cap_appname-sidekiq:
documentaion: Taken from https://hub.docker.com/r/bitnami/discourse
depends_on:
- $$cap_appname
volumes:
- $$cap_appname-data:/bitnami
environment:
DISCOURSE_POSTGRESQL_NAME: $$cap_db_name
DISCOURSE_POSTGRESQL_USERNAME: $$cap_db_user
DISCOURSE_POSTGRESQL_PASSWORD: $$cap_db_pass
DISCOURSE_HOST: srv-captain--$$cap_appname
DISCOURSE_PORT: '3000'
DISCOURSE_HOSTNAME: $$cap_appname.$$cap_root_domain
POSTGRESQL_HOST: srv-captain--$$cap_appname-postgresql
REDIS_HOST: srv-captain--$$cap_appname-redis
SMTP_HOST: $$cap_smtp_host
SMTP_PORT: $$cap_smtp_port
SMTP_USER: $$cap_smtp_user
SMTP_PASSWORD: $$cap_smtp_pass
caproverExtra:
dockerfileLines:
- FROM docker.io/bitnami/discourse:$$cap_discourse_version
- CMD ["/opt/bitnami/scripts/discourse-sidekiq/run.sh"]
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_discourse_version
label: Discourse Version
defaultValue: 2.8.11
description: Version of Discourse
validRegex: /^([^\s^\/])+$/
- id: $$cap_postgresql_version
label: Postgresql (database) version
defaultValue: 15.1.0
description: Version of Postgresql
validRegex: /^([^\s^\/])+$/
- id: $$cap_sitename
label: Sitename
defaultValue: My site!
description: The title of the site, the words on the tab
- id: $$cap_redis_version
label: Redis version
defaultValue: '5.0'
description: Version of Redis
validRegex: /^([^\s^\/])+$/
- id: $$cap_admin_user
label: Admin username
defaultValue: admin
description: Name of the admin account
validRegex: /.{1,}/
- id: $$cap_admin_pass
label: Admin password
defaultValue: sTr0nG_p@s$wo%d
description: Password of the admin account
validRegex: /.{1,}/
- id: $$cap_admin_email
label: Admin email
defaultValue: your_email@gmail.com
description: Email of the admin account
validRegex: /.{1,}/
- id: $$cap_db_name
label: Database name
defaultValue: discourse_db
description: Name for the database using postgresql
validRegex: /^([^\s^\/])+$/
- id: $$cap_db_user
label: Database user
defaultValue: discourse_user
description: Username for the database using postgresql
validRegex: /^([^\s^\/])+$/
- id: $$cap_db_pass
label: Database password
defaultValue: sTr0nG_p@s$wo%d
description: Password for the database user and root using postgresql
validRegex: /.{1,}/
- id: $$cap_smtp_host
label: SMPT host
defaultValue: smtp.gmail.com
description: The host for your smtp server
- id: $$cap_smtp_port
label: SMTP port
defaultValue: '587'
description: The port for your smtp server
- id: $$cap_smtp_user
label: SMTP user
defaultValue: your_email@gmail.com
description: The user for your smtp server
- id: $$cap_smtp_pass
label: SMTP password
defaultValue: sTr0nG_p@s$wo%d
description: The password for your smtp server
instructions:
start: Discourse is a relatively heavy application, atleast 2GB RAM is recommended to run Discourse
end: Discourse image is deployed and the installation process has begun. The installation process takes about 10 minutes.
displayName: Discourse
isOfficial: true
description: Discourse is the 100% open source discussion platform built for the 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,25 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: index.docker.io/docuseal/docuseal:$$cap_docuseal_version
volumes:
- $$cap_appname-data:/data
restart: always
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_docuseal_version
label: Docuseal Version
defaultValue: 1.2.4
description: Check out their Docker page for the valid tags https://hub.docker.com/r/docuseal/docuseal/tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
DocuSeal is an open source platform that provides secure and efficient digital document signing and processing.
end: >-
Please wait for 2 minutes. Docuseal is deployed and available as $$cap_appname
displayName: Docuseal
isOfficial: true
description: DocuSeal is an open source platform that provides secure and efficient digital document signing and processing.
documentation: Taken from https://github.com/docusealco/docuseal

View File

@ -1,55 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: bitnami/dokuwiki:$$cap_dokuwiki_version
environment:
DOKUWIKI_USERNAME: $$DOKUWIKI_USERNAME
DOKUWIKI_EMAIL: $$DOKUWIKI_EMAIL
DOKUWIKI_FULL_NAME: $$DOKUWIKI_FULL_NAME
DOKUWIKI_PASSWORD: $$DOKUWIKI_PASSWORD
DOKUWIKI_WIKI_NAME: $$DOKUWIKI_WIKI_NAME
caproverExtra:
containerHttpPort: '8080'
volumes:
- $$cap_appname:/bitnami/dokuwiki
caproverOneClickApp:
variables:
- id: $$cap_dokuwiki_version
label: DokuWiki Version
defaultValue: 20200729-debian-10
description: Check out their Docker page for the valid tags https://hub.docker.com/r/bitnami/dokuwiki/tags
validRegex: /^([^\s^\/])+$/
- id: $$DOKUWIKI_USERNAME
label: username
defaultValue: 'user'
description: Dokuwiki application username
validRegex: /.{1,}/
- id: $$DOKUWIKI_EMAIL
label: email
defaultValue: 'noreply@gmail.com'
description: Dokuwiki application user email
validRegex: /.{1,}/
- id: $$DOKUWIKI_FULL_NAME
label: full name
defaultValue: 'full name'
description: Dokuwiki application user full name
validRegex: /.{1,}/
- id: $$DOKUWIKI_PASSWORD
label: password
defaultValue: 'password'
description: Dokuwiki application password
validRegex: /.{1,}/
- id: $$DOKUWIKI_WIKI_NAME
label: Dokuwiki
defaultValue: 'Dokuwiki wiki name'
description: Dokuwiki wiki name
validRegex: /.{1,}/
instructions:
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 clean and readable syntax. The ease of maintenance, backup and integration makes it an administrator's favorite. Built in access controls and authentication connectors make DokuWiki especially useful in the enterprise context and the large number of plugins contributed by its vibrant community allow for a broad range of use cases beyond a traditional wiki.
end: >-
Dokuwiki has been successfully deployed. Please wait about 2 minutes before accessing Dokuwiki.
displayName: DokuWiki
isOfficial: true
description: Dokuwiki is a simple to use and highly versatile Open Source wiki software that doesn't require a database.
documentation: Taken from https://hub.docker.com/r/bitnami/dokuwiki/tags

View File

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

View File

@ -1,36 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: amir20/dozzle:$$cap_version
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
DOZZLE_USERNAME: $$cap_username
DOZZLE_PASSWORD: $$cap_password
DOZZLE_KEY: $$cap_gen_random_hex(16)
caproverExtra:
containerHttpPort: '8080'
caproverOneClickApp:
variables:
- id: $$cap_version
label: Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/amir20/dozzle/tags?page=1&ordering=last_updated
defaultValue: 'v3.7.1'
- id: $$cap_username
label: Username
defaultValue: 'admin'
- id: $$cap_password
label: Password
defaultValue: $$cap_gen_random_hex(16)
instructions:
start: |-
Dozzle is a small lightweight application with a web based interface to monitor Docker logs. It doesnt store any log files. It is for live monitoring of your container logs only.
Dozzle should work for most. It has been tested with hundreds of containers. However, it doesn't support offline searching. Products like Loggly, Papertrail or Kibana are more suited for full search capabilities.
More details: https://github.com/amir20/dozzle
end: Make sure to enable HTTPS before accessing this app! Dozzle is deployed and available as $$cap_appname.
displayName: Dozzle
isOfficial: true
description: Dozzle is a small lightweight application with a web based interface to monitor Docker logs. It doesnt store any log files. It is for live monitoring of your container logs only.
documentation: Taken from https://github.com/amir20/dozzle

View File

@ -1,109 +0,0 @@
captainVersion: 4
services:
$$cap_appname-agent:
image: drone/drone-runner-docker:$$cap_drone_runner_version
volumes:
- /var/run/docker.sock:/var/run/docker.sock
restart: always
environment:
DRONE_RPC_HOST: srv-captain--$$cap_appname:80
DRONE_RPC_SECRET: $$cap_drone_secret
DRONE_RPC_PROTO: http
DRONE_RUNNER_CAPACITY: $$cap_drone_runner_capacity
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
depends_on:
- $$cap_appname-agent
image: drone/drone:$$cap_drone_version
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- $$cap_appname-server:/data
restart: always
environment:
DRONE_GITEA_SERVER: $$cap_drone_gitea_server
DRONE_GIT_ALWAYS_AUTH: $$cap_drone_gitea_always_auth
DRONE_RUNNER_CAPACITY: $$cap_drone_runner_capacity
DRONE_SERVER_PROTO: $$cap_drone_server_proto
DRONE_SERVER_HOST: $$cap_drone_server_host
DRONE_GITEA_CLIENT_ID: $$cap_drone_gitea_client_id
DRONE_GITEA_CLIENT_SECRET: $$cap_drone_gitea_client_secret
DRONE_RPC_SECRET: $$cap_drone_secret
caproverOneClickApp:
variables:
- id: $$cap_drone_version
label: Drone Version
defaultValue: 1.9.0
description: Check out their Docker page for the valid tags https://hub.docker.com/r/drone/drone/tags
validRegex: ''
- id: $$cap_drone_runner_version
label: Drone Docker runner Version
defaultValue: 1.5.1
description: Check out their Docker page for the valid tags https://hub.docker.com/r/drone/drone-runner-docker/tags
validRegex: ''
- id: $$cap_drone_gitea_server
label: DRONE_GITEA_SERVER
defaultValue: https://git.your.server
description: A string containing your Gitea server address.
validRegex: ''
- id: $$cap_drone_gitea_always_auth
label: DRONE_GIT_ALWAYS_AUTH
defaultValue: 'false'
description: Boolean value configures Drone to authenticate when cloning public repositories. This is only required when your source code management system (e.g. GitHub Enterprise) has private mode enabled.
validRegex: ''
- id: $$cap_drone_runner_capacity
label: DRONE_RUNNER_CAPACITY
defaultValue: '4'
description: An integer defining the maximum number of pipelines the agent should execute concurrently. The default value is two pipelines.
validRegex: /^[0-9]+$/
- id: $$cap_drone_server_proto
label: DRONE_SERVER_PROTO
defaultValue: https
description: A string containing your Drone server protocol scheme. This value should be set to http or https. This field defaults to https if you configure ssl or acme.
validRegex: /^([Hh][Tt][Tt][Pp]|[Hh][Tt][Tt][Pp][Ss])$/
- id: $$cap_drone_server_host
label: DRONE_SERVER_HOST
defaultValue: drone.yourhost.com
description: A string containing your Drone server hostname or IP address.
validRegex: ''
- id: $$cap_drone_server_port
label: DRONE_RPC_PORT
defaultValue: 80
description: The port number on which your drone server will be running (for runner communication). As we use internal access, this should be 80
validRegex: ''
- id: $$cap_drone_tls_autocert
label: DRONE_TLS_AUTOCERT
defaultValue: 'false'
description: An boolean indicating debug level logs should be use for automatic SSL certification generation and configuration. The default value is false..
validRegex: /^([Tt][Rr][Uu][Ee]|[Ff][Aa][Ll][Ss][Ee])$/
- id: $$cap_drone_secret
label: secret for linking drone and agent
description: some random secret here (min 10 characters)
defaultValue: ''
validRegex: /.{10,}/
- id: $$cap_drone_gitea_client_id
label: client ID created previously in Gitea
description: Get from gitea settings -> Applications -> Oauth2 Applications
defaultValue: ''
validRegex: ''
- id: $$cap_drone_gitea_client_secret
label: Client Secret created previously in Gitea
description: Get from gitea settings -> Applications -> Oauth2 Applications
defaultValue: ''
validRegex: ''
instructions:
start: >-
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).
You must generate an OAuth2 application in Gitea (Settings->Applications->Create a new OAuth2 Application) with the "Redirect URI" https://<your drone server>/login. Make a note of the Client ID and the Client Secret and use them in the appropriate fields below.
Enter your Drone for Gitea configuration parameters and click on next. The process will take about a minute to finish.
Please make sure that after deployment you add HTTPS to your $$cap_appname application or communication with the runner will fail.
end: >
Drone is deployed and available as $$cap_appname.
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
isOfficial: true
description: Drone is a self-service Continuous Delivery platform for busy development teams
documentation: Taken from https://docs.drone.io/intro/gitea/single-machine/

View File

@ -1,25 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: ghcr.io/droppyjs/droppy:$$cap_droppy_version
volumes:
- $$cap_appname-config:/config
- $$cap_appname-files:/files
restart: always
caproverExtra:
containerHttpPort: '8989'
caproverOneClickApp:
variables:
- id: $$cap_droppy_version
label: droppy version tag
description: Check out their docker page for the valid tags @ https://github.com/orgs/droppyjs/packages/container/package/droppy
defaultValue: v0.0.6
instructions:
start: droppy is a self-hosted file storage server with a web interface.
end: >-
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.
displayName: 'droppy'
description: droppy is a self-hosted file storage server with a web interface
documentation: Read the documentation @ https://github.com/droppyjs/droppy

View File

@ -1,54 +0,0 @@
captainVersion: 4
services:
# Duplicati
$$cap_appname:
image: linuxserver/duplicati:$$cap_duplicati_version
environment:
TZ: $$cap_tz
PUID: $$cap_puid
PGID: $$cap_guid
CLI_ARGS: $$cap_cli_args
volumes:
- $$cap_appname-config:/config # Contains all relevant configuration files.
- $$cap_localpath:/backups # Path to store local backups.
- $$cap_sourcepath:/source # Path to source for files to backup.
caproverExtra:
containerHttpPort: '8200'
caproverOneClickApp:
variables:
- id: $$cap_tz
label: Timezone
description: Specify a timezone to use EG Europe/London, find yours at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: Europe/Brussels
- id: $$cap_duplicati_version
label: Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/duplicati/tags
defaultValue: 'version-v2.0.5.1-2.0.5.1_beta_2020-01-18'
- id: $$cap_puid
label: User ID
defaultValue: '1000'
description: User ID that the process uses, run (id $user) in your instance to see the id
validRegex: /.{1,}/
- id: $$cap_guid
label: Group ID
defaultValue: '1000'
description: Group ID that the process uses, run (id $user) in your instance to see the id
validRegex: /.{1,}/
- id: $$cap_localpath
label: Path to store local backups.
- id: $$cap_sourcepath
label: Path to source for files to backup.
description: 'eg: /var/lib/docker/volumes or just / So you can select the folders you want to backup'
- id: $$cap_cli_args
label: Command line arguments
description: Optionally specify any CLI variables you want to launch the app with, see https://duplicati.readthedocs.io/en/latest/07-other-command-line-utilities/
instructions:
start: |-
Duplicati works with standard protocols like FTP, SSH, WebDAV as well as popular services like Microsoft OneDrive, Amazon Cloud Drive & S3, Google Drive, box.com, Mega, hubiC and many others.
end: |-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
displayName: Duplicati
isOfficial: true
description: Free backup software to store encrypted backups online For Windows, macOS and Linux
documentation: https://docs.linuxserver.io/images/docker-duplicati

View File

@ -1,25 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: eclipse-mosquitto:$$cap_eclipse_version
volumes:
- $$cap_appname-eclipse-config:/mosquitto/config/
- $$cap_appname-eclipse-data:/mosquitto/data/
- $$cap_appname-eclipse-log:/mosquitto/log/
ports: []
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_eclipse_version
label: Eclipes-Mosquitto Image Version
defaultValue: latest
validRegex: /^([^\s^\/])+$/
instructions:
start: Eclipse Mosquitto is an open source message broker which implements MQTT version 5, 3.1.1 and 3.1. Enter Parameters below
end: Eclipes-Mosquitto is deployed and available as srv-captain--$$cap_appname:1883 to other apps and srv-captain--$$cap_appname:9001 as a websocket.
displayName: Eclipse Mosquitto - A MQTT Broker
isOfficial: true
description: Eclipse Mosquitto is an open source message broker which implements MQTT version 5, 3.1.1 and 3.1
documentation: 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,50 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version
volumes:
- $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data
restart: always
environment:
CLI_JAVA_OPTS: -Xms512m -Xmx512m
cluster.name: $$cap_elasticsearch_cluster_name
discovery.type: $$cap_elasticsearch_discovery_type
http.port: $$cap_container_port
node.name: $$cap_appname
xpack.security.enabled: $$cap_elasticsearch_security_enabled
caproverExtra:
containerHttpPort: $$cap_container_port
caproverOneClickApp:
variables:
- id: $$cap_elasticsearch_version
label: 'Elasticsearch Version Tag'
description: 'Check out the releases overview: https://hub.docker.com/_/elasticsearch'
defaultValue: 8.4.1
validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_cluster_name
label: Cluster Name
description: Only nodes within the same cluster name can be combined
defaultValue: elasticsearch-cluster
validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_discovery_type
label: Discovery Type
description: Discovery type, for a single node cluster use `single-node`, otherwise `multi-node`
defaultValue: single-node
validRegex: /^([^\s^\/])+$/
- id: $$cap_elasticsearch_security_enabled
label: Security Enabled
defaultValue: 'false'
description: 'When you enable this option, Elasticsearch will create a random password (see startup logs) for the `elastic` user and create SSL certificates required for authentication. It is recommended to leave this off for a quick setup. Warning: make sure to enable HTTP Basic Auth in CapRover!'
validRegex: /^([^\s^\/])+$/
- id: $$cap_container_port
label: Container TCP Port
defaultValue: '9200'
description: Internal port for Elasticsearch the container listens to.
validRegex: /^([0-9])+$/
instructions:
start: 'Elasticsearch is a distributed, RESTful search and analytics engine. This image can be used for single nodes and cluster setups. IMPORTANT: Be sure to extend the virtual memory on all your hosts! (increase "echo ''vm.max_map_count=262144'' >> /etc/sysctl.conf" and restart "sysctl -p")'
end: 'Deployment of Elasticsearch is finished. You might see 502 errors for the next 2 minutes. Goto <YOUR-APP-URL>/_cat/health to check the health of your cluster. IMPORTANT: Be sure to extend the virtual memory on all your hosts! (increase "echo ''vm.max_map_count=262144'' >> /etc/sysctl.conf" and restart "sysctl -p")'
displayName: 'elasticsearch'
isOfficial: true
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,75 +0,0 @@
captainVersion: 4
services:
# Elkar
$$cap_appname:
image: elkarbackup/elkarbackup:$$cap_elkar_version
restart: always
environment:
TZ: $$cap_tz
PHP_TZ: $$cap_tz
EB_CRON: 'enabled'
SYMFONY__DATABASE__HOST: srv-captain--$$cap_appname-mariadb
SYMFONY__DATABASE__USER: $$cap_mariadb-user
SYMFONY__DATABASE__PASSWORD: $$cap_mariadb-pass
SYMFONY__DATABASE__NAME: $$cap_mariadb-db
volumes:
- $$cap_appname-backups:/app/backups
- $$cap_appname-uploads:/app/uploads
- $$cap_appname-ssh-keys:/app/.ssh
# MariaDB
$$cap_appname-mariadb:
image: mariadb:$$cap_mariadb_version
environment:
MYSQL_RANDOM_ROOT_PASSWORD: '1'
MYSQL_DATABASE: $$cap_mariadb-db
MYSQL_USER: $$cap_mariadb-user
MYSQL_PASSWORD: $$cap_mariadb-pass
volumes:
- $$cap_appname-mariadb-data:/var/lib/mysql
restart: unless-stopped
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_tz
label: Timezone
description: This is the timezone for the application, find yours at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: Europe/Brussels
- id: $$cap_elkar_version
label: Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/elkarbackup/elkarbackup/tags
defaultValue: '2'
- id: $$cap_mariadb_version
label: MariaDB Version
defaultValue: '10.6.2'
description: Check out their docker page for the valid tags https://hub.docker.com/r/library/mariadb/tags/
validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb-db
label: MariaDB Database
description: Database name for ElkarBackup
defaultValue: 'elkar'
- id: $$cap_mariadb-user
label: MariaDB User
description: Database User for ElkarBackup
defaultValue: 'elkar'
- id: $$cap_mariadb-pass
label: MariaDB database user password
description: Super secret database user password
instructions:
start: |-
Open source backup solution for your network.
Your login credentials are
Default user: root
Default password: root
end: |-
Aaaand you're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
Your login credentials are
Default user: root
Default password: root
displayName: Elkarbackup
isOfficial: true
description: Open source backup solution for your network.
documentation: https://docs.elkarbackup.org/docs/introduction.html

View File

@ -1,44 +0,0 @@
captainVersion: 4
services:
# EmailEngine
$$cap_appname:
depends_on:
- $$cap_appname-redis
image: postalsys/emailengine:$$cap_emailengine_version
restart: always
environment:
WAIT_HOSTS: srv-captain--$$cap_appname-redis:6379
EENGINE_REDIS: redis://:@srv-captain--$$cap_appname-redis:6379
caproverExtra:
containerHttpPort: '3000'
# Redis
$$cap_appname-redis:
image: redis:$$cap_redis_version
command: redis-server
volumes:
- $$cap_appname-db-data:/data/db
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_emailengine_version
label: EmailEngine Version
defaultValue: 'v2'
description: Check out their docker page for the valid tags https://hub.docker.com/r/postalsys/emailengine/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_redis_version
label: Redis Version
defaultValue: '7.0.2'
description: Check out their docker page for the valid tags https://hub.docker.com/_/redis?tab=tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
IMAP and SMTP are hard, so let EmailEngine handle these for you. Run REST API calls to interact with email servers and receive webhooks for changes on tracked email accounts. With EmailEngine, you can focus on building features that matter instead of spending time rolling custom IMAP and SMTP connectivity logic.
end: >-
You're done! 🤗
Your EmailEngine is available at http://$$cap_appname.$$cap_root_domain
displayName: 'EmailEngine'
isOfficial: true
description: Self-hosted application that opens a permanent IMAP connection against every registered email account to translate API requests to IMAP commands and monitor changes on these accounts.
documentation: Taken from https://hub.docker.com/r/postalsys/emailengine

View File

@ -1,37 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: grburst/etesync:$$cap_version
volumes:
- $$cap_appname-data:/data
restart: always
environment:
SUPER_USER: $$cap_SUPER_USER
SUPER_EMAIL: $$cap_SUPER_EMAIL
SUPER_PASS: $$cap_SUPER_PASS
caproverExtra:
containerHttpPort: '3735'
caproverOneClickApp:
variables:
- id: $$cap_version
label: version tag
description: Check out their docker page for the valid tags @ https://hub.docker.com/r/grburst/etesync
defaultValue: alpine
- id: $$cap_SUPER_USER
label: user name
description: etesync super user name
defaultValue: root
- id: $$cap_SUPER_EMAIL
label: email
description: etesync super user email
defaultValue: x@x.com
- id: $$cap_SUPER_PASS
label: password
description: etesync super user password
validRegex: /^([a-zA-Z0-9])+$/
instructions:
start: ETESync is a open source and privacy focused sync service
end: Deployment of ETEsync is finished. You might see 502 errors for the next 2 minutes. Goto <YOUR-APP-URL>/admin to manage your users for ETEsync.
displayName: ETESync
description: ETESync is a self hosted syncing solution, it is secure, end-to-end 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,52 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: etherpad/etherpad:$$cap_etherpad_version
depends_on:
- $$cap_appname-db
environment:
NODE_ENV: production
DB_TYPE: mysql
DB_HOST: srv-captain--$$cap_appname-db
DB_PORT: '3306'
DB_NAME: etherpad
DB_USER: etherpad
DB_PASS: $$cap_db_pass
DB_CHARSET: utf8mb4
TRUST_PROXY: 'true'
caproverExtra:
containerHttpPort: '9001'
$$cap_appname-db:
image: mysql:$$cap_mysql_version
volumes:
- $$cap_appname-db-data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: etherpad
MYSQL_USER: etherpad
MYSQL_PASSWORD: $$cap_db_pass
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_etherpad_version
label: Etherpad Docker Image
defaultValue: 1.8.0
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 2020-04-09
- id: $$cap_db_pass
label: Database password
description: ''
validRegex: /.{1,}/
- id: $$cap_mysql_version
label: MySQL Version
defaultValue: '5.7'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/library/mysql/tags/
validRegex: /^([^\s^\/])+$/
instructions:
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 available as srv-captain--$$cap_appname. Note that the application may take some time to become available.
displayName: Etherpad
isOfficial: true
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,75 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: kiliandeca/excalidraw@$$cap_excalidraw_version
restart: always
environment:
BACKEND_V2_GET_URL: https://$$cap_appname-storage.$$cap_root_domain/api/v2/scenes/
BACKEND_V2_POST_URL: https://$$cap_appname-storage.$$cap_root_domain/api/v2/scenes/
LIBRARY_URL: https://libraries.excalidraw.com
LIBRARY_BACKEND: https://us-central1-excalidraw-room-persistence.cloudfunctions.net/libraries
SOCKET_SERVER_URL: https://$$cap_appname-room.$$cap_root_domain/
STORAGE_BACKEND: 'https'
HTTP_STORAGE_BACKEND_URL: 'https://$$cap_appname-storage.$$cap_root_domain/api/v2'
depends_on:
- $$cap_appname-room
- $$cap_appname-storage-backend
$$cap_appname-room:
image: excalidraw/excalidraw-room
restart: always
$$cap_appname-storage-backend:
image: kiliandeca/excalidraw-storage-backend@$$cap_storage_backend_version
restart: always
environment:
STORAGE_URI: redis://srv-captain--$$cap_appname-redis:6379
STORAGE_TTL: 2592000000
depends_on:
- $$cap_appname-redis
caproverExtra:
containerHttpPort: '8080'
$$cap_appname-redis:
image: redis:$$cap_redis_version
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
volumes:
- $$cap_appname-redis-data:/data
caproverOneClickApp:
variables:
- id: $$cap_excalidraw_version
label: Excalidraw version
defaultValue: 'sha256:2fe5a14cc0aab940dcf6144a6a5e73b9d044bdf0148762f9c7bc0ceea424c872'
description: Check out this Docker page for any valid tags https://hub.docker.com/r/kiliandeca/excalidraw/tags
- id: $$cap_storage_backend_version
label: Excalidraw storage backend adapter version
defaultValue: 'sha256:dd01b5214ad2e24970bdc255e28b2921ab59b1db14dbb826979d1fdea1c5c20b'
description: Check out this Docker page for any valid tags https://hub.docker.com/r/kiliandeca/excalidraw-storage-backend/tags
- id: $$cap_redis_version
label: Redis Version
defaultValue: 7.0.3
description: Check out their Docker page for the valid tags https://hub.docker.com/_/redis?tab=tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
Excalidraw is a virtual whiteboard for sketching hand-drawn like diagrams or normal ones. It's collaborative and end-to-end encrypted.
For more documentation on the project go to: https://github.com/excalidraw/excalidraw#documentation
end: >
Excalidraw is deployed and available as $$cap_appname.
Before starting using Excalidraw, you'll need to
1) Enable HTTPS for $$cap_appname-room, $$cap_appname-storage and $$cap_appname apps.
2) Force HTTPS by redirecting all HTTP traffic to HTTPS for $$cap_appname-room, $$cap_appname-storage and $$cap_appname apps.
3) Enable Websocket in $$cap_appname-room, $$cap_appname-storage and $$cap_appname apps.
IMPORTANT: It will take up to 1 minutes for Excalidraw to be ready. Before that, you might see 502 error page.
displayName: 'Excalidraw'
isOfficial: false
description: Virtual whiteboard for sketching hand-drawn like diagrams or normal ones. Collaborative and end-to-end encrypted.
documentation: Taken from https://gitlab.com/kiliandeca/excalidraw-fork/-/blob/main/examples/docker-compose.yml

View File

@ -1,51 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
documentation: Taken from https://hub.docker.com/r/getfider/fider/
image: getfider/fider:$$cap_fider_version
restart: always
environment:
BASE_URL: '$$cap_appname.$$cap_root_domain'
DATABASE_URL: $$cap_db_url
JWT_SECRET: $$cap_gen_random_hex(16)
EMAIL_NOREPLY: $$cap_email_noreply
EMAIL_SMTP_HOST: $$cap_smtp_host
EMAIL_SMTP_PORT: $$cap_smtp_port
EMAIL_SMTP_USERNAME: $$cap_smtp_user
EMAIL_SMTP_PASSWORD: $$cap_smtp_pass
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_db_url
label: Fider database URL
description: Postgres database connection URL for Fider, for example "postgres://username:password@srv-captain--mypostgres:5432/fider?sslmode=disable"
- id: $$cap_fider_version
label: Fider Version
defaultValue: 0.21.1
description: https://hub.docker.com/r/getfider/fider/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_email_noreply
label: SMTP sender email
description: The sender email address for your outgoing mail
- id: $$cap_smtp_host
label: SMPT host
description: The host for your smtp server
- id: $$cap_smtp_port
label: SMTP port
description: The port for your smtp server
- id: $$cap_smtp_user
label: SMTP user
description: The user for your smtp server
- id: $$cap_smtp_pass
label: SMTP password
description: The password for your smtp server
instructions:
start: |-
Fider is a platform to collect and organize customer feedback. Let your customers share, vote and discuss on suggestions they have to make your product even better.
end: |-
Fider has been successfully deployed! Enable HTTPS after installation.
displayName: Fider - No Database
isOfficial: true
description: Fider is a platform to collect and organize customer feedback.
documentation: See https://getfider.com/docs/hosting-instance

View File

@ -1,57 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
volumes:
- $$cap_appname-database:/database
- $$cap_appname-files:/srv
restart: always
environment: {}
caproverExtra:
dockerfileLines:
- FROM alpine:latest as helper
- '# Similar to the original file, except, /database.db is inside a directory now so that we can assign a volume to it.'
- RUN echo "{'port':80,'baseURL':'','address':'','log':'stdout','database':'/database/database.db','root':'/srv'}" | sed "s/\'/\"/g" >/.edited.json
- FROM filebrowser/filebrowser:$$cap_filebrowser_version
- COPY --from=helper /.edited.json /.filebrowser.json
caproverOneClickApp:
variables:
- id: $$cap_filebrowser_version
label: File Browser Version Tag
description: 'Check out their Docker page for the valid tags: https://hub.docker.com/r/filebrowser/filebrowser/tags'
defaultValue: v2.22.4
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
filebrowser provides a file managing interface within a specified 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 have its own directory.
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.
end: >-
Important! Read this and take a screenshot so you can refer to it!
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:
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
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.
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.
displayName: 'filebrowser'
isOfficial: true
description: filebrowser provides a file managing interface within a specified directory and it can be used to upload, delete, preview, rename and edit your files with supports for multi users.
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,63 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: filerun/filerun:$$cap_wp_version
volumes:
- $$cap_appname-html:/var/www/html
- $$cap_appname-userfiles:/user-files
restart: always
environment:
FR_DB_HOST: $$cap_db_host
FR_DB_PORT: $$cap_db_port
FR_DB_NAME: $$cap_db_name
FR_DB_USER: $$cap_db_user
FR_DB_PASS: $$cap_db_pass
APACHE_RUN_USER: www-data
APACHE_RUN_USER_ID: 33
APACHE_RUN_GROUP: www-data
APACHE_RUN_GROUP_ID: 33
caproverOneClickApp:
variables:
- description: Database host. Remember Latest version of MYSQL use SHA256_Hashing plugin for authentication by default, If you are using MySQL database, change user password hashing plugin into Native authentication plugin.
defaultValue: srv-captain--xxx
id: $$cap_db_host
label: Database Host
- description: Database port. Default Value is 3306
defaultValue: '3306'
id: $$cap_db_port
label: Database Port
- description: Database name
defaultValue: filerun
id: $$cap_db_name
label: DB Name
- id: $$cap_db_user
label: Database user
defaultValue: filerunuser
- id: $$cap_db_pass
label: Database password
description: ''
validRegex: /.{1,}/
- id: $$cap_wp_version
label: Filerun Version.
defaultValue: 'latest'
description: Use 'latest' tag for normal installation. Check out their Docker page for the valid tags https://hub.docker.com/r/filerun/filerun/tags
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
FileRun is a self-hosted Google Drive alternative. It is a full featured web based file manager with an easy to use user interface. It is great for managing your photo, movie, audio collection, or sharing files with your family and friends.
Enter your Database Configuration parameters and click on next. A FileRun 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. You should start by configuring your DB first and then comeback with all the DB Information.
end: >-
FileRun is deployed and available as $$cap_appname-wordpress.
Username: superuser Password: superuser
IMPORTANT: It will take up to 2 minutes for FileRun 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.
displayName: FileRun - No DB
isOfficial: true
description: FileRun is a self-hosted Google Drive alternative. It is a full featured web based file manager with an easy to use user interface.
documentation: Taken from https://hub.docker.com/r/filerun/filerun/.

View File

@ -1,21 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: machines/filestash:$$cap_filestash_version
volumes:
- $$cap_appname-app-data-state:/app/data/state
restart: always
caproverExtra:
containerHttpPort: '8334'
caproverOneClickApp:
variables:
- id: $$cap_filestash_version
label: Filestash Version
defaultValue: b7b45f2
description: Check out their Docker page for the valid tags https://hub.docker.com/r/machines/filestash/tags
instructions:
start: Filestash is a modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze...
end: Filestash is deployed and available as srv-captain--$$cap_appname-db:8334 to other apps.
displayName: Filestash
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,37 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: linuxserver/filezilla:$$cap_fz_version
environment:
TZ: $$cap_tz
PUID: '1000'
PGID: '1000'
restart: unless-stopped
volumes:
- $$cap_appname-config:/config
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_fz_version
label: Filezilla Version
defaultValue: 3.51.0-r1-ls6
description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/filezilla/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_tz
label: Time Zone
defaultValue: Asia/Kolkata
description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: /.{1,}/
instructions:
start: >-
FIleZilla Client is a fast and reliable cross-platform FTP, FTPS and SFTP client with lots of useful features and an intuitive graphical user interface.
end: >-
Filezilla is deployed and available as http://$$cap_appname.$$cap_root_domain.
IMPORTANT!! You need to enable websocket support.
The default username/password is abc/abc.
By default the user/pass is abc/abc, if you change your password or want to login manually to the GUI session for any reason use the following link: http://$$cap_appname.$$cap_root_domain/?login=true
displayName: Filezilla
isOfficial: true
description: FileZilla is a free and open-source, cross-platform FTP application
documentation: Taken from https://hub.docker.com/r/linuxserver/filezilla.

View File

@ -1,71 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: fireflyiii/core:$$cap_firefly_version
volumes:
- $$cap_appname-export:/var/www/firefly-iii/storage/export
- $$cap_appname-upload:/var/www/firefly-iii/storage/upload
restart: always
depends_on:
- $$cap_appname-db
environment:
SITE_OWNER: $$cap_firefly_site-owner
TZ: $$cap_firefly_time-zone
TRUSTED_PROXIES: '**'
DB_CONNECTION: mysql
DB_PORT: 3306
DB_DATABASE: firefly
DB_USERNAME: firefly
DB_HOST: srv-captain--$$cap_appname-db
DB_PASSWORD: $$cap_mariadb_password
APP_KEY: $$cap_firefly_app-key
caproverExtra:
containerHttpPort: '8080'
$$cap_appname-db:
image: mariadb:$$cap_mariadb_version
volumes:
- $$cap_appname-db-data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: $$cap_mariadb_password
MYSQL_DATABASE: firefly
MYSQL_USER: firefly
MYSQL_PASSWORD: $$cap_mariadb_password
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_mariadb_version
label: Mariadb Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/_/mariadb?tab=tags
defaultValue: 10.5.4
validRegex: /^([^\s^\/])+$/
- id: $$cap_mariadb_password
label: Mariadb Password
description: The password of the Mariadb Database"
validRegex: /.{1,}/
- id: $$cap_firefly_version
label: Firefly Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/fireflyiii/core/tags
defaultValue: version-5.5.13
validRegex: /^([^\s^\/])+$/
- id: $$cap_firefly_site-owner
label: Firefly Site Owner Mail
description: The email address of the owner of the app.
validRegex: /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/
- id: $$cap_firefly_time-zone
label: Time zone
description: The preferred time zone. Check out the available time zone on https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: Europe/Brussels
validRegex: /.{1,}/
- id: $$cap_firefly_app-key
label: Firefly APP KEY
description: The key from which everything is encrypted. Generate one on https://passwordsgenerator.net/?length=32&symbols=0&numbers=1&lowercase=1&uppercase=1&similar=0&ambiguous=0&client=1&autoselect=0
defaultValue: qSAY3tVhAHgz87gusKFoPbg9hpCnMVTR
validRegex: /^[A-Za-z0-9]{32}$/
instructions:
start: Enter your Firefly III Configuration parameters and click on next. It will take about a minute for the process to finish.
end: Firefly III is deployed and available from the url 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,46 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: fireflyiii/data-importer:$$cap_fidi_version
environment:
FIREFLY_III_ACCESS_TOKEN: $$cap_ff_token
FIREFLY_III_URL: $$cap_ff_url
NORDIGEN_ID: $$cap_nordigen_id
NORDIGEN_KEY: $$cap_nordigen_key
SPECTRE_APP_ID: $$cap_spectre_app_id
SPECTRE_SECRET: $$cap_spectre_secret
hostname: $$cap_appname.$$cap_root_domain
caproverExtra:
containerHttpPort: '8080'
caproverOneClickApp:
variables:
- id: $$cap_fidi_version
label: FIDI Version
defaultValue: version-v1.0.1
description: Check out their Docker page for the valid tags https://hub.docker.com/r/fireflyiii/data-importer/tags
- id: $$cap_ff_token
label: Firefly III Access Token
- id: $$cap_ff_url
label: Firefly III URL
description: Your Firefly III instance URL
- id: $$cap_nordigen_id
label: Nordigen ID
description: Your Nordigen ID (optional)
- id: $$cap_nordigen_key
label: Nordigen Key
description: Your Nordigen Key (optional)
- id: $$cap_spectre_app_id
label: Spectre App ID (optional)
description: Your Spectre App ID (optional)
- id: $$cap_spectre_secret
label: Spectre Secret
description: Your Spectre Secret (optional)
instructions:
start: >-
Firefly III Data Importer (FIDI) is a tool to import data into Firefly III. Read more about it here: https://docs.firefly-iii.org/data-importer/
end: >-
Firefly III Data Importer (FIDI) has been successfully deployed.
displayName: Firefly III Data Importer
isOfficial: true
description: Firefly III Data Importer (FIDI) is a tool to import data into Firefly III.
documentation: Taken from https://hub.docker.com/r/fireflyiii/data-importer.

View File

@ -1,44 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
documentation: https://docs.linuxserver.io/images/docker-firefox
image: lscr.io/linuxserver/firefox:$$cap_firefox_version
restart: always
volumes:
- $$cap_appname-config:/config
environment:
PUID: $$cap_puid
PGID: $$cap_pgid
TZ: $$cap_tz
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_firefox_version
label: Firefox Version
defaultValue: '78.13.0'
description: firefox Image Version, se more at https://hub.docker.com/r/linuxserver/firefox/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_puid
label: PUID
defaultValue: 1000
validRegex: /^[0-9]+$/
description: For UserID. Ensure any volume directories on the host are owned by the same user you specify. Default to 1000 se more at https://docs.linuxserver.io/images/docker-firefox#user-group-identifiers
- id: $$cap_pgid
label: PGID
defaultValue: 1000
validRegex: /^[0-9]+$/
description: For GroupID. Ensure any volume directories on the host are owned by the same user you specify. Default to 1000, see more at https://docs.linuxserver.io/images/docker-firefox#user-group-identifiers
- id: $$cap_tz
label: Timezone
defaultValue: 'UTC'
description: Timezone. Specify a timezone to use EG Europe/London
instructions:
start: >-
Firefox Browser, also known as Mozilla Firefox or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. Firefox uses the Gecko layout engine to render web pages, which implements current and anticipated web standards.
end: >-
You need enable Websocket Support to run FireFox. The application can be accessed at: http://$$cap_appname.$$cap_root_domain. By default the user/pass is abc/abc, if you change your password or want to login manually to the GUI session for any reason use the following link: http://$$cap_appname.$$cap_root_domain/?login=true
displayName: Firefox
isOfficial: false
description: get running FireFox browser from your web browser!
documentation: https://docs.linuxserver.io/images/docker-firefox

View File

@ -1,56 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: postgres:$$cap_postgres_version
volumes:
- '$$cap_appname-db-data:/var/lib/postgresql/data'
restart: unless-stopped
environment:
POSTGRES_USER: flagsmith
POSTGRES_PASSWORD: $$cap_postgres_password
POSTGRES_DB: $$cap_postgres_db
caproverExtra:
notExposeAsWebApp: true
$$cap_appname:
image: flagsmith/flagsmith:$$cap_flagsmith_tag
depends_on:
- $$cap_appname-db
restart: unless-stopped
environment:
DATABASE_URL: postgres://flagsmith:$$cap_postgres_password@srv-captain--$$cap_appname-db/$$cap_postgres_db?sslmode=disable
DJANGO_ALLOWED_HOSTS: '*'
caproverExtra:
containerHttpPort: '8000'
caproverOneClickApp:
variables:
- id: $$cap_postgres_version
label: Postgres Version
defaultValue: '13.1'
- id: $$cap_postgres_db
label: Postgres DB
defaultValue: 'flagsmith'
- id: $$cap_postgres_password
label: Postgres Password
defaultValue: $$cap_gen_random_hex(16)
validRegex: /^(?=.*\d).{10,}$/
- id: $$cap_flagsmith_tag
label: Flagsmith Version
defaultValue: '2.14.3'
description: Check out our docker page for the valid tags https://hub.docker.com/r/flagsmith/flagsmith/tags
instructions:
start: >-
Flagsmith - an open source, fully featured, Feature Flag and Remote Config service. Use our hosted API, deploy to your own private cloud, or run on-premise.
For more info visit https://flagsmith.com/
end: |-
Flagsmith has been successfully deployed!
App is available as http://$$cap_appname.$$cap_root_domain
displayName: Flagsmith
isOfficial: true
description: >-
Flagsmith - an open source, fully featured, Feature Flag and Remote Config service. Use our hosted API, deploy to your own private cloud, or run on-premise.
documentation: >-
This docker-compose is taken from https://github.com/Flagsmith/self-hosted/blob/master/docker-compose.yml

View File

@ -1,66 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: postgres:$$cap_postgres_version
environment:
POSTGRES_DB: $$cap_postgres_db
POSTGRES_USER: $$cap_postgres_user
POSTGRES_PASSWORD: $$cap_postgres_password
volumes:
- '$$cap_appname-db-data:/var/lib/postgresql/data'
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
environment:
CONFIG_JSON: '{"serverRoot":"http://srv-captain--$$cap_appname:8000","port":8000,"dbtype":"postgres","dbconfig":"postgres://$$cap_postgres_user:$$cap_postgres_password@srv-captain--$$cap_appname-db/$$cap_postgres_db?sslmode=disable&connect_timeout=10","postgres_dbconfig":"dbname=$$cap_postgres_db sslmode=disable","useSSL":false,"webpath":"./pack","filespath":"./files","telemetry":false,"session_expire_time":2592000,"session_refresh_time":18000,"localOnly":false,"enableLocalMode":true,"localModeSocketLocation":"/var/tmp/focalboard_local.socket"}'
depends_on:
- $$cap_appname-db
caproverExtra:
containerHttpPort: '8000'
dockerfileLines:
- FROM mattermost/focalboard:$$cap_focalboard_version
- CMD printenv CONFIG_JSON > /opt/focalboard/config.json && /opt/focalboard/bin/focalboard-server
caproverOneClickApp:
variables:
- id: $$cap_focalboard_version
label: Focalboard Version
defaultValue: 0.6.5
description: 'Check out their docker page for the valid tags https://hub.docker.com/r/mattermost/focalboard/tags'
- id: $$cap_postgres_version
label: Postgres Version
defaultValue: 9.6.21
description: 'Check out their docker page for the valid tags https://hub.docker.com/_/postgres?tab=tags'
- id: $$cap_postgres_db
label: Postgres Database
defaultValue: boards
- id: $$cap_postgres_user
label: Postgres User
defaultValue: boardsuser
- id: $$cap_postgres_password
label: Postgres Password
defaultValue: $$cap_gen_random_hex(16)
instructions:
start: >-
Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana.
For more info visit https://www.focalboard.com/
end: |-
Focalboard has been successfully deployed!
--------------------------------------------
Before you proceed, please enable Websocket Support
https://$$cap_root_domain/#/apps/details/$$cap_appname
--------------------------------------------
App is available as http://$$cap_appname.$$cap_root_domain
displayName: Focalboard
isOfficial: false
description: >-
Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana.
documentation: >-
This docker-compose is taken from
https://github.com/mattermost/focalboard/blob/main/docker/docker-compose-db-nginx.yml

View File

@ -1,108 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: itzg/minecraft-server:$$java_version
environment:
EULA: 'true'
TYPE: '$$server_type'
VERSION: '$$cap_minecraft_version'
FORGE_VERSION: '$$cap_forge_version'
MAX_PLAYERS: '$$cap_max_players'
MODE: '$$cap_game_mode'
MAX_MEMORY: '$$cap_max_ramG'
SERVER_NAME: '$$cap_display_name'
MOTD: '$$cap_display_description'
ONLINE_MODE: '$$cap_online_mode'
RCON_PASSWORD: '$$cap_rcon_password'
CF_API_KEY: '$$cap_cf_api_key'
CF_PAGE_URL: '$$cap_cf_page_url'
ports:
- '$$cap_mc_port:25565'
volumes:
- $$cap_appname-data:/data
stdin_open: true
tty: true
restart: unless-stopped
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-web:
image: itzg/rcon:multiarch
environment:
RWA_USERNAME: $$cap_web_username
RWA_PASSWORD: $$cap_web_password
RWA_ADMIN: 'TRUE'
RWA_RCON_HOST: srv-captain--$$cap_appname
RWA_RCON_PASSWORD: $$cap_rcon_password
ports:
- 4327:4327
caproverExtra:
containerHttpPort: '4326'
caproverOneClickApp:
variables:
- id: $$cap_appname
label: service name
defaultValue: minecraft
- id: $$java_version
label: Java version
description: 'Chose the Java version to run the server with. Look in the documentation for different versions: https://github.com/itzg/docker-minecraft-server#running-minecraft-server-on-different-java-version'
validRegex: /^(latest|java8|java8-jdk|java8-multiarch|java8-openj9|java8-graalvm-ce|java11|java11-jdk|java11-openj9|java17|java17-jdk|java17-openj9|java17-graalvm-ce|java17-alpine|java20)$/
defaultValue: java20
- id: $$cap_minecraft_version
label: Minecraft version
defaultValue: 1.20.1
- id: $$cap_forge_version
label: forge server version
description: 'Choose the version that works with your mc version , see: https://files.minecraftforge.net/'
defaultValue: 47.0.46
- id: $$server_type
label: Server type
description: 'Chose one of the server types from supported ones: https://github.com/itzg/docker-minecraft-server#server-types'
validRegex: /^(MAGMA|FORGE|FABRIC|QUILT|BUKKIT|SPIGOT|PAPER|FOLIA|PUFFERFISH|PURPUR|MOHIST|CATSERVER|CANYON|SPONGEVANILLA|LIMBO|CRUCIBLE|MODRINTH|FTBA|AUTO_CURSEFORGE|CURSEFORGE)$/
defaultValue: 'FORGE'
- id: $$cap_cf_api_key
label: CurseForge API Key. Necessary only when you use AUTO_CURSEFORGE server type.
- id: $$cap_cf_page_url
label: CurseForge page url. Necessary only when you use AUTO_CURSEFORGE server type.
- id: $$cap_mc_port
label: Service port
description: 'Choose "25565" if you want to connect directly to the servers domain without any port specification.'
defaultValue: 25565
validRegex: /.{1,}/
- id: $$cap_web_username
label: admin portal username
defaultValue: 'admin'
- id: $$cap_web_password
label: admin portal password.
defaultValue: $$cap_gen_random_hex(8)
- id: $$cap_rcon_password
label: Rcon cli password
defaultValue: $$cap_gen_random_hex(8)
- id: $$cap_max_ram
label: Max RAM (GB)
defaultValue: 8
validRegex: /.{1,}/
- id: $$cap_display_name
label: server displayed name
defaultValue: Minecraft server
- id: $$cap_display_description
label: server displayed description
defaultValue: Minecraft server powered by docker
- id: $$cap_online_mode
label: online mode
defaultValue: 'FALSE'
validRegex: /^(TRUE|FALSE)$/
- id: $$cap_game_mode
label: game mode
defaultValue: survival
validRegex: /^(creative|survival|adventure|spectator)$/
- id: $$cap_max_players
label: Max no of players
defaultValue: 20
validRegex: /.{1,}/
instructions:
start: Minecraft server with dynamic server types and modpack support. This is oneclickapp in the any of itzg's Minecraft server version.
end: Minecraft is deployed and available as srv-captain--$$cap_appname. Note that the application may take up to ten minutes to become available.
displayName: Dynamic Minecraft itzg server
isOfficial: false
description: Minecraft server with dynamic versions and types.
documentation: https://github.com/itzg/docker-minecraft-server

View File

@ -1,89 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: 3068
image: ghcr.io/formancehq/ledger:$$cap_FORMANCE_LEDGER_VERSION
environment:
NUMARY_STORAGE_DRIVER: postgres
NUMARY_STORAGE_POSTGRES_CONN_STRING: postgresql://$$cap_POSTGRES_USER:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-db/$$cap_POSTGRES_DB
NUMARY_SERVER_HTTP_BIND_ADDRESS: '0.0.0.0:3068'
NUMARY_SEGMENT_ENABLED: $$cap_FORMANCE_LEDGER_SEGMENT_ENABLED
NUMARY_AUTH_BASIC_ENABLED: $$cap_FORMANCE_LEDGER_AUTH_BASIC_ENABLED
NUMARY_AUTH_BASIC_CREDENTIALS: $$cap_FORMANCE_LEDGER_AUTH_BASIC_CREDENTIALS
volumes:
- $$cap_appname:/root/.numary
depends_on:
- $$cap_appname-db
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
volumes:
- $$cap_appname-db:/var/lib/postgresql/data
$$cap_appname-ui:
caproverExtra:
containerHttpPort: 3078
dockerfileLines:
- FROM ghcr.io/formancehq/ledger:$$cap_FORMANCE_LEDGER_VERSION
- CMD ["ui"]
environment:
NUMARY_UI_HTTP_BIND_ADDRESS: '0.0.0.0:3078'
depends_on:
- $$cap_appname
caproverOneClickApp:
instructions:
start: |-
Formance Ledger lets you model and record complex money movements, helping you accelerate your business operations.
Build financial dashboards, deliver payments to your marketplace partners, and accurately track revenue across your entire operation.
end: |-
Formance Ledger has been successfully deployed! It might take few moments before it's fully started.
You can access the ledger API at `http://$$cap_appname.$$cap_root_domain` and the control panel at `http://$$cap_appname-ui.$$cap_root_domain`.
displayName: Formance Ledger
isOfficial: true
description: Programmable Financial Ledger To Build Money-Moving Applications
documentation: https://docs.formance.com
variables:
- id: $$cap_FORMANCE_LEDGER_VERSION
label: Application | Version
description: Version of Formance. Check out their valid tags at https://github.com/formancehq/ledger/pkgs/container/ledger
defaultValue: v1.8.0
validRegex: /.{1,}/
- id: $$cap_FORMANCE_LEDGER_AUTH_BASIC_ENABLED
label: Application | Enable Basic Authentication
description: Whether to use basic authentication to protect your ledger.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_FORMANCE_LEDGER_AUTH_BASIC_CREDENTIALS
label: Application | Basic Authentication Credentials
description: Basic authentication credentials, when enabled. Format is `username:password`.
defaultValue: administrator:$$cap_gen_random_hex(16)
- id: $$cap_FORMANCE_LEDGER_SEGMENT_ENABLED
label: Application | Enable Segment
description: Whether to send usage statistics to Segment.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_POSTGRES_VERSION
label: Database | Version
description: Version of PostgreSQL. Check out their valid tags at https://hub.docker.com/_/postgres/tags
defaultValue: '14.0-alpine'
validRegex: /.{1,}/
- id: $$cap_POSTGRES_DB
label: Database | Name
description: Name of the database.
defaultValue: formance
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: Database | User Name
description: Name of the database user.
defaultValue: formance
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PASSWORD
label: Database | User Password
description: Password of the database user.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/

View File

@ -1,58 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: postgres:$$cap_postgres_version
volumes:
- '$$cap_appname-db-data:/var/lib/postgresql/data'
restart: unless-stopped
environment:
POSTGRES_USER: formbricks
POSTGRES_PASSWORD: $$cap_postgres_password
POSTGRES_DB: $$cap_postgres_db
caproverExtra:
notExposeAsWebApp: true
$$cap_appname:
image: formbricks/formbricks:$$cap_formbricks_tag
depends_on:
- $$cap_appname-db
restart: unless-stopped
environment:
DATABASE_URL: postgres://formbricks:$$cap_postgres_password@srv-captain--$$cap_appname-db/$$cap_postgres_db?sslmode=disable
WEBAPP_URL: https://$$cap_appname.$$cap_root_domain/
NEXTAUTH_SECRET: $$cap_gen_random_hex(32)
NEXTAUTH_URL: https://$$cap_appname.$$cap_root_domain/
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_postgres_version
label: Postgres Version
defaultValue: '13.1'
- id: $$cap_postgres_db
label: Postgres DB
defaultValue: 'formbricks'
- id: $$cap_postgres_password
label: Postgres Password
defaultValue: $$cap_gen_random_hex(16)
validRegex: /^(?=.*\d).{10,}$/
- id: $$cap_formbricks_tag
label: Formbricks Version
defaultValue: '1.0.2'
description: Check out our docker page for the valid tags https://hub.docker.com/r/formbricks/formbricks/tags
instructions:
start: >-
Formbricks - The Open Source Survey & Experience Management solution for fast growing companies
For more info visit https://formbricks.com/
end: |-
Formbricks has been successfully deployed!
App is available as http://$$cap_appname.$$cap_root_domain
displayName: Formbricks
isOfficial: true
description: >-
Formbricks - The Open Source Survey & Experience Management solution for fast growing companies
documentation: >-
This docker-compose reference is at https://github.com/formbricks/formbricks/blob/main/docker/docker-compose.yml

View File

@ -1,73 +0,0 @@
captainVersion: 4
services:
$$cap_appname-mongodb:
documentation: Taken from https://hub.docker.com/_/mongo
image: mongo:$$cap_mongo_version
volumes:
- $$cap_appname-db-data:/data/db
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
documentation: Taken from https://hub.docker.com/r/calipseo/formio
depends_on:
- $$cap_appname-mongodb
image: calipseo/formio:$$cap_formio_version
volumes:
- $$cap_appname-data:/app
restart: always
environment:
APP_URL: 'https://$$cap_appname.$$cap_root_domain'
API_URL: 'https://$$cap_appname.$$cap_root_domain'
MONGO: mongodb://srv-captain--$$cap_appname-mongodb:27017/formio
ROOT_EMAIL: $$cap_admin_email
ROOT_PASSWORD: $$cap_admin_pass
SMTP_HOST: $$cap_smtp_host
SMTP_PORT: $$cap_smtp_port
SMTP_USERNAME: $$cap_smtp_user
SMTP_PASSWORD: $$cap_smtp_pass
caproverExtra:
containerHttpPort: '3001'
caproverOneClickApp:
variables:
- id: $$cap_admin_email
label: Formio default admin email
defaultValue: admin@example.com
description: Admin email for Formio.
validRegex: /.{1,}/
- id: $$cap_admin_pass
label: admin password
description: Password for the admin user.
validRegex: /.{1,}/
- id: $$cap_formio_version
label: Formio Version
defaultValue: 1.90.7
description: https://hub.docker.com/r/calipseo/formio/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_mongo_version
label: Mongo (database) version
defaultValue: 4.1
description: Check out their Docker page for the valid tags https://hub.docker.com/_/mongo?tab=tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_smtp_host
label: SMPT host
description: The host for your smtp server
- id: $$cap_smtp_port
label: SMTP port
description: The port for your smtp server
- id: $$cap_smtp_user
label: SMTP user
description: The user for your smtp server
- id: $$cap_smtp_pass
label: SMTP password
description: The password for your smtp server
instructions:
start: |-
<form.io> is a combined Form and Data Management platform for form-based Progressive web applications.
The process will deploy a database, the API and form manager.
end: |-
Formio has been successfully deployed!
displayName: Formio
isOfficial: false
description: <form.io> is a combined Form and Data Management platform for form-based Progressive web applications.
documentation: See https://github.com/formio/formio

View File

@ -1,80 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: felddy/foundryvtt:$$cap_foundry_version
environment:
FOUNDRY_USERNAME: $$cap_foundry_username
FOUNDRY_PASSWORD: $$cap_foundry_password
FOUNDRY_ADMIN_KEY: $$cap_foundry_admin_key
FOUNDRY_PROXY_SSL: $$cap_foundry_proxy_ssl
FOUNDRY_MINIFY_STATIC_FILES: $$cap_foundry_minify_static_files
CONTAINER_CACHE: $$cap_foundry_container_cache
TIMEZONE: $$cap_foundry_timezone
caproverExtra:
containerHttpPort: '30000'
volumes:
- $$cap_appname:/data
caproverOneClickApp:
variables:
- id: $$cap_foundry_version
label: Foundry VTT Version
defaultValue: '0.8.9'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/felddy/foundryvtt/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_foundry_username
label: Username
defaultValue: 'user'
description: Account username or email address for foundryvtt.com. Required for downloading an application distribution.
validRegex: /.{1,}/
- id: $$cap_foundry_password
label: Password
defaultValue: 'password'
description: Account password for foundryvtt.com. Required for downloading an application distribution.
validRegex: /.{1,}/
- id: $$cap_foundry_admin_key
label: Admin password
description: Admin password to be applied at startup. If omitted the admin password will be cleared.
- id: $$cap_foundry_proxy_ssl
label: Proxy SSL
defaultValue: 'true'
description: Indicates whether the software is running behind a reverse proxy that uses SSL. This allows invitation links and A/V functionality to work as if the Foundry Server had SSL configured directly. CapRover has built-in reverse proxy.
validRegex: /.{1,}/
- id: $$cap_foundry_minify_static_files
label: Minify static?
defaultValue: 'true'
description: Set to true to reduce network traffic by serving minified static JavaScript and CSS files. Enabling this setting is recommended for most users, but module developers may wish to disable it.
validRegex: /.{1,}/
- id: $$cap_foundry_container_cache
label: Cache path
defaultValue: '/data/container_cache'
description: Set a path to cache downloads of the Foundry distribution archive and speed up subsequent container startups. The path should be in /data or another persistent mount point in the container. e.g.; /data/container_cache
- id: $$cap_foundry_timezone
label: Timezone
defaultValue: 'UTC'
description: Container TZ database name https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
validRegex: /.{1,}/
instructions:
start: >-
Foundry Virtual Tabletop is an application for organizing and running tabletop roleplaying games in a beautiful and intuitive web-based application.
Foundry VTT is designed to modernize and simplify the virtual tabletop creation process while providing great user experience for both players and game-masters.
Foundry VTT is available for purchase from https://foundryvtt.com
You can get a Foundry Virtual Tabletop instance up and running in minutes using this container. This Docker container is designed to be secure, reliable, compact, and simple to use. It only requires that you provide the credentials or URL needed to download a Foundry Virtual Tabletop distribution.
Prerequisites:
A FoundryVTT.com account with a purchased software license.
end: >-
Foundry VTT has been successfully deployed. Please wait while Foundry downloads and installs latest version (could take some time depending on your internet and Foundry servers proximity).
You HAVE TO enable Websocket Support in HTTP settings page.
displayName: Foundry Virtual Tabletop
isOfficial: false
description: Foundry VTT is an application built for experiencing multiplayer tabletop RPGs where your players connect directly through the browser. REQUIRES LICENCE
documentation: Taken from https://github.com/felddy/foundryvtt-docker

View File

@ -1,118 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgresql:
environment:
POSTGRES_PORT: 5432
POSTGRES_USER: $$cap_freshrss_POSTGRESQL_USER
POSTGRES_PASSWORD: $$cap_freshrss_POSTGRESQL_PASS
image: postgres:$$cap_fresrss_psql_version
restart: always
volumes:
- $$cap_appname-postgresql-data:/var/lib/postgresql/data
caproverExtra:
notExposeAsWebApp: true
'$$cap_appname':
image: freshrss/freshrss:$$cap_version
environment:
TZ: '$$cap_tz'
CRON_MIN: '$$cap_cron'
FRESHRSS_ENV: '$$cap_env'
PUBLISHED_PORT: '80'
ADMIN_EMAIL: '$$cap_admin_email'
ADMIN_PASSWORD: '$$cap_admin_pass'
ADMIN_API_PASSWORD: '$$cap_api_pass'
DB_HOST: srv-captain--$$cap_appname-postgresql
DB_BASE: $$cap_freshrss_POSTGRESQL_DB
DB_PASSWORD: $$cap_freshrss_POSTGRESQL_PASS
DB_USER: $$cap_freshrss_POSTGRESQL_USER
FRESHRSS_INSTALL: |-
--api_enabled
--base_url https://$$cap_appname.$$cap_root_domain
--db-base $$cap_freshrss_POSTGRESQL_DB
--db-host srv-captain--$$cap_appname-postgresql
--db-password $$cap_freshrss_POSTGRESQL_PASS
--db-type pgsql
--db-user $$cap_freshrss_POSTGRESQL_USER
--default_user admin
--language en
FRESHRSS_USER: |-
--api_password $$cap_api_pass
--email $$cap_admin_email
--language en
--password $$cap_admin_pass
--user admin
volumes:
- '$$cap_appname-data:/var/www/FreshRSS/data'
- '$$cap_appname-extensions:/var/www/FreshRSS/extensions'
depends_on:
- $$cap_appname-postgresql
caproverExtra:
containerHttpPort: '80'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: FreshRSS Version
defaultValue: '1.20.0'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/freshrss/freshrss/tags
validRegex: "/^([^\\s^\\/])+$/"
- id: '$$cap_tz'
label: Time Zone
defaultValue: Europe/Vienna
description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
validRegex: '/.{1,}/'
- id: '$$cap_cron'
label: Cron Minutes
defaultValue: '2,32'
description: a valid cron minute definition such as '13,43' (recommended) or '*/20'. Not passing the CRON_MIN environment variable or setting it to empty string will disable the cron daemon.
- id: '$$cap_env'
label: Environment
defaultValue: 'production'
description: Enables additional development information if set to development (increases the level of logging and ensures that errors are displayed)
- id: '$$cap_admin_email'
label: Admin Email
defaultValue: 'admin@example.net'
description: Email Address for Admin login
- id: $$cap_admin_pass
label: Admin Password
defaultValue: $$cap_gen_random_hex(15)
description: 'The password of the admin user.'
validRegex: /.{1,}/
- id: $$cap_api_pass
label: API Password
defaultValue: $$cap_gen_random_hex(15)
description: 'The password of the admin API.'
validRegex: /.{1,}/
- id: '$$cap_fresrss_psql_version'
label: PotgreSQL Version
defaultValue: '15.0'
description: Check out their Docker page for the valid tags https://hub.docker.com/_/postgres/tags
validRegex: "/^([^\\s^\\/])+$/"
- id: $$cap_freshrss_POSTGRESQL_USER
label: POSTGRESQL_USER
defaultValue: postgresuser
validRegex: /^([a-zA-Z0-9\-\.\_])+$/
- id: $$cap_freshrss_POSTGRESQL_PASS
label: POSTGRESQL_PASS
defaultValue: $$cap_gen_random_hex(10)
description: 'The password of freshrsss database user.'
validRegex: /.{1,}/
- id: $$cap_freshrss_POSTGRESQL_DB
label: POSTGRESQL_DB
defaultValue: freshrss_production
validRegex: /^([a-zA-Z0-9\-\.\_])+$/
instructions:
start: |-
FreshRSS is a self-hosted RSS feed aggregator like Leed or Kriss Feed.
It is lightweight, easy to work with, powerful, and customizable.
More details: https://github.com/FreshRSS/FreshRSS
end: |-
FreshRSS has been successfully deployed!
displayName: FreshRSS
isOfficial: true
description: FreshRSS is a self-hosted RSS feed aggregator like Leed or Kriss Feed.
documentation: See https://github.com/FreshRSS/FreshRSS

View File

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

View File

@ -1,113 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
environment:
GHOST_DATABASE_NAME: $$cap_ghost_database_name
GHOST_DATABASE_PASSWORD: $$cap_ghost_database_password
GHOST_DATABASE_USER: $$cap_ghost_database_user
GHOST_EMAIL: $$cap_ghost_email
GHOST_HOST: $$cap_ghost_host
GHOST_PASSWORD: $$cap_ghost_password
GHOST_ENABLE_HTTPS: $$cap_ghost_protocol
GHOST_PORT_NUMBER: $$cap_ghost_port
GHOST_DATABASE_HOST: $$cap_db_host
GHOST_DATABASE_PORT_NUMBER: $$cap_db_port_number
GHOST_SMTP_FROM_ADDRESS: $$cap_ghost_smtp_from
GHOST_SMTP_HOST: $$cap_ghost_smtp_host
GHOST_SMTP_PASSWORD: $$cap_ghost_smtp_password
GHOST_SMTP_PORT: $$cap_ghost_smtp_port
GHOST_SMTP_USER: $$cap_ghost_smtp_user
GHOST_SMTP_PROTOCOL: $$cap_ghost_smtp_protocol
image: bitnami/ghost:$$cap_ghost_version
restart: always
volumes:
- $$cap_appname-data:/bitnami/ghost
caproverExtra:
containerHttpPort: '2368'
caproverOneClickApp:
variables:
- defaultValue: 5.2.2
description: Check out their Docker page for the valid tags https://hub.docker.com/r/bitnami/ghost/tags
id: $$cap_ghost_version
label: Ghost Version
validRegex: /^([^\s^\/])+$/
- description: DB Host
defaultValue: localhost
id: $$cap_db_host
label: DB Host
- description: DB port
defaultValue: '3306'
id: $$cap_db_port_number
label: DB port
- description: Database name
defaultValue: ghost
id: $$cap_ghost_database_name
label: Ghost Database name
validRegex: /^([^\s^\/])+$/
- description: User for database
id: $$cap_ghost_database_user
label: DB User
validRegex: /^([^\s^\/])+$/
- description: Password for database
id: $$cap_ghost_database_password
label: Ghost DB password
validRegex: /^(?=.*\d).{10,}$/
- defaultValue: youremail@example.com
description: Ghost administrator email, you will use it to login
id: $$cap_ghost_email
label: Ghost email
validRegex: /^([^\s^\/])+$/
- description: The admin password must be at least 10 characters, and at least one number and letter
id: $$cap_ghost_password
label: Ghost password
validRegex: /^(?=.*\d).{10,}$/
- defaultValue: blog.example.com
description: Enter the URL that is used to access your publication
id: $$cap_ghost_host
label: Ghost Host
validRegex: /^([^\s^\/])+$/
- defaultValue: 'yes'
description: Enable serving Ghost through HTTPS instead of HTTP
id: $$cap_ghost_protocol
label: Ghost Protocol
validRegex: /^([^\s^\/])+$/
- defaultValue: '2368'
description: Port that you will be using
id: $$cap_ghost_port
label: Ghost Port
- description: The SMTP protocol to use. Allowed values tls, ssl. No default.
id: $$cap_ghost_smtp_protocol
label: '[OPTIONAL] STMP protocol'
- defaultValue: smtp.gmail.com
description: The STMP host you will be using
id: $$cap_ghost_smtp_host
label: STMP host
- defaultValue: '465'
description: The SMTP port you will be using
id: $$cap_ghost_smtp_port
label: SMTP port
- defaultValue: your_email@gmail.com
description: Your user on the SMTP service
id: $$cap_ghost_smtp_user
label: SMTP user
- description: Your password on the SMTP service
id: $$cap_ghost_smtp_password
label: SMTP password
- defaultValue: your_email@gmail.com
description: SMTP from address
id: $$cap_ghost_smtp_from
label: SMTP from address
instructions:
end: >
Ghost is deployed and available as $$cap_appname.
Before starting using Ghost, you'll need to
- Enable HTTPS
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 a modern online publication. We power blogs, magazines and journalists from Zappos to Sky News.
displayName: Ghost - No Database
isOfficial: true
description: This will create a Ghost blog without a database. After installation you will need to change config.production.json, theres a bug where the port number is in the url.
documentation: Taken from https://docs.ghost.org/

View File

@ -1,131 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
environment:
GHOST_DATABASE_NAME: ghost
GHOST_DATABASE_PASSWORD: $$cap_db_ghost_password
GHOST_DATABASE_USER: ghost
GHOST_BLOG_TITLE: $$cap_ghost_blog_title
GHOST_USERNAME: $$cap_ghost_user
GHOST_EMAIL: $$cap_ghost_email
GHOST_HOST: $$cap_ghost_host
GHOST_PASSWORD: $$cap_ghost_password
GHOST_ENABLE_HTTPS: $$cap_ghost_protocol
GHOST_PORT_NUMBER: $$cap_ghost_port
GHOST_DATABASE_HOST: srv-captain--$$cap_appname-db
GHOST_DATABASE_PORT_NUMBER: '3306'
GHOST_SMTP_FROM_ADDRESS: $$cap_ghost_smtp_from
GHOST_SMTP_HOST: $$cap_ghost_smtp_host
GHOST_SMTP_PASSWORD: $$cap_ghost_smtp_password
GHOST_SMTP_PORT: $$cap_ghost_smtp_port
GHOST_SMTP_USER: $$cap_ghost_smtp_user
GHOST_SMTP_PROTOCOL: $$cap_ghost_smtp_protocol
image: bitnami/ghost:$$cap_ghost_version
restart: always
volumes:
- $$cap_appname-data:/bitnami/ghost
depends_on:
- $$cap_appname-db
caproverExtra:
containerHttpPort: '2368'
$$cap_appname-db:
environment:
MYSQL_DATABASE: ghost
MYSQL_PASSWORD: $$cap_db_ghost_password
MYSQL_ROOT_PASSWORD: $$cap_db_password
MYSQL_ROOT_USER: $$cap_db_user
MYSQL_USER: ghost
image: bitnami/mysql:8.0
restart: always
volumes:
- $$cap_appname-db-data:/bitnami/mysql
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- defaultValue: 5.2.2
description: Check out their Docker page for the valid tags https://hub.docker.com/r/bitnami/ghost/tags
id: $$cap_ghost_version
label: Ghost Version
validRegex: /^([^\s^\/])+$/
- defaultValue: admin
description: Root user that will be created on DB
id: $$cap_db_user
label: MYSQL root user
validRegex: /^([^\s^\/])+$/
- description: Root password that will be created on MYSQL
id: $$cap_db_password
label: MYSQL root password
validRegex: /^(?=.*\d).{10,}$/
- description: Password for database user named `ghost`
id: $$cap_db_ghost_password
label: MYSQL Ghost password
validRegex: /^(?=.*\d).{10,}$/
- defaultValue: user
description: Ghost administrator user
id: $$cap_ghost_user
label: Ghost administrator username
validRegex: /^([^\s^\/])+$/
- defaultValue: youremail@example.com
description: Ghost administrator email, you will use it to login
id: $$cap_ghost_email
label: Ghost administrator email
validRegex: /^([^\s^\/])+$/
- description: The admin password must be at least 10 characters, and at least one number and letter
id: $$cap_ghost_password
label: Ghost password
validRegex: /^(?=.*\d).{10,}$/
- defaultValue: blog.example.com
description: Enter the URL that is used to access your publication
id: $$cap_ghost_host
label: Ghost Host
validRegex: /^([^\s^\/])+$/
- defaultValue: 'yes'
description: Enable serving Ghost through HTTPS instead of HTTP
id: $$cap_ghost_protocol
label: Ghost Protocol
validRegex: /^([^\s^\/])+$/
- defaultValue: '2368'
description: Port that you will be using
id: $$cap_ghost_port
label: Ghost Port
- defaultValue: 'User blog'
description: Blog name that will be displayed
id: $$cap_ghost_blog_title
label: Ghost Blog Title
- defaultValue: smtp.gmail.com
description: The SMTP host you will be using
id: $$cap_ghost_smtp_host
label: SMTP host
- defaultValue: '587'
description: The SMTP port you will be using
id: $$cap_ghost_smtp_port
label: SMTP port
- defaultValue: your_email@gmail.com
description: Your user on the SMTP service
id: $$cap_ghost_smtp_user
label: SMTP user
- description: Your password on the SMTP service
id: $$cap_ghost_smtp_password
label: SMTP password
- description: The SMTP protocol to use. Allowed values tls, ssl. No default.
id: $$cap_ghost_smtp_protocol
label: '[OPTIONAL] SMTP protocol'
- defaultValue: blog@example.com
description: SMTP from address
id: $$cap_ghost_smtp_from
label: SMTP from address
instructions:
end: >
Ghost is deployed and available as $$cap_appname.
Before starting using Ghost, you'll need to
- Enable HTTPS
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 a modern online publication. We power blogs, magazines and journalists from Zappos to Sky News.
displayName: 'Ghost'
isOfficial: true
description: Ghost is a free and open source blogging platform written in JavaScript and distributed under the MIT License
documentation: Taken from https://docs.ghost.org/

View File

@ -1,102 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: '3333'
image: ghostfolio/ghostfolio:$$cap_GHOSTFOLIO_VERSION
hostname: $$cap_appname.$$cap_root_domain
environment:
NODE_ENV: $$cap_NODE_ENV
ACCESS_TOKEN_SALT: $$cap_ACCESS_TOKEN_SALT
BASE_CURRENCY: $$cap_BASE_CURRENCY
DATABASE_URL: postgresql://$$cap_POSTGRES_USER:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-db:5432/$$cap_POSTGRES_DB?sslmode=prefer
HOST: $$cap_appname.$$cap_root_domain
JWT_SECRET_KEY: $$cap_JWT_SECRET_KEY
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
REDIS_HOST: srv-captain--$$cap_appname-cache
REDIS_PORT: 6379
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
POSTGRES_ROOT_PASSWORD: $$cap_POSTGRES_ROOT_PASSWORD
volumes:
- $$cap_appname-db:/var/lib/postgresql/data
$$cap_appname-cache:
caproverExtra:
notExposeAsWebApp: 'true'
image: redis:$$cap_REDIS_VERSION
caproverOneClickApp:
instructions:
start: |-
Ghostfolio is an open source wealth management software built with web technology.
The application empowers busy people to keep track of stocks, ETFs or cryptocurrencies and make solid, data-driven investment decisions.
end: |-
Ghostfolio has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain`
displayName: Ghostfolio
isOfficial: true
description: Open Source Wealth Management Software
documentation: See https://ghostfol.io
variables:
- id: $$cap_GHOSTFOLIO_VERSION
label: Ghostfolio Version
description: Check out their valid tags at https://hub.docker.com/r/ghostfolio/ghostfolio/tags
defaultValue: '1.205.1'
validRegex: /.{1,}/
- id: $$cap_POSTGRES_VERSION
label: Postgres Version
description: Check out their valid tags at https://hub.docker.com/_/postgres/tags
defaultValue: '15.0-alpine'
validRegex: /.{1,}/
- id: $$cap_REDIS_VERSION
label: Redis Version
description: Check out their valid tags at https://hub.docker.com/_/redis/tags
defaultValue: '7.0-alpine'
validRegex: /.{1,}/
- id: $$cap_NODE_ENV
label: Application Environment
description: Configure the environment.
defaultValue: production
validRegex: /.{1,}/
- id: $$cap_ACCESS_TOKEN_SALT
label: Access Token Salt
description: A random string used as salt for access tokens.
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_BASE_CURRENCY
label: Base Currency
description: The base currency of the Ghostfolio application. This can **not** be changed later!
defaultValue: USD
validRegex: /.{1,}/
- id: $$cap_JWT_SECRET_KEY
label: JWT Secret Key
description: A random string used for JSON Web Tokens (JWT).
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_POSTGRES_DB
label: Database
description: The name of the PostgreSQL database.
defaultValue: ghostfolio
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: Database User
description: The user of the PostgreSQL database.
defaultValue: ghostfolio
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PASSWORD
label: Database Password
description: The password of the PostgreSQL database.
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_POSTGRES_ROOT_PASSWORD
label: Database Root User Password
description: The password of the PostgreSQL database root user.
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/

View File

@ -1,63 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: mysql:$$cap_mysql_version
volumes:
- $$cap_appname-db-data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: gitea
MYSQL_USER: gitea
MYSQL_PASSWORD: $$cap_db_pass
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
depends_on:
- $$cap_appname-db
image: gitea/gitea:$$cap_gitea_version
volumes:
- $$cap_appname-data:/data
restart: always
environment:
RUN_MODE: prod
DB_TYPE: mysql
DB_HOST: srv-captain--$$cap_appname-db:3306
DB_USER: gitea
DB_PASSWD: $$cap_db_pass
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- id: $$cap_db_pass
label: MySQL Root password
defaultValue: $$cap_gen_random_hex(10)
description: ''
validRegex: /.{1,}/
- id: $$cap_gitea_version
label: Gitea Version
defaultValue: '1.21.1'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/gitea/gitea/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_mysql_version
label: MySQL Version
defaultValue: '8.0.32'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/library/mysql/tags/
validRegex: /^([^\s^\/])+$/
instructions:
start: >-
A painless self-hosted Git service. Gitea is a community managed fork of 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.
end: >
Gitea is deployed and available as $$cap_appname.
Be sure to change 'Server domain' to `$$cap_root_domain` during initial setup otherwise you may experience issues.
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.
displayName: 'Gitea'
isOfficial: true
description: Gitea is a software package for hosting software development using Git as well as bug tracking, wikis and code review
documentation: Taken from https://hub.docker.com/r/gitea/gitea/

View File

@ -1,46 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: gitlab/gitlab-ce:$$cap_gitlab_version
hostname: $$cap_appname.$$cap_root_domain
volumes:
- '$$cap_appname-config: /etc/gitlab'
- '$$cap_appname-logs: /var/log/gitlab'
- '$$cap_appname-data: /var/opt/gitlab'
restart: always
environment:
GITLAB_OMNIBUS_CONFIG: $$cap_gitlab_omnibus_config
caproverOneClickApp:
variables:
- id: $$cap_gitlab_version
label: Gitlab-CE Version Tag
description: Check out their Docker page for the valid tags https://hub.docker.com/r/gitlab/gitlab-ce/tags
defaultValue: 11.9.8-ce.0
validRegex: /^([^\s^\/])+$/
- id: $$cap_gitlab_omnibus_config
label: Omnibus Config (Optional)
description: 'More information here: https://docs.gitlab.com/omnibus/docker/#pre-configure-docker-container'
instructions:
start: >-
GitLab is a single application for the entire software development lifecycle. From project planning and source code management to CI/CD, monitoring, and security.
More about this container:
https://hub.docker.com/r/gitlab/gitlab-ce/
Hardware and Software requeriments can be found here:
https://docs.gitlab.com/ce/install/requirements.html
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:
https://caprover.com/docs/firewall.html
More information about gitlab's docker configuration can be found here:
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.
end: Gitlab-CE is deployed and available as srv-captain--$$cap_appname:80 to other apps.
displayName: Gitlab (CE)
isOfficial: true
description: CE version of GitLab for CI/CD pipeline
documentation: Taken from https://docs.gitlab.com/omnibus/docker/

View File

@ -1,24 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: gitlab/gitlab-runner:$$cap_gitlab-runner_version
volumes:
- $$cap_appname-data:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_gitlab-runner_version
label: GitLab-Runner Version
defaultValue: v11.11.0
description: Check out their Docker page for the valid tags https://hub.docker.com/r/gitlab/gitlab-runner/tags
validRegex: /^([^\s^\/])+$/
instructions:
start: GitLab CI/CD is the CI/CD solution integrated into GitLab. With this one-click-app, you receive a self-hosted runner for your pipelines. To enable you to build Docker Images in your pipelines, we mount /var/run/docker.sock into the container of the runner (see https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#use-docker-socket-binding for more info). As a consequence, this container will have full access to all your other containers. If you don't need this functionality, feel free to manually remove the mounted Docker socket from the volumes.
end: Head over to https://docs.gitlab.com/runner/register/ to register your newly installed runner. You can run 'docker exec -ti <runner-image-name> /bin/sh' to connect to the newly created container and follow the tutorial.
displayName: Gitlab (runner)
isOfficial: true
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,114 +0,0 @@
captainVersion: 4
services:
$$cap_appname-postgres:
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_USER: glitchtip
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
volumes:
- $$cap_appname-postgres-data:/var/lib/postgresql/data
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-redis:
environment:
REDIS_PASSWORD: $$cap_REDIS_PASSWORD
caproverExtra:
dockerfileLines:
- FROM redis:$$cap_REDIS_VERSION
- CMD exec redis-server --requirepass "$$cap_REDIS_PASSWORD"
notExposeAsWebApp: 'true'
$$cap_appname:
depends_on:
- $$cap_appname-postgres
- $$cap_appname-redis
environment:
DATABASE_URL: postgres://glitchtip:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-postgres:5432/glitchtip
REDIS_URL: redis://:$$cap_REDIS_PASSWORD@srv-captain--$$cap_appname-redis:6379
SECRET_KEY: $$cap_SECRET
PORT: 8000
EMAIL_URL: $$cap_SMTP
GLITCHTIP_DOMAIN: http://$$cap_appname.$$cap_root_domain
DEFAULT_FROM_EMAIL: $$cap_FROM_EMAIL
CELERY_WORKER_CONCURRENCY: $$cap_CELERY_WORKER_CONCURRENCY
caproverExtra:
containerHttpPort: '8000'
dockerfileLines:
- FROM glitchtip/glitchtip:$$cap_GLITCHTIP_VERSION
- CMD ./manage.py migrate && ./bin/start.sh
$$cap_appname-worker:
depends_on:
- $$cap_appname-postgres
- $$cap_appname-redis
environment:
DATABASE_URL: postgres://glitchtip:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-postgres:5432/glitchtip
REDIS_URL: redis://:$$cap_REDIS_PASSWORD@srv-captain--$$cap_appname-redis:6379
SECRET_KEY: $$cap_SECRET
PORT: 8000
EMAIL_URL: $$cap_SMTP
GLITCHTIP_DOMAIN: http://$$cap_appname.$$cap_root_domain
DEFAULT_FROM_EMAIL: $$cap_FROM_EMAIL
CELERY_WORKER_CONCURRENCY: $$cap_CELERY_WORKER_CONCURRENCY
caproverExtra:
dockerfileLines:
- FROM glitchtip/glitchtip:$$cap_GLITCHTIP_VERSION
- CMD ./bin/run-celery-with-beat.sh
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_GLITCHTIP_VERSION
label: GlitchTip Version
defaultValue: 'v3.1.2'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/glitchtip/glitchtip/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_POSTGRES_VERSION
label: Postgres Version
defaultValue: '15'
description: Check out their Docker page for the valid tags https://hub.docker.com/_/postgres/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_REDIS_VERSION
label: Redis Version
defaultValue: '7.0-alpine'
description: Check out their docker page for the valid tags https://hub.docker.com/_/redis?tab=tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_CELERY_WORKER_CONCURRENCY
defaultValue: '2'
description: Number of concurrent celery workers. Defaults to number of CPU cores. Highly recommended to change. Our sample docker compose file defaults this to 2, to avoid unwanted and unnecessary scaling.
label: Celery Worker Concurrency
- id: $$cap_SMTP
defaultValue: smtp://email:password@smtp_url:port
description: See https://glitchtip.com/documentation/install#configuration.
label: SMTP Configuration
- id: $$cap_FROM_EMAIL
defaultValue: info@example.com
description: Default from email address.
label: Email Address
- id: $$cap_POSTGRES_PASSWORD
defaultValue: $$cap_gen_random_hex(24)
description: This is the PostgreSQL password for user 'glitchtip'.
label: PostgreSQL Password
validRegex: /^([^\s^\/])+$/
- id: $$cap_REDIS_PASSWORD
defaultValue: $$cap_gen_random_hex(24)
description: This is the PostgreSQL password for user 'glitchtip'.
label: Redis Password
validRegex: /^([^\s^\/])+$/
- id: $$cap_SECRET
label: Secret Key
defaultValue: $$cap_gen_random_hex(32)
description: Secret key used by glitchtip.
validRegex: /^([^\s^\/])+$/
instructions:
start: |-
GlitchTip makes monitoring software easy. Track errors, monitor performance, and check site uptime all in one place. Our app is compatible with Sentry client SDKs, but easier to run.
Recommended system requirements: 1GB RAM, x86 or arm64 CPU
Documentation: https://glitchtip.com/documentation
end: |-
GlitchTip instance successfully deployed. It will allow you to register an account, afterwards you can set ENABLE_USER_REGISTRATION=false to disable further registrations.
If you want to use a different domain change the `GLITCHTIP_DOMAIN` variable.
See https://glitchtip.com/documentation/install for additional environment variables available.
displayName: GlitchTip
isOfficial: true
description: Simple, open source error tracking.
documentation: This docker-compose is taken from https://glitchtip.com/assets/docker-compose.sample.yml

View File

@ -1,310 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: $$cap_GOTENBERG_API_PORT
dockerfileLines:
- ARG VERSION
- FROM gotenberg/gotenberg:$VERSION
- ARG API_PORT
- ARG API_TIMEOUT
- ARG API_ROOT_PATH
- ARG API_TRACE_HEADER
- ARG API_DISABLE_HEALTH_CHECK
- ARG CHROMIUM_ALLOW_FILE_ACCESS_FROM_FILES
- ARG CHROMIUM_ALLOW_INSECURE_LOCALHOST
- ARG CHROMIUM_ALLOW_LIST
- ARG CHROMIUM_DENY_LIST
- ARG CHROMIUM_IGNORE_CERTIFICATE_ERRORS
- ARG CHROMIUM_DISABLE_WEB_SECURITY
- ARG CHROMIUM_INCOGNITO
- ARG CHROMIUM_HOST_RESOLVER_RULES
- ARG CHROMIUM_PROXY_SERVER
- ARG CHROMIUM_DISABLE_JAVASCRIPT
- ARG CHROMIUM_DISABLE_ROUTES
- ARG LIBREOFFICE_DISABLE_ROUTES
- ARG LIBREOFFICE_LISTENER_START_TIMEOUT
- ARG LIBREOFFICE_LISTENER_RESTART_THRESHOLD
- ARG PDFENGINES_ENGINES
- ARG PDFENGINES_DISABLE_ROUTES
- ARG WEBHOOK_ALLOW_LIST
- ARG WEBHOOK_DENY_LIST
- ARG WEBHOOK_ERROR_ALLOW_LIST
- ARG WEBHOOK_ERROR_DENY_LIST
- ARG WEBHOOK_MAX_RETRY
- ARG WEBHOOK_RETRY_MIN_WAIT
- ARG WEBHOOK_RETRY_MAX_WAIT
- ARG WEBHOOK_CLIENT_TIMEOUT
- ARG WEBHOOK_DISABLE
- ARG PROMETHEUS_COLLECT_INTERVAL
- ARG PROMETHEUS_NAMESPACE
- ARG PROMETHEUS_DISABLE_COLLECT
- ARG PROMETHEUS_DISABLE_ROUTE_LOGGING
- ARG LOG_FORMAT
- ARG LOG_LEVEL
- ARG GRACEFUL_SHUTDOWN_DURATION
- >-
CMD gotenberg
--api-port=$API_PORT
--api-timeout=$API_TIMEOUT
--api-root-path=$API_ROOT_PATH
--api-trace-header=$API_TRACE_HEADER
--api-disable-health-check-logging=$API_DISABLE_HEALTH_CHECK
--chromium-allow-file-access-from-files=$CHROMIUM_ALLOW_FILE_ACCESS_FROM_FILES
--chromium-allow-insecure-localhost=$CHROMIUM_ALLOW_INSECURE_LOCALHOST
--chromium-allow-list=$CHROMIUM_ALLOW_LIST
--chromium-deny-list=$CHROMIUM_DENY_LIST
--chromium-ignore-certificate-errors=$CHROMIUM_IGNORE_CERTIFICATE_ERRORS
--chromium-disable-web-security=$CHROMIUM_DISABLE_WEB_SECURITY
--chromium-incognito=$CHROMIUM_INCOGNITO
--chromium-host-resolver-rules=$CHROMIUM_HOST_RESOLVER_RULES
--chromium-proxy-server=$CHROMIUM_PROXY_SERVER
--chromium-disable-javascript=$CHROMIUM_DISABLE_JAVASCRIPT
--chromium-disable-routes=$CHROMIUM_DISABLE_ROUTES
--libreoffice-disable-routes=$LIBREOFFICE_DISABLE_ROUTES
--uno-listener-start-timeout=$LIBREOFFICE_LISTENER_START_TIMEOUT
--uno-listener-restart-threshold=$LIBREOFFICE_LISTENER_RESTART_THRESHOLD
--pdfengines-engines=$PDFENGINES_ENGINES
--pdfengines-disable-routes=$PDFENGINES_DISABLE_ROUTES
--webhook-allow-list=$WEBHOOK_ALLOW_LIST
--webhook-deny-list=$WEBHOOK_DENY_LIST
--webhook-error-allow-list=$WEBHOOK_ERROR_ALLOW_LIST
--webhook-error-deny-list=$WEBHOOK_ERROR_DENY_LIST
--webhook-max-retry=$WEBHOOK_MAX_RETRY
--webhook-retry-min-wait=$WEBHOOK_RETRY_MIN_WAIT
--webhook-retry-max-wait=$WEBHOOK_RETRY_MAX_WAIT
--webhook-client-timeout=$WEBHOOK_CLIENT_TIMEOUT
--webhook-disable=$WEBHOOK_DISABLE
--prometheus-collect-interval=$PROMETHEUS_COLLECT_INTERVAL
--prometheus-namespace=$PROMETHEUS_NAMESPACE
--prometheus-disable-collect=$PROMETHEUS_DISABLE_COLLECT
--prometheus-disable-route-logging=$PROMETHEUS_DISABLE_ROUTE_LOGGING
--log-format=$LOG_FORMAT
--log-level=$LOG_LEVEL
--gotenberg-graceful-shutdown-duration=$GRACEFUL_SHUTDOWN_DURATION
environment:
VERSION: $$cap_GOTENBERG_VERSION
API_PORT: $$cap_GOTENBERG_API_PORT
API_TIMEOUT: $$cap_GOTENBERG_API_TIMEOUT
API_ROOT_PATH: $$cap_GOTENBERG_API_ROOT_PATH
API_TRACE_HEADER: $$cap_GOTENBERG_API_TRACE_HEADER
API_DISABLE_HEALTH_CHECK: $$cap_GOTENBERG_API_DISABLE_HEALTH_CHECK
CHROMIUM_ALLOW_FILE_ACCESS_FROM_FILES: $$cap_GOTENBERG_CHROMIUM_ALLOW_FILE_ACCESS_FROM_FILES
CHROMIUM_ALLOW_INSECURE_LOCALHOST: $$cap_GOTENBERG_CHROMIUM_ALLOW_INSECURE_LOCALHOST
CHROMIUM_ALLOW_LIST: $$cap_GOTENBERG_CHROMIUM_ALLOW_LIST
CHROMIUM_DENY_LIST: $$cap_GOTENBERG_CHROMIUM_DENY_LIST
CHROMIUM_IGNORE_CERTIFICATE_ERRORS: $$cap_GOTENBERG_CHROMIUM_IGNORE_CERTIFICATE_ERRORS
CHROMIUM_DISABLE_WEB_SECURITY: $$cap_GOTENBERG_CHROMIUM_DISABLE_WEB_SECURITY
CHROMIUM_INCOGNITO: $$cap_GOTENBERG_CHROMIUM_INCOGNITO
CHROMIUM_HOST_RESOLVER_RULES: $$cap_GOTENBERG_CHROMIUM_HOST_RESOLVER_RULES
CHROMIUM_PROXY_SERVER: $$cap_GOTENBERG_CHROMIUM_PROXY_SERVER
CHROMIUM_DISABLE_JAVASCRIPT: $$cap_GOTENBERG_CHROMIUM_DISABLE_JAVASCRIPT
CHROMIUM_DISABLE_ROUTES: $$cap_GOTENBERG_CHROMIUM_DISABLE_ROUTES
LIBREOFFICE_DISABLE_ROUTES: $$cap_GOTENBERG_LIBREOFFICE_DISABLE_ROUTES
LIBREOFFICE_LISTENER_START_TIMEOUT: $$cap_GOTENBERG_LIBREOFFICE_LISTENER_START_TIMEOUT
LIBREOFFICE_LISTENER_RESTART_THRESHOLD: $$cap_GOTENBERG_LIBREOFFICE_LISTENER_RESTART_THRESHOLD
PDFENGINES_ENGINES: $$cap_GOTENBERG_PDFENGINES_ENGINES
PDFENGINES_DISABLE_ROUTES: $$cap_GOTENBERG_PDFENGINES_DISABLE_ROUTES
WEBHOOK_ALLOW_LIST: $$cap_GOTENBERG_WEBHOOK_ALLOW_LIST
WEBHOOK_DENY_LIST: $$cap_GOTENBERG_WEBHOOK_DENY_LIST
WEBHOOK_ERROR_ALLOW_LIST: $$cap_GOTENBERG_WEBHOOK_ERROR_ALLOW_LIST
WEBHOOK_ERROR_DENY_LIST: $$cap_GOTENBERG_WEBHOOK_ERROR_DENY_LIST
WEBHOOK_MAX_RETRY: $$cap_GOTENBERG_WEBHOOK_MAX_RETRY
WEBHOOK_RETRY_MIN_WAIT: $$cap_GOTENBERG_WEBHOOK_RETRY_MIN_WAIT
WEBHOOK_RETRY_MAX_WAIT: $$cap_GOTENBERG_WEBHOOK_RETRY_MAX_WAIT
WEBHOOK_CLIENT_TIMEOUT: $$cap_GOTENBERG_WEBHOOK_CLIENT_TIMEOUT
WEBHOOK_DISABLE: $$cap_GOTENBERG_WEBHOOK_DISABLE
PROMETHEUS_COLLECT_INTERVAL: $$cap_GOTENBERG_PROMETHEUS_COLLECT_INTERVAL
PROMETHEUS_NAMESPACE: $$cap_GOTENBERG_PROMETHEUS_NAMESPACE
PROMETHEUS_DISABLE_COLLECT: $$cap_GOTENBERG_PROMETHEUS_DISABLE_COLLECT
PROMETHEUS_DISABLE_ROUTE_LOGGING: $$cap_GOTENBERG_PROMETHEUS_DISABLE_ROUTE_LOGGING
LOG_FORMAT: $$cap_GOTENBERG_LOG_FORMAT
LOG_LEVEL: $$cap_GOTENBERG_LOG_LEVEL
GRACEFUL_SHUTDOWN_DURATION: $$cap_GOTENBERG_GRACEFUL_SHUTDOWN_DURATION
caproverOneClickApp:
displayName: Gotenberg
isOfficial: true
description: Docker-Powered Stateless API For PDF Files
documentation: https://gotenberg.dev/docs/about
instructions:
start: |-
Gotenberg provides a developer-friendly API to interact with powerful tools like Chromium and LibreOffice for converting numerous document formats (HTML, Markdown, Word, Excel, etc.) into PDF files, and more!
end: |-
Gotenberg has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain`
If you prefer not to expose it, you can change it in the **HTTP Settings** of `$$cap_appname`.
variables:
- id: $$cap_GOTENBERG_VERSION
label: General | Version
description: Check out their valid tags at https://hub.docker.com/r/gotenberg/gotenberg/tags
defaultValue: 7
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_GRACEFUL_SHUTDOWN_DURATION
label: General | Graceful Shutdown Duration
description: Graceful shutdown duration.
defaultValue: '30s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_API_PORT
label: API | Port
description: Port of Gotenberg.
defaultValue: 3000
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_API_TIMEOUT
label: API | Timeout
description: Time limit for requests.
defaultValue: '30s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_API_ROOT_PATH
label: API | Root Path
description: Root path of the API for service discovery via URL paths.
defaultValue: '/'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_API_TRACE_HEADER
label: API | Trace Header
description: Header name to use for identifying requests.
defaultValue: Gotenberg-Trace
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_API_DISABLE_HEALTH_CHECK
label: API | Disable Health Check
description: Whether to disable health check logging.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_ALLOW_FILE_ACCESS_FROM_FILES
label: Chromium | Allow File Access From Files
description: Whether to allow `file://` URIs to read other `file://` URIs.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_ALLOW_INSECURE_LOCALHOST
label: Chromium | Allow Insecure Localhost
description: Whether to ignore TLS/SSL errors on `localhost`.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_ALLOW_LIST
label: Chromium | Allow List
description: Allowed URLs for Chromium using a regular expression.
- id: $$cap_GOTENBERG_CHROMIUM_DENY_LIST
label: Chromium | Deny List
description: Denied URLs for Chromium using a regular expression.
defaultValue: ^file:///[^tmp].*
- id: $$cap_GOTENBERG_CHROMIUM_IGNORE_CERTIFICATE_ERRORS
label: Chromium | Ignore Certificate Errors
description: Whether to ignore certificate errors.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_DISABLE_WEB_SECURITY
label: Chromium | Disable Web Security
description: Whether to not enforce the same-origin policy.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_INCOGNITO
label: Chromium | Incognito Mode
description: Whether to start Chromium with incognito mode.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_HOST_RESOLVER_RULES
label: Chromium | Host Resolver Rules
description: Custom mappings to the host resolver.
- id: $$cap_GOTENBERG_CHROMIUM_PROXY_SERVER
label: Chromium | Proxy Server
description: Outbound proxy server. This switch only affects HTTP and HTTPS requests.
- id: $$cap_GOTENBERG_CHROMIUM_DISABLE_JAVASCRIPT
label: Chromium | Disable JavaScript
description: Whether to disable JavaScript.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_CHROMIUM_DISABLE_ROUTES
label: Chromium | Disable Routes
description: Whether to disable the routes for Chromium.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_LIBREOFFICE_DISABLE_ROUTES
label: LibreOffice | Disable Routes
description: Whether to disable the routes for LibreOffice.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_LIBREOFFICE_LISTENER_START_TIMEOUT
label: LibreOffice | Listener Start Timeout
description: Time limit for starting the LibreOffice listener.
defaultValue: '10s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_LIBREOFFICE_LISTENER_RESTART_THRESHOLD
label: LibreOffice | Listener Restart Threshold
description: Conversions limit after which the LibreOffice listener is restarted. `0` means no long-running LibreOffice listener.
defaultValue: 10
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_PDFENGINES_ENGINES
label: PDF Engines | Engines
description: PDF engines and their order (e.g. `pdftk,uno-pdfengine`). Leave blank to use all.
- id: $$cap_GOTENBERG_PDFENGINES_DISABLE_ROUTES
label: PDF Engines | Disable Routes
description: Whether to disable the routes for PDF Engines.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_WEBHOOK_ALLOW_LIST
label: Webhook | Allow List
description: Allowed URLs for the webhook feature using a regular expression.
- id: $$cap_GOTENBERG_WEBHOOK_DENY_LIST
label: Webhook | Deny List
description: Denied URLs for the webhook feature using a regular expression.
- id: $$cap_GOTENBERG_WEBHOOK_ERROR_ALLOW_LIST
label: Webhook | Error Allow List
description: Allowed URLs in case of an error for the webhook feature using a regular expression.
- id: $$cap_GOTENBERG_WEBHOOK_ERROR_DENY_LIST
label: Webhook | Error Deny List
description: Denied URLs in case of an error for the webhook feature using a regular expression.
- id: $$cap_GOTENBERG_WEBHOOK_MAX_RETRY
label: Webhook | Maximum Retry
description: Maximum number of retries for the webhook feature.
defaultValue: 4
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_WEBHOOK_RETRY_MIN_WAIT
label: Webhook | Minimum Retry Waiting Time
description: Minimum duration to wait before trying to call the webhook again.
defaultValue: '1s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_WEBHOOK_RETRY_MAX_WAIT
label: Webhook | Maximum Retry Waiting Time
description: Maximum duration to wait before trying to call the webhook again.
defaultValue: '30s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_WEBHOOK_CLIENT_TIMEOUT
label: Webhook | Client Timeout
description: Time limit for requests to the webhook.
defaultValue: '30s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_WEBHOOK_DISABLE
label: Webhook | Disable
description: Whether to disable the webhook feature.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_PROMETHEUS_COLLECT_INTERVAL
label: Prometheus | Collect Interval
description: Interval for collecting modules' metrics.
defaultValue: '1s'
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_PROMETHEUS_NAMESPACE
label: Prometheus | Namespace
description: Namespace of modules' metrics.
defaultValue: gotenberg
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_PROMETHEUS_DISABLE_COLLECT
label: Prometheus | Disable Collect
description: Whether to disable the collect of metrics.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_PROMETHEUS_DISABLE_ROUTE_LOGGING
label: Prometheus | Disable Route Logging
description: Whether to disable the route logging.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_GOTENBERG_LOG_FORMAT
label: Logging | Format
description: Log format (`auto`, `json` or `text`)
defaultValue: auto
validRegex: /.{1,}/
- id: $$cap_GOTENBERG_LOG_LEVEL
label: Logging | Level
description: Log level (`error`, `warn`, `info` or `debug`)
defaultValue: info
validRegex: /.{1,}/

View File

@ -1,26 +0,0 @@
captainVersion: 4
services:
'$$cap_appname':
image: gotify/server:$$cap_version
volumes:
- '$$cap_appname-data:/app/data'
- '$$cap_appname-config:/etc/gotify/'
caproverOneClickApp:
variables:
- id: '$$cap_version'
label: Gotify Version
defaultValue: '2.1.7'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/gotify/server/tags
validRegex: "/^([^\\s^\\/])+$/"
instructions:
start: |-
Gotify is a simple server for sending and receiving messages
More details: https://gotify.net/
end: |-
Gotify has been successfully deployed!
First you need to enable websocket.
Then, log into your instance during the next minutes with user admin password admin and change this password.
displayName: Gotify
isOfficial: true
description: Gotify is a simple server for sending and receiving messages.
documentation: See https://github.com/gotify

View File

@ -1,23 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: grafana/grafana:$$cap_version
restart: always
volumes:
- $$cap_appname-config:/etc/grafana
- $$cap_appname-data:/var/lib/grafana
caproverExtra:
containerHttpPort: '3000'
caproverOneClickApp:
variables:
- label: Grafana Docker Hash
defaultValue: 7.4.3
description: Find versions on DockerHub https://hub.docker.com/r/grafana/grafana/tags
id: $$cap_version
instructions:
end: Grafana is now starting. You can log in with the default login/password of admin/admin.
start: 'Read more about Grafana: https://grafana.com/'
displayName: Grafana
isOfficial: true
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,217 +0,0 @@
captainVersion: 4
services:
$$cap_appname-greenlight:
image: bigbluebutton/greenlight:v2
volumes:
- $$cap_appname-greenlight-log:/usr/src/app/log
- $$cap_appname-greenlight-storage:/usr/src/app/storage
caproverExtra:
containerHttpPort: '80'
environment:
SECRET_KEY_BASE: $$cap_SECRET_KEY_BASE
BIGBLUEBUTTON_ENDPOINT: $$cap_BIGBLUEBUTTON_ENDPOINT
BIGBLUEBUTTON_SECRET: $$cap_BIGBLUEBUTTON_SECRET
SAFE_HOSTS: $$cap_SAFE_HOSTS
ALLOW_GREENLIGHT_ACCOUNTS: $$cap_ALLOW_GREENLIGHT_ACCOUNTS
RECAPTCHA_SITE_KEY: $$cap_RECAPTCHA_SITE_KEY
RECAPTCHA_SECRET_KEY: $$cap_RECAPTCHA_SECRET_KEY
GOOGLE_ANALYTICS_TRACKING_ID: $$cap_GOOGLE_ANALYTICS_TRACKING_ID
ALLOW_MAIL_NOTIFICATIONS: $$cap_ALLOW_MAIL_NOTIFICATIONS
SMTP_SERVER: $$cap_SMTP_SERVER
SMTP_PORT: $$cap_SMTP_PORT
SMTP_DOMAIN: $$cap_SMTP_DOMAIN
SMTP_USERNAME: $$cap_SMTP_USERNAME
SMTP_PASSWORD: $$cap_SMTP_PASSWORD
SMTP_AUTH: $$cap_SMTP_AUTH
SMTP_STARTTLS_AUTO: $$cap_SMTP_STARTTLS_AUTO
SMTP_SENDER: $$cap_SMTP_SENDER
SMTP_TEST_RECIPIENT: $$cap_SMTP_TEST_RECIPIENT
RELATIVE_URL_ROOT: '/'
ROOM_FEATURES: $$cap_ROOM_FEATURES
PAGINATION_NUMBER: $$cap_PAGINATION_NUMBER
NUMBER_OF_ROWS: $$cap_NUMBER_OF_ROWS
ENABLE_GOOGLE_CALENDAR_BUTTON: $$cap_ENABLE_GOOGLE_CALENDAR_BUTTON
MAINTENANCE_MODE: $$cap_MAINTENANCE_MODE
MAINTENANCE_WINDOW: $$cap_MAINTENANCE_WINDOW
HELP_URL: $$cap_HELP_URL
ENABLE_SSL: $$cap_ENABLE_SSL
DB_ADAPTER: $$cap_DB_ADAPTER
DB_HOST: $$cap_DB_HOST
DB_PORT: $$cap_DB_PORT
DB_NAME: $$cap_DB_NAME
DB_USERNAME: $$cap_DB_USERNAME
DB_PASSWORD: $$cap_DB_PASSWORD
CABLE_ADAPTER: $$cap_CABLE_ADAPTER
DEFAULT_REGISTRATION: $$cap_DEFAULT_REGISTRATION
AWS_ACCESS_KEY_ID: $$cap_AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: $$cap_AWS_SECRET_ACCESS_KEY
AWS_REGION: $$cap_AWS_REGION
AWS_BUCKET: $$cap_AWS_BUCKET
WEB_CONCURRENCY: $$cap_WEB_CONCURRENCY
caproverOneClickApp:
variables:
- id: $$cap_SECRET_KEY_BASE
description: Create a Secret Key for Rails
label: SECRET_KEY_BASE
defaultValue: $$cap_gen_random_hex(32)
- id: $$cap_BIGBLUEBUTTON_ENDPOINT
description: The endpoint for your BigBlueButton
defaultValue: https://scalelite.eunarede.stream/bigbluebutton/
label: BIGBLUEBUTTON_ENDPOINT
- id: $$cap_BIGBLUEBUTTON_SECRET
description: The secret for your BigBlueButton
label: BIGBLUEBUTTON_SECRET
- id: $$cap_SAFE_HOSTS
description: The hostname that the application is accessible
label: SAFE_HOSTS
defaultValue: $$cap_appname.$$cap_root_domain
- id: $$cap_ALLOW_GREENLIGHT_ACCOUNTS
description: Set this to true if you want GreenLight to support user signup
label: ALLOW_GREENLIGHT_ACCOUNTS
defaultValue: 'true'
- id: $$cap_DEFAULT_REGISTRATION
description: Specify the default registration to be used by Greenlight
label: DEFAULT_REGISTRATION
defaultValue: 'open'
- id: $$cap_WEB_CONCURRENCY
description: The amount of workers (separate processes) used by the web server
label: WEB_CONCURRENCY
defaultValue: '2'
- id: $$cap_ENABLE_SSL
description: ENABLE_SSL
label: ENABLE_SSL
defaultValue: 'false'
- id: $$cap_ROOM_FEATURES
description: Specify which settings you would like the users to configure on room
label: ROOM_FEATURES
defaultValue: 'mute-on-join,require-moderator-approval,anyone-can-start,all-join-moderator,recording'
- id: $$cap_PAGINATION_NUMBER
description: Specify the maximum number of records to be sent to the BigBlueButton API in one call
label: PAGINATION_NUMBER
defaultValue: '10'
- id: $$cap_NUMBER_OF_ROWS
description: Specify the maximum number of rows that should be displayed per page for a paginated table
label: NUMBER_OF_ROWS
defaultValue: '10'
- id: $$cap_ENABLE_GOOGLE_CALENDAR_BUTTON
description: ENABLE_GOOGLE_CALENDAR_BUTTON
label: ENABLE_GOOGLE_CALENDAR_BUTTON
defaultValue: 'true'
- id: $$cap_GOOGLE_ANALYTICS_TRACKING_ID
description: GOOGLE_ANALYTICS_TRACKING_ID
label: GOOGLE_ANALYTICS_TRACKING_ID
defaultValue: ''
- id: $$cap_RECAPTCHA_SITE_KEY
description: RECAPTCHA_SITE_KEY
label: RECAPTCHA_SITE_KEY
defaultValue: ''
- id: $$cap_RECAPTCHA_SECRET_KEY
description: RECAPTCHA_SECRET_KEY
label: RECAPTCHA_SECRET_KEY
defaultValue: ''
- id: $$cap_DB_ADAPTER
description: DB_ADAPTER
label: DB_ADAPTER
defaultValue: 'postgresql'
- id: $$cap_CABLE_ADAPTER
description: CABLE_ADAPTER
label: CABLE_ADAPTER
defaultValue: 'postgresql'
- id: $$cap_DB_HOST
description: DB_HOST
label: DB_HOST
defaultValue: 'srv-captain--postgres-db'
- id: $$cap_DB_PORT
description: DB_PORT
label: DB_PORT
defaultValue: '5432'
- id: $$cap_DB_NAME
description: DB_NAME
label: DB_NAME
- id: $$cap_DB_USERNAME
description: DB_USERNAME
label: DB_USERNAME
defaultValue: 'postgres'
- id: $$cap_DB_PASSWORD
description: DB_PASSWORD
label: DB_PASSWORD
- id: $$cap_ALLOW_MAIL_NOTIFICATIONS
description: ALLOW_MAIL_NOTIFICATIONS
label: ALLOW_MAIL_NOTIFICATIONS
defaultValue: 'false'
- id: $$cap_SMTP_TEST_RECIPIENT
description: SMTP_TEST_RECIPIENT
label: SMTP_TEST_RECIPIENT
defaultValue: ''
- id: $$cap_SMTP_SERVER
description: SMTP_SERVER
label: SMTP_SERVER
defaultValue: ''
- id: $$cap_SMTP_PORT
description: SMTP_PORT
label: SMTP_PORT
defaultValue: ''
- id: $$cap_SMTP_DOMAIN
description: SMTP_DOMAIN
label: SMTP_DOMAIN
defaultValue: ''
- id: $$cap_SMTP_USERNAME
description: SMTP_USERNAME
label: SMTP_USERNAME
defaultValue: ''
- id: $$cap_SMTP_PASSWORD
description: SMTP_PASSWORD
label: SMTP_PASSWORD
defaultValue: ''
- id: $$cap_SMTP_AUTH
description: SMTP_AUTH
label: SMTP_AUTH
defaultValue: ''
- id: $$cap_SMTP_STARTTLS_AUTO
description: SMTP_STARTTLS_AUTO
label: SMTP_STARTTLS_AUTO
defaultValue: ''
- id: $$cap_SMTP_SENDER
description: SMTP_SENDER
label: SMTP_SENDER
defaultValue: ''
- id: $$cap_MAINTENANCE_MODE
description: MAINTENANCE_MODE
label: MAINTENANCE_MODE
defaultValue: ''
- id: $$cap_MAINTENANCE_WINDOW
description: MAINTENANCE_WINDOW
label: MAINTENANCE_WINDOW
defaultValue: ''
- id: $$cap_HELP_URL
description: HELP_URL
label: HELP_URL
defaultValue: '#'
- id: $$cap_AWS_ACCESS_KEY_ID
description: AWS_ACCESS_KEY_ID
label: AWS_ACCESS_KEY_ID
defaultValue: ''
- id: $$cap_AWS_SECRET_ACCESS_KEY
description: AWS_SECRET_ACCESS_KEY
label: AWS_SECRET_ACCESS_KEY
defaultValue: ''
- id: $$cap_AWS_REGION
description: AWS_REGION
label: AWS_REGION
defaultValue: ''
- id: $$cap_AWS_BUCKET
description: AWS_BUCKET
label: AWS_BUCKET
defaultValue: ''
instructions:
start: >-
Greenlight 2.0 (referred hereafter as simply “Greenlight”) is a Ruby on Rails application that provides a simple interface for users to create rooms, start meetings, and manage recordings.
Remember that this app will not create a Database by itself. You need to provide all that information.
end: >-
Greenlight is deployed and available as $$cap_appname-wordpress .
IMPORTANT: It will take up to 2 minutes for Greenlight to be ready. Before that, you might see a 502 error page.
displayName: Greenlight (no database)
description: This will create a Greenlight only. You will need to create and configure the database information manually. Intended for advanced users.
documentation: Taken from https://docs.bigbluebutton.org/greenlight/gl-overview.html.

View File

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

View File

@ -1,61 +0,0 @@
captainVersion: 4
services:
$$cap_appname-db:
image: mysql:$$cap_mysql_version
volumes:
- $$cap_appname-db-data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: $$cap_db_pass
MYSQL_DATABASE: guacamole
MYSQL_USER: guacamole
MYSQL_PASSWORD: $$cap_db_pass
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-guacd:
image: guacamole/guacd:$$cap_guacd_version
restart: always
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname:
image: guacamole/guacamole:$$cap_guacamole_version
restart: always
depends_on:
- $$cap_appname-db
- $$cap_appname-guacd
environment:
GUACD_HOSTNAME: srv-captain--$$cap_appname-guacd
MYSQL_HOSTNAME: srv-captain--$$cap_appname-db
MYSQL_DATABASE: guacamole
MYSQL_USER: guacamole
MYSQL_PASSWORD: $$cap_db_pass
caproverExtra:
containerHttpPort: '8080'
caproverOneClickApp:
variables:
- id: $$cap_db_pass
label: Database password
description: ''
validRegex: /.{1,}/
- id: $$cap_guacamole_version
label: Guacamole Version
defaultValue: '1.3.0'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/guacamole/guacamole/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_guacd_version
label: Guacd Version
defaultValue: '1.3.0'
description: Check out their Docker page for the valid tags https://hub.docker.com/r/guacamole/guacd/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_mysql_version
label: MySQL Version
defaultValue: '8.0.26'
description: Check out their Docker page for the valid tags https://hub.docker.com/_/mysql?tab=tags
validRegex: /^([^\s^\/])+$/
instructions:
start: Guacamole is an HTML5 Remote Desktop application.
end: For instructions on how to setup the database, check out https://github.com/christopher-kapic/caprover-guacamole. Guacamole is deployed and available as srv-captain--$$cap_appname. In order to use Guacamole, you must enable websockets and setup the MySQL database.
displayName: Guacamole
isOfficial: false
description: An HTML5 remote access application.
documentation: 'https://guacamole.apache.org/'

View File

@ -1,37 +0,0 @@
captainVersion: 4
services:
$$cap_appname:
image: hasura/graphql-engine:$$cap_hasura_version
restart: always
environment:
HASURA_GRAPHQL_DATABASE_URL: $$cap_database_url
HASURA_GRAPHQL_ENABLE_CONSOLE: 'true'
HASURA_GRAPHQL_ADMIN_SECRET: $$cap_admin_secret
HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log
caproverExtra:
containerHttpPort: '8080'
caproverOneClickApp:
variables:
- defaultValue: v1.2.2
description: Check out their GitHub page for their latest version https://github.com/hasura/graphql-engine
id: $$cap_hasura_version
label: Hasura Version
validRegex: /^([^\s^\/])+$/
- description: The admin secret gives you access to the console.
id: $$cap_admin_secret
label: Hasura admin secret(password)
validRegex: /^(?=.*\d).{10,}$/
- id: $$cap_database_url
label: Postgres Connection URL
description: postgres://username:password@host/database
validRegex: /postgres://.+/.+/
instructions:
end: >
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.
start: Instant Realtime GraphQL on Postgres with web admin console.
displayName: Hasura - No Database
isOfficial: true
description: Instant realtime GraphQL APIs on any Postgres application, existing or new
documentation: Hasura GraphQL Engine

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