App Suggestion: Zammad
See original GitHub issuePlease tell us what app you’d like to see on CapRover as a one-click app. Zammad is a web-based, open source user support/ticketing solution.
Do you know if there is any official Docker image for the app? Docker compose: https://hub.docker.com/r/zammad/zammad-docker-compose
I am trying to get it working, and all services seem to be deployed successfully, however it remains at 502. I believe the reason is that the containers are being renamed in CapRover and that’s why the communication in between doesn’t happen. Any hint would be highly appreciated.
Here are all possible ENVs based on their docs: https://docs.zammad.org/en/latest/install/docker-compose/environment.html
And this is the captain-definition file I’ve got so far:
captainVersion: 4
caproverOneClickApp:
instructions:
start: >-
Zammad is a web-based, open source user support/ticketing solution.
end: >
Zammad is deployed and available.
IMPORTANT: It will take up to 5 minutes for Zammad to be ready. Before that, you might see a 502 error page.
displayName: Zammad
isOfficial: true
description: Zammad is a web-based, open source user support/ticketing solution.
documentation: Taken from https://hub.docker.com/r/zammad/zammad-docker-compose.
variables:
- id: $$cap_zammad_version
label: Zammad Version
defaultValue: '4.1.0-94'
description: Check out their docker page for the valid tags https://hub.docker.com/r/zammad/zammad-docker-compose/tags
validRegex: /^([^\s^\/])+$/
- id: $$cap_pg_user
label: PostgreSQL user
defaultValue: postgresuser
validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_pg_pass
label: PostgreSQL password
description: 'PostgreSQL password'
validRegex: /.{1,}/
services:
$$cap_appname-backup:
command: ["zammad-backup"]
depends_on:
- $$cap_appname-railsserver
entrypoint: /usr/local/bin/backup.sh
environment:
- BACKUP_SLEEP=86400
- HOLD_DAYS=10
- POSTGRESQL_USER=$$cap_db_user
- POSTGRESQL_PASSWORD=$$cap_db_pass
image: zammad/zammad-docker-compose:zammad-postgresql-$$cap_zammad_version
links:
- $$cap_appname-postgresql
restart: always
volumes:
- $$cap_appname-backup:/var/tmp/zammad
- $$cap_appname-data:/opt/zammad
$$cap_appname-elasticsearch:
environment:
- discovery.type=single-node
- ELASTICSEARCH_ENABLED=false
image: zammad/zammad-docker-compose:zammad-elasticsearch-$$cap_zammad_version
restart: always
volumes:
- $$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data
$$cap_appname-init:
command: ["zammad-init"]
depends_on:
- $$cap_appname-postgresql
environment:
- POSTGRESQL_USER=$$cap_pg_user
- POSTGRESQL_PASS=$$cap_pg_pass
- AUTOWIZARD_JSON=""
image: zammad/zammad-docker-compose:zammad-$$cap_zammad_version
links:
- $$cap_appname-elasticsearch
- $$cap_appname-postgresql
restart: always
volumes:
- $$cap_appname-data:/opt/zammad
$$cap_appname-memcached:
command: memcached -m 256M
image: memcached:1.6.9-alpine
restart: always
$$cap_appname-nginx:
command: ["zammad-nginx"]
expose:
- "8080"
depends_on:
- $$cap_appname-railsserver
environment:
- ZAMMAD_RAILSSERVER_HOST=srv-captain--$$cap_appname-railsserver
- ZAMMAD_WEBSOCKET_HOST=srv-captain--$$cap_appname-websocket
image: zammad/zammad-docker-compose:zammad-$$cap_zammad_version
links:
- $$cap_appname-railsserver
- $$cap_appname-websocket
restart: always
volumes:
- $$cap_appname-data:/opt/zammad
$$cap_appname-postgresql:
environment:
- POSTGRESQL_HOST=srv-captain--$$cap_appname-postgresql
- POSTGRES_USER=$$cap_pg_user
- POSTGRES_PASSWORD=$$cap_pg_pass
image: zammad/zammad-docker-compose:zammad-postgresql-$$cap_zammad_version
restart: always
volumes:
- $$cap_appname-postgresql-data:/var/lib/postgresql/data
$$cap_appname-railsserver:
command: ["zammad-railsserver"]
depends_on:
- $$cap_appname-memcached
- $$cap_appname-postgresql
image: zammad/zammad-docker-compose:zammad-$$cap_zammad_version
links:
- $$cap_appname-elasticsearch
- $$cap_appname-memcached
- $$cap_appname-postgresql
restart: always
volumes:
- $$cap_appname-data:/opt/zammad
$$cap_appname-scheduler:
command: ["zammad-scheduler"]
depends_on:
- $$cap_appname-memcached
- $$cap_appname-railsserver
image: zammad/zammad-docker-compose:zammad-$$cap_zammad_version
links:
- $$cap_appname-elasticsearch
- $$cap_appname-memcached
- $$cap_appname-postgresql
restart: always
volumes:
- $$cap_appname-data:/opt/zammad
$$cap_appname-websocket:
command: ["zammad-websocket"]
depends_on:
- $$cap_appname-memcached
- $$cap_appname-railsserver
image: zammad/zammad-docker-compose:zammad-$$cap_zammad_version
links:
- $$cap_appname-postgresql
- $$cap_appname-memcached
restart: always
volumes:
- $$cap_appname-data:/opt/zammad
volumes:
$$cap_appname-elasticsearch-data:
driver: local
$$cap_appname-postgresql-data:
driver: local
$$cap_appname-backup:
driver: local
$$cap_appname-data:
driver: local
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:11 (4 by maintainers)
Top Results From Across the Web
Zammad Alternatives: 25+ Customer Support Tools and Help ...
The best Zammad alternatives are osTicket, Zendesk and Freshdesk. Our crowd-sourced lists contains more than 25 apps similar to Zammad for ...
Read more >Apple iOS and Zammad Integration | Workflow Automation
Connect Apple iOS and Zammad to sync data between apps and create powerful automated workflows. Integrate over 1000 apps on Make.
Read more >Profile & Settings — Zammad (for Agents) documentation
Generate personal access tokens for third party applications to use the Zammad API. Caution. Always generate a new token for each application you...
Read more >How to Install Zammad 2.0 on CentOS 7 - Vultr.com
Business CentOS Linux Guides Server Apps ... Zammad is an open source helpdesk/ticketing system designed for customer support teams.
Read more >Best IT Helpdesk Ticketing Systems You Must Try [2022]
Help desk automation; Asset management; Mobile help desk apps; SSL Encryption. 9. Zammad. Next on our ticketing system software list is Zammad.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
First working result I’ve removed all hostname references from variables. It can be re-added as needed, just wanted to make the template as simple as possible for debugging. The
CMD
is not actually passed to container as normal docker would do, but CapRover wraps it with/bin/sh -c
which breaks the entrypoint-command system Zammad is using in their containers. Worked around withWhat is currently broken: The init container is created over and over. The
restart
should be set toon-failure
, but according to https://github.com/caprover/one-click-apps therestart
directive is ignored. This prevents nginx from starting up (container is waiting for/var/lib/docker/volumes/captain--<app_name>-data/_data/tmp/zammad.ready
). You can manually delete init app after init phase is finished and create the file manually. There is probably some elegant way to fix this 😃I’ve also removed directives like
links
which are also ignored according to docu, changed expose to port, added few variables where needed etc. This definitely needs more time for testing and probably fixing.Anyway my template is following:
also someone could find this useful for dropping testing instances 😃