From b60201b2417f71c79bfb7c5f72462da4fb570260 Mon Sep 17 00:00:00 2001 From: Stephen Davis <68449281+nativeit@users.noreply.github.com> Date: Mon, 8 Apr 2024 22:46:25 -0400 Subject: Added Trudesk (#1094) * Bumped version to current 3.1.8 * Added Trudesk template and icon * Removed logs volume (used for dev) --- public/v4/apps/node-red.yml | 16 ++++--- public/v4/apps/trudesk.yml | 103 ++++++++++++++++++++++++++++++++++++++++++++ public/v4/logos/trudesk.png | Bin 0 -> 3536 bytes 3 files changed, 112 insertions(+), 7 deletions(-) create mode 100644 public/v4/apps/trudesk.yml create mode 100644 public/v4/logos/trudesk.png diff --git a/public/v4/apps/node-red.yml b/public/v4/apps/node-red.yml index 16e080d..f9a0811 100644 --- a/public/v4/apps/node-red.yml +++ b/public/v4/apps/node-red.yml @@ -14,19 +14,21 @@ caproverOneClickApp: - id: $$cap_node-red_version label: node-red version tag description: Check out their docker page for the valid tags @ https://hub.docker.com/r/nodered/node-red/tags - defaultValue: 1.1.3-12-minimal + defaultValue: 3.1.8-18-minimal - id: $$cap_node-red_timezone - label: timezone + label: Time Zone description: Check out this list and use tz database name as value @ https://en.wikipedia.org/wiki/List_of_tz_database_time_zones defaultValue: Europe/Berlin instructions: start: Low-code programming for event-driven applications - end: >- - node-red is deployed and available as $$cap_appname. - To make it function correctly, you have to enable websocket-support. - It would be also a good idea to set basic authentication or modify the node-red settings respectively to the documentation. + end: |- + `node-red` has been successfully deployed and is now available at http://$$cap_appname.$$cap_root_domain! - IMPORTANT: It will take up to 2 minutes for node-red to be ready. Before that, you might see 502 error page. + **REQUIRED**: Enable websocket-support in `HTTP Settings`. + + It is recommended that you setup basic authentication and review the default settings as necessary. See the documentation at https://nodered.org/docs for more information. + + IMPORTANT: It will take up to 2 minutes for `node-red` to be ready. Before that, you might see 502 error page. displayName: 'Node-Red' description: Low-code programming for event-driven applications documentation: Read the documentation @ https://nodered.org/docs/ diff --git a/public/v4/apps/trudesk.yml b/public/v4/apps/trudesk.yml new file mode 100644 index 0000000..5b137c1 --- /dev/null +++ b/public/v4/apps/trudesk.yml @@ -0,0 +1,103 @@ +captainVersion: 4 +services: + $$cap_appname: + image: polonel/trudesk:$$cap_trudesk_version + volumes: + - $$cap_appname-data:/usr/src/trudesk/public/uploads + - $$cap_appname-plugins:/usr/src/trudesk/plugins + - $$cap_appname-backups:/usr/src/trudesk/backups + depends_on: + - $$cap_appname-mongodb + - $$cap_appname-elasticsearch + restart: always + environment: + NODE_ENV: $$cap_node_env + TRUDESK_DOCKER: 'true' + TD_MONGODB_SERVER: srv-captain--$$cap_appname-mongodb + TD_MONGODB_PORT: $$cap_appname-mongodb-port + TD_MONGODB_USERNAME: root + TD_MONGODB_PASSWORD: $$cap_mongo_password + TD_MONGODB_DATABASE: trudesk + TD_MONGODB_URI: 'mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-mongodb:27017/trudesk?authSource=admin' + ELATICSEARCH_URI: http://srv-captain--$$cap_appname-elasticsearch:9200 + USE_XFORWARDIP: 'true' + caproverExtra: + containerHttpPort: '8118' + $$cap_appname-mongodb: + image: mongo:$$cap_mongodb_version + volumes: + - $$cap_appname-db-data:/data/db + - $$cap_appname-db-config:/var/lib/mongo + restart: always + environment: + MONGO_INITDB_ROOT_USERNAME: root + MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password + caproverExtra: + notExposeAsWebApp: 'true' + $$cap_appname-elasticsearch: + image: elasticsearch:$$cap_elasticsearch_version + volumes: + - $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data + restart: always + environment: + xpack.security.enabled: $$cap_elasticsearch_security_enabled + xpack.security.http.ssl.enabled: $$cap_elasticsearch_security_enabled + discovery.type: single-node + node.name: estrudesk01 + bootstrap.memory_lock: true + ES_JAVA_OPTS: '-Xms512m -Xmx512m' + caproverExtra: + notExposeAsWebApp: 'true' +caproverOneClickApp: + variables: + - id: $$cap_trudesk_version + label: Trudesk Version + defaultValue: '1.2.10' + description: Check out their docker page for the valid tags https://hub.docker.com/r/polonel/trudesk/tags + validRegex: /^([^\s^\/])+$/ + - id: $$cap_mongodb_version + label: MongoDB Version + defaultValue: '5.0.26' + description: Check out their docker page for the valid tags https://hub.docker.com/r/library/mongo/tags/ + validRegex: /^([^\s^\/])+$/ + - id: $$cap_appname-mongodb-port + label: MongoDB Port + defaultValue: '27017' + description: MongoDB port + validRegex: /^([^\s^\/])+$/ + - id: $$cap_elasticsearch_version + label: Elasticsearch Version + defaultValue: '8.13.0' + description: Check out their docker page for the valid tags https://hub.docker.com/_/elasticsearch + 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_node_env + label: Application Environment + description: NodeJS application environment. Should be either `production` or `development` + defaultValue: production + validRegex: /^(production|development)$/ + - id: $$cap_mongo_password + label: MongoDB Root Password + defaultValue: $$cap_gen_random_hex(16) + description: MongoDB root password + validRegex: /^([^\s^\/])+$/ + instructions: + start: |- + Trudesk is built with nodejs and mongodb and can run on any cloud provider, docker, bare-metal, or even a raspberry pi. + end: |- + Trudesk has been successfully deployed! + + **IMPORTANT**: The intial setup process may take a few minutes. Please be patient. + + Please perform the following steps: + 1. Go to the **HTTP Settings** of `$$cap_appname` and **Enable WebSocket Support**. Enabling **HTTPS** is also recommended. + 2. Visit your Trudesk instance at `http://$$cap_appname.$$cap_root_domain` and create your account + 3. Have fun with Trudesk! + displayName: 'Trudesk' + isOfficial: true + description: Trudesk is an open-source help desk/ticketing solution. + documentation: Taken from https://trudesk.io/docs diff --git a/public/v4/logos/trudesk.png b/public/v4/logos/trudesk.png new file mode 100644 index 0000000..56262a5 Binary files /dev/null and b/public/v4/logos/trudesk.png differ -- cgit v1.2.3