diff --git a/templates/XWiki/0/README.md b/templates/XWiki/0/README.md new file mode 100644 index 0000000..17c70db --- /dev/null +++ b/templates/XWiki/0/README.md @@ -0,0 +1,15 @@ +# XWiki + +## Will continue this later + + + +## Popular Configuration Articles +* [https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/Configuration/] +* [https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/Virtualization/] +* [https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/ShortURLs/] + +### TODO + +* Fix issue with some page assets being delivered over http instead of https +* Document setting up domain DNS for [wildcard Let's Encrypt certificates](https://docs.traefik.io/configuration/acme/#wildcard-domains) \ No newline at end of file diff --git a/templates/XWiki/0/docker-compose.yml b/templates/XWiki/0/docker-compose.yml new file mode 100644 index 0000000..4b86480 --- /dev/null +++ b/templates/XWiki/0/docker-compose.yml @@ -0,0 +1,57 @@ +version: '2' + +services: + xwiki: + image: xwiki:stable-postgres-tomcat + dns: + - 1.1.1.1 + - 1.0.0.1 + environment: + DB_HOST: postgresql + DB_DATABASE: xwiki_db + DB_USER: xwiki_user + DB_PASSWORD: ${DB_USER_PASS} + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: true + ### Start Web Segment + traefik.web.frontend.entryPoints: http, https + traefik.web.frontend.headers.forceSTSHeader: true + traefik.web.frontend.headers.referrerPolicy: no-referrer + traefik.web.frontend.headers.SSLRedirect: true + traefik.web.frontend.headers.STSPreload: true + traefik.web.frontend.headers.STSSeconds: 15552000 + traefik.web.frontend.rule: "Host:${TRAEFIK_HOST}" # HostRegexp:${TRAEFIK_HOST},{subdomain:.+}. + traefik.web.port: "8080" + ### End Web Segment + links: + - postgresql + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}/XWiki:/usr/local/xwiki + postgresql: + image: postgres:alpine + dns: + - 1.1.1.1 + - 1.0.0.1 + environment: + POSTGRES_INITDB_ARGS: "--encoding=UTF8" + POSTGRES_DB: xwiki_db + POSTGRES_ROOT_PASSWORD: ${DB_ROOT_PASS} + POSTGRES_USER: xwiki_user + POSTGRES_PASSWORD: ${DB_USER_PASS} + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}/Database:/var/lib/postgresql/data \ No newline at end of file diff --git a/templates/XWiki/0/rancher-compose.yml b/templates/XWiki/0/rancher-compose.yml new file mode 100644 index 0000000..7d86f2a --- /dev/null +++ b/templates/XWiki/0/rancher-compose.yml @@ -0,0 +1,49 @@ +version: '2' +catalog: + name: XWiki + version: latest + # description: + # minimum_rancher_version: + # maximum_rancher_version: + # upgrade_from: + questions: + + - variable: "HOST_LABEL" + label: "Host Label Key/Value Pair" + description: | + The Label Key/Value pair on the host which containers should be deployed + default: "host.id=Host1" + required: false + type: string + + - variable: "TRAEFIK_HOST" + label: "Public Host Domain" + description: | + The host that Traefik will use to provide public access. + default: "subdomain.domain.tld" + required: true + type: string + + - variable: "DB_ROOT_PASS" + label: "Database Root Password" + description: | + A secure password to be used by the "root" MySQL user. + # default: + required: true + type: password + + - variable: "DB_USER_PASS" + label: "Database User Password" + description: | + A secure password to be used by the "xwiki_user" MySQL user. + # default: + required: true + type: password + + - variable: "DATA_DIR" + label: "Data Directory" + description: | + The directory to store persistent data for the stack. + default: "Personal/XWiki" + required: true + type: string \ No newline at end of file diff --git a/templates/XWiki/config.yml b/templates/XWiki/config.yml new file mode 100644 index 0000000..ed31e90 --- /dev/null +++ b/templates/XWiki/config.yml @@ -0,0 +1,8 @@ +name: XWiki +description: | + Status: EXPERIMENTAL +version: latest +category: Wiki +maintainer: WilliamMiceli +# license: +# projectURL: \ No newline at end of file