diff --git a/templates/wekan/1/README.md b/templates/wekan/1/README.md new file mode 100644 index 0000000..2e2c0cb --- /dev/null +++ b/templates/wekan/1/README.md @@ -0,0 +1,9 @@ +# [Wekan](https://wekan.github.io/) + +The open-source Trello-like kanban. + +### Traefik + +For external access you'll need to setup +[traefik](https://github.com/rancher/community-catalog/tree/master/templates/traefik) +, all the appropriate labels will be set when you set the hostname and domain below diff --git a/templates/wekan/1/docker-compose.yml.tpl b/templates/wekan/1/docker-compose.yml.tpl new file mode 100644 index 0000000..87a9f09 --- /dev/null +++ b/templates/wekan/1/docker-compose.yml.tpl @@ -0,0 +1,42 @@ +version: '2' +services: + wekan: + image: mquandalle/wekan + restart: always + labels: + traefik.enable: true + traefik.alias: ${WEKAN_HOST} + traefik.domain: ${WEKAN_DOMAIN} + traefik.acme: true + traefik.port: 80 + {{- if ne .Values.host_label ""}} + io.rancher.scheduler.affinity:host_label: ${host_label} + {{- end}} + environment: + MONGO_URL: "mongodb://mongo/${MONGO_DB}" + ROOT_URL: "http://${WEKAN_HOST}.${WEKAN_DOMAIN}" +{{- if ne .Values.mongo_link ""}} + external_links: + - ${mongo_link}:mongo + tty: true +{{- else}} + mongo: + command: mongod --storageEngine=wiredTiger + restart: always + environment: + MONGO_SERVICE_NAME: mongo + CATTLE_SCRIPT_DEBUG: ${debug} + tty: true + image: mongo:3.4 + labels: + io.rancher.container.hostname_override: container_name + {{- if ne .Values.host_label ""}} + io.rancher.scheduler.affinity:host_label: ${host_label} + {{- end}} + volumes: + - mongodata:/data/db +volumes: + mongodata: + driver: ${VOLUME_DRIVER} + per_container: true +{{- end}} diff --git a/templates/wekan/1/rancher-compose.yml b/templates/wekan/1/rancher-compose.yml new file mode 100644 index 0000000..f0d6ecd --- /dev/null +++ b/templates/wekan/1/rancher-compose.yml @@ -0,0 +1,66 @@ +version: '2' +catalog: + name: "Wekan" + version: "v0.3.1" + description: "The open-source Trello-like kanban (build with Meteor)" + uuid: wekan-0 + minimum_rancher_version: v0.51.0 + questions: + - variable: "WEKAN_HOST" + description: "Hostname to use for the wekan server" + label: "wekan Hostname" + required: true + default: "wekan" + type: "string" + - variable: "WEKAN_DOMAIN" + description: "Domain to use for the wekan server" + label: "wekan Domain" + required: true + default: "local" + type: "string" + - variable: host_label + label: "Host Label to wekan Tags" + description: | + Host label to use as wekan 'value' tag. + Example: 'wekan=true' + required: false + default: "" + type: "string" + - variable: "mongo_link" + description: | + MongoDB external service link + cluster. + label: "External stack/service" + default: "" + required: false + type: "service" + - variable: "MONGO_DB" + default: "wekan" + description: "The mongodb name to associate with this server." + label: "mongo_db" + required: true + type: "string" + - variable: "VOLUME_DRIVER" + description: "The VOLUME driver to associate with this server" + label: "VOLUME Driver" + required: true + default: "rancher-nfs" + type: enum + options: + - local + - rancher-nfs + - rancher-efs + - rancher-ebs + +services: + wekan: + scale: 1 + retain_ip: true + health_check: + healthy_threshold: 2 + response_timeout: 5000 + port: 80 + unhealthy_threshold: 3 + interval: 5000 + strategy: recreate + request_line: GET / # HTTP/1.0 diff --git a/templates/wekan/config.yml b/templates/wekan/config.yml index ac486b3..de73d2d 100644 --- a/templates/wekan/config.yml +++ b/templates/wekan/config.yml @@ -1,5 +1,5 @@ name: Wekan description: | The open-source Trello-like kanban (build with Meteor) -version: v0.1-educaas +version: "v0.3.1" category: Kanban