Merge branch 'development'
This commit is contained in:
1
templates/Cryptpad/0/README.md
Normal file
1
templates/Cryptpad/0/README.md
Normal file
@@ -0,0 +1 @@
|
||||
# Cryptpad
|
||||
36
templates/Cryptpad/0/docker-compose.yml
Normal file
36
templates/Cryptpad/0/docker-compose.yml
Normal file
@@ -0,0 +1,36 @@
|
||||
version: '2'
|
||||
|
||||
services:
|
||||
cryptpad:
|
||||
image: cryptpad/cryptpad:latest
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
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.frontend.entryPoints: http,https
|
||||
traefik.frontend.headers.forceSTSHeader: true
|
||||
traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information)
|
||||
traefik.frontend.headers.SSLRedirect: true
|
||||
traefik.frontend.headers.STSPreload: true
|
||||
traefik.frontend.headers.STSSeconds: 15552000
|
||||
traefik.frontend.passHostHeader: true
|
||||
traefik.frontend.rule: Host:${TRAEFIK_HOST}
|
||||
traefik.port: "3000"
|
||||
### End Web Segment
|
||||
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}/Blob:/cryptpad/blob
|
||||
- /RancherCattle/${DATA_DIR}/BlobStage:/cryptpad/blobstage
|
||||
- /RancherCattle/${DATA_DIR}/Block:/cryptpad/block
|
||||
- /RancherCattle/${DATA_DIR}/Configuration:/cryptpad/customize
|
||||
- /RancherCattle/${DATA_DIR}/Data:/cryptpad/datastore
|
||||
- /RancherCattle/${DATA_DIR}/Pins:/cryptpad/pins
|
||||
- /RancherCattle/${DATA_DIR}/Tasks:/cryptpad/tasks
|
||||
33
templates/Cryptpad/0/rancher-compose.yml
Normal file
33
templates/Cryptpad/0/rancher-compose.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
version: '2'
|
||||
catalog:
|
||||
name: Cryptpad
|
||||
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 of 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: "DATA_DIR"
|
||||
label: "Data Directory"
|
||||
description: |
|
||||
The directory to store persistent data for the stack.
|
||||
default: "Personal/Cryptpad"
|
||||
required: true
|
||||
type: string
|
||||
8
templates/Cryptpad/config.yml
Normal file
8
templates/Cryptpad/config.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
name: Cryptpad
|
||||
description: |
|
||||
Status: NOT READY
|
||||
version: latest
|
||||
# category:
|
||||
maintainer: WilliamMiceli
|
||||
# license:
|
||||
# projectURL:
|
||||
1
templates/Grav/0/README.md
Normal file
1
templates/Grav/0/README.md
Normal file
@@ -0,0 +1 @@
|
||||
# Grav
|
||||
31
templates/Grav/0/docker-compose.yml
Normal file
31
templates/Grav/0/docker-compose.yml
Normal file
@@ -0,0 +1,31 @@
|
||||
version: '2'
|
||||
|
||||
services:
|
||||
grav:
|
||||
image: williammiceli/grav:latest-git
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
labels:
|
||||
io.rancher.container.pull_image: always
|
||||
{{- if .Values.HOST_LABEL}}
|
||||
io.rancher.scheduler.affinity:host_label: ${HOST_LABEL}
|
||||
{{- end}}
|
||||
traefik.enable: true
|
||||
### Start Grav Segment
|
||||
traefik.frontend.entryPoints: http,https
|
||||
traefik.frontend.headers.forceSTSHeader: true
|
||||
traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information)
|
||||
traefik.frontend.headers.SSLRedirect: true
|
||||
traefik.frontend.headers.STSPreload: true
|
||||
traefik.frontend.headers.STSSeconds: 15552000
|
||||
traefik.frontend.passHostHeader: true
|
||||
traefik.frontend.rule: Host:${TRAEFIK_HOST}
|
||||
traefik.port: "80"
|
||||
### End Grav Segment
|
||||
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
|
||||
- /Rancher/${DATA_DIR}/Backups:/var/www/backup:rw # Backups
|
||||
- /Rancher/${DATA_DIR}/Images:/var/www/images:rw # Images
|
||||
33
templates/Grav/0/rancher-compose.yml
Normal file
33
templates/Grav/0/rancher-compose.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
version: '2'
|
||||
catalog:
|
||||
name: Grav
|
||||
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 of 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: "DATA_DIR"
|
||||
label: "Data Directory"
|
||||
description: |
|
||||
The directory to store persistent data for the stack.
|
||||
default: "Personal/Grav"
|
||||
required: true
|
||||
type: string
|
||||
8
templates/Grav/config.yml
Normal file
8
templates/Grav/config.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
name: Grav
|
||||
description: |
|
||||
Status: EXPERIMENTAL
|
||||
version: latest
|
||||
# category:
|
||||
maintainer: WilliamMiceli
|
||||
# license:
|
||||
# projectURL:
|
||||
1
templates/Jellyfin/0/README.md
Normal file
1
templates/Jellyfin/0/README.md
Normal file
@@ -0,0 +1 @@
|
||||
# Jellyfin
|
||||
32
templates/Jellyfin/0/docker-compose.yml
Normal file
32
templates/Jellyfin/0/docker-compose.yml
Normal file
@@ -0,0 +1,32 @@
|
||||
version: '2'
|
||||
|
||||
services:
|
||||
jellyfin:
|
||||
image: jellyfin/jellyfin:latest
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
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.frontend.entryPoints: http,https
|
||||
traefik.frontend.headers.forceSTSHeader: true
|
||||
traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information)
|
||||
traefik.frontend.headers.SSLRedirect: true
|
||||
traefik.frontend.headers.STSPreload: true
|
||||
traefik.frontend.headers.STSSeconds: 15552000
|
||||
traefik.frontend.passHostHeader: true
|
||||
traefik.frontend.rule: Host:${TRAEFIK_HOST}
|
||||
traefik.port: "8096"
|
||||
### End Web Segment
|
||||
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}/Cache:/cache # Cache files
|
||||
- /RancherCattle/${DATA_DIR}/Configuration:/config # Configuration files
|
||||
- /RancherCattle/${DATA_DIR}/Media:/mnt/library # Media files
|
||||
33
templates/Jellyfin/0/rancher-compose.yml
Normal file
33
templates/Jellyfin/0/rancher-compose.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
version: '2'
|
||||
catalog:
|
||||
name: Jellyfin
|
||||
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 of 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: "DATA_DIR"
|
||||
label: "Data Directory"
|
||||
description: |
|
||||
The directory to store persistent data for the stack.
|
||||
default: "Personal/Jellyfin"
|
||||
required: true
|
||||
type: string
|
||||
8
templates/Jellyfin/config.yml
Normal file
8
templates/Jellyfin/config.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
name: Jellyfin
|
||||
description: |
|
||||
Status: NOT READY
|
||||
version: latest
|
||||
# category:
|
||||
maintainer: WilliamMiceli
|
||||
# license:
|
||||
# projectURL:
|
||||
6
templates/Pydio-Cells/0/README.md
Normal file
6
templates/Pydio-Cells/0/README.md
Normal file
@@ -0,0 +1,6 @@
|
||||
# Pydio Cells
|
||||
|
||||
As of 2019/01/22:
|
||||
Cells seems UNSTABLE
|
||||
Was only able to get it started once, but didn't even make it all the way through installing.
|
||||
Will probably come back to this at a later date, once they've worked out all the issues.
|
||||
57
templates/Pydio-Cells/0/docker-compose.yml
Normal file
57
templates/Pydio-Cells/0/docker-compose.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
version: '2'
|
||||
|
||||
services:
|
||||
cells:
|
||||
image: pydio/cells:latest
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
environment:
|
||||
CELLS_BIND: "localhost:80"
|
||||
CELLS_EXTERNAL: "${TRAEFIK_HOST}:443"
|
||||
CELLS_NO_SSL: 0
|
||||
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 # Security enhancement (Prevents leaking of referer information)
|
||||
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}
|
||||
traefik.web.port: "80"
|
||||
### End Web Segment
|
||||
links:
|
||||
- mysql
|
||||
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}:/root/.config/pydio/cells
|
||||
mysql:
|
||||
image: mysql:5.7
|
||||
command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci]
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
environment:
|
||||
MYSQL_DATABASE: cells_db
|
||||
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS}
|
||||
MYSQL_USER: cells_user
|
||||
MYSQL_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: false
|
||||
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/mysql
|
||||
49
templates/Pydio-Cells/0/rancher-compose.yml
Normal file
49
templates/Pydio-Cells/0/rancher-compose.yml
Normal file
@@ -0,0 +1,49 @@
|
||||
version: '2'
|
||||
catalog:
|
||||
name: Pydio Cells
|
||||
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" database user.
|
||||
# default:
|
||||
required: true
|
||||
type: password
|
||||
|
||||
- variable: "DB_USER_PASS"
|
||||
label: "Database User Password"
|
||||
description: |
|
||||
A secure password to be used by the "cells_user" database user.
|
||||
# default:
|
||||
required: true
|
||||
type: password
|
||||
|
||||
- variable: "DATA_DIR"
|
||||
label: "Data Directory"
|
||||
description: |
|
||||
The directory to store persistent data for the stack.
|
||||
default: "Personal/Pydio-Cells"
|
||||
required: true
|
||||
type: string
|
||||
8
templates/Pydio-Cells/config.yml
Normal file
8
templates/Pydio-Cells/config.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
name: Pydio Cells
|
||||
description: |
|
||||
Status: EXPERIMENTAL
|
||||
version: latest
|
||||
# category:
|
||||
maintainer: WilliamMiceli
|
||||
# license:
|
||||
# projectURL:
|
||||
@@ -1 +0,0 @@
|
||||
# Turtl
|
||||
@@ -1,34 +0,0 @@
|
||||
turtl-api-data:
|
||||
labels:
|
||||
io.rancher.container.start_once: 'true'
|
||||
entrypoint:
|
||||
- /bin/true
|
||||
image: busybox
|
||||
volumes:
|
||||
- /opt/api/uploads
|
||||
- /var/lib/rethinkdb/instance1
|
||||
|
||||
turtl-api:
|
||||
ports:
|
||||
- 8181:8181/tcp
|
||||
environment:
|
||||
DISPLAY_ERRORS: ${DISPLAY_ERRORS}
|
||||
FQDN: ${FQDN}
|
||||
SITE_URL: ${SITE_URL}
|
||||
LOCAL_UPLOAD_URL: ${LOCAL_UPLOAD_URL}
|
||||
LOCAL_UPLOAD_PATH: ${LOCAL_UPLOAD_PATH}
|
||||
AWS_S3_TOKEN: ${AWS_S3_TOKEN}
|
||||
ADMIN_EMAIL: ${ADMIN_EMAIL}
|
||||
EMAIL_FROM: ${EMAIL_FROM}
|
||||
SMTP_USER: ${SMTP_USER}
|
||||
SMTP_PASS: ${SMTP_PASS}
|
||||
DEFAULT_STORAGE_LIMIT: ${DEFAULT_STORAGE_LIMIT}
|
||||
STORAGE_INVITE_CREDIT: ${STORAGE_INVITE_CREDIT}
|
||||
image: webofmars/turtl-docker:latest
|
||||
stdin_open: true
|
||||
tty: true
|
||||
labels:
|
||||
io.rancher.container.pull_image: always
|
||||
io.rancher.sidekicks: turtl-api-data
|
||||
volumes_from:
|
||||
- turtl-api-data
|
||||
@@ -1,110 +0,0 @@
|
||||
version: '2'
|
||||
catalog:
|
||||
name: Turtl
|
||||
version: latest
|
||||
# description:
|
||||
# minimum_rancher_version:
|
||||
# maximum_rancher_version:
|
||||
# upgrade_from:
|
||||
questions:
|
||||
|
||||
- variable: "DISPLAY_ERRORS"
|
||||
descrition: "Display errors"
|
||||
label: "Display errors: "
|
||||
required: false
|
||||
default: "t"
|
||||
type: "string"
|
||||
|
||||
- variable: "FQDN"
|
||||
description: "Fully Qualified Domain Name (ex: 'notes.example.com')."
|
||||
label: "fqdn"
|
||||
required: true
|
||||
default: "turtl.local"
|
||||
type: "string"
|
||||
|
||||
- variable: "SITE_URL"
|
||||
description: "The uri used to access the turtl api"
|
||||
label: "site url"
|
||||
required: true
|
||||
default: "http://turtl.local"
|
||||
type: "string"
|
||||
|
||||
- variable: "LOCAL_UPLOAD_PATH"
|
||||
description: "The local path of the uploaded content."
|
||||
label: "uploads local path"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "LOCAL_UPLOAD_URL"
|
||||
description: "The urls used to retrieve uploaded content. Must be set if you change LOCAL_UPLOAD_PATH. (ex: http://turtl.local)"
|
||||
label: "local upload url"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "AWS_S3_TOKEN"
|
||||
description: |
|
||||
Amazon Web Services S3 token. Used only if you use S3 as a storage backend. ex : (:token ''
|
||||
secret ''
|
||||
bucket ''
|
||||
endpoint 'https://s3.amazonaws.com')
|
||||
label: "AWS S3 token"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "ADMIN_EMAIL"
|
||||
description: "email adresse of administrator ex: admin@example.com"
|
||||
label: "Admin e-mail"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "EMAIL_FROM"
|
||||
description: "The e-mail adress used to send the e-mail from turtl to users."
|
||||
label: "e-mail from"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "SMTP_USER"
|
||||
description: "The user used to authenticate to the smtp server. Can be blank."
|
||||
label: "smtp user"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "SMTP_PASS"
|
||||
description: "The password used to authenticate to the smtp server. Can be blank."
|
||||
label: "smtp password"
|
||||
required: false
|
||||
default: ""
|
||||
type: "string"
|
||||
|
||||
- variable: "STORAGE_INVITE_CREDIT"
|
||||
description: "The number of MB a user gain when he invites someone"
|
||||
label: "storage invite credit"
|
||||
required: false
|
||||
default: ""
|
||||
type: "int"
|
||||
|
||||
- variable: "DEFAULT_STORAGE_LIMIT"
|
||||
description: "Maximum storage space (in MB) that can be used by a single user (ex: 1000)"
|
||||
label: "Default Storage Limit"
|
||||
required: false
|
||||
default: ""
|
||||
type: "int"
|
||||
|
||||
turtl-api-data:
|
||||
scale: 1
|
||||
turtl-api:
|
||||
scale: 1
|
||||
health_check:
|
||||
port: 8181
|
||||
interval: 2000
|
||||
initializing_timeout: 300000
|
||||
unhealthy_threshold: 10
|
||||
strategy: recreate
|
||||
response_timeout: 2000
|
||||
healthy_threshold: 2
|
||||
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="600" height="330.834" viewBox="0 0 600 330.834"><defs><style>.a{fill:#8fc46a;}.b,.c{fill:#fff;}.c{font-size:99.8449px;font-family:MicrosoftSansSerif, Microsoft Sans Serif;letter-spacing:0.2em;}.d{fill:#007fff;}.e{font-size:42px;fill:#e6f0fa;font-family:ImprintMT-Shadow, Imprint MT Shadow;}</style></defs><title>catalogIcon-turtl</title><rect class="a" width="600" height="330"/><path class="b" d="M150,260.9062H115.9688v-6.1875l-3.0938-3.0937-15.4687-3.0938H78.8438v-6.1875L75.75,239.25l-3.0937-3.0938H66.4688v-6.1875L63.375,226.875l-6.1875-3.0938L51,214.5V198.4588c89.33-16.7567,98.161-16.7567,198,0v15.4687l-6.1875,9.2813-6.1875,3.0937-3.0938,3.0938v6.76h-6.1875L224.25,239.25l-3.0938,3.0937v6.1875H202.5938L187.125,251.625l-3.0937,3.0937v6.1875Z"/><path class="a" d="M148.5022,222.2344H105.1406v-12.375h-24.75v-12.375H56.37l-3.05-20.8828,3.05-20.8828H68.0156v-24.75h12.375v-24.75h12.375V93.8438h12.375V81.4688h23.2032V69.3317L150,66.238l21.6563,3.0937V81.4688h24.75v12.375h10.8281v12.375h12.375v24.75h12.375v24.75h12.375l3.1428,20.8828-3.1428,20.8828h-24.75v12.375h-24.75v12.375Z"/><path d="M150,264H112.875V251.625H75.75V239.25H63.375V226.875H51V214.5H63.375v12.375H75.75V239.25h37.125v12.375h74.25V239.25H224.25V226.875h12.375V214.5H249v12.375H236.625V239.25H224.25v12.375H187.125V264Zm0-37.125H100.5V214.5H75.75V202.125H51v-49.5H63.375v-24.75H75.75v-24.75H88.125V90.75H100.5V78.375h24.75V66h49.5V78.375H199.5V90.75h12.375v12.375H224.25v24.75h12.375v24.75H249v49.5H224.25V214.5H199.5v12.375Zm0-12.375h37.125V189.75H199.5v12.375h12.375V189.75h24.75V165H199.5V152.625h24.75V140.25H211.875V115.5H199.5V103.125H174.75V90.75H162.375V78.375h-24.75V90.75H125.25v12.375H100.5V115.5H88.125v24.75H75.75v12.375H100.5V165H63.375v24.75h24.75v12.375H100.5V189.75h12.375V214.5Zm-30.9375-24.75H112.875V177.375H125.25V165H112.875V152.625H100.5v-24.75h12.375V115.5H125.25V103.125h49.5V115.5h12.375v12.375H199.5v24.75H187.125V165H174.75v12.375h12.375V189.75H174.75V177.375h-49.5V189.75ZM150,165h24.75V152.625h12.375v-24.75H174.75V115.5h-49.5v12.375H112.875v24.75H125.25V165Z"/><text class="c" transform="translate(276.7603 200.3564) scale(0.6916 1)">TURTL</text><path class="d" d="M596,4V326H4V4H596m4-4H0V330H600V0Z"/><rect class="d" x="550" y="280" width="50" height="50"/><text class="e" transform="translate(553.375 320.375)">W</text></svg>
|
||||
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -1,8 +0,0 @@
|
||||
name: Turtl
|
||||
description: |
|
||||
Status: NOT READY
|
||||
# version:
|
||||
category: Productivity
|
||||
maintainer: WilliamMiceli
|
||||
# license:
|
||||
# projectURL: https://github.com/webofmars/turtl-docker
|
||||
5
templates/YOURLS/0/README.md
Normal file
5
templates/YOURLS/0/README.md
Normal file
@@ -0,0 +1,5 @@
|
||||
# YOURLS
|
||||
|
||||
## Pre-Requisites
|
||||
|
||||
* Traefik deployed
|
||||
57
templates/YOURLS/0/docker-compose.yml
Normal file
57
templates/YOURLS/0/docker-compose.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
version: '2'
|
||||
|
||||
services:
|
||||
yourls:
|
||||
image: yourls:apache
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
environment:
|
||||
YOURLS_DB_HOST: mysql
|
||||
YOURLS_DB_NAME: yourls_db
|
||||
YOURLS_DB_USER: yourls_user
|
||||
YOURLS_DB_PASS: ${DB_USER_PASS}
|
||||
YOURLS_SITE: https://${TRAEFIK_HOST}
|
||||
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 # Security enhancement (Prevents leaking of referer information)
|
||||
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}
|
||||
traefik.web.port: "80"
|
||||
### End Web Segment
|
||||
links:
|
||||
- mysql
|
||||
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
|
||||
mysql:
|
||||
image: mysql:5
|
||||
dns: # Using Cloudflare DNS
|
||||
- 1.1.1.1
|
||||
- 1.0.0.1
|
||||
environment:
|
||||
MYSQL_DATABASE: yourls_db
|
||||
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS}
|
||||
MYSQL_USER: yourls_user
|
||||
MYSQL_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: false
|
||||
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/mysql
|
||||
49
templates/YOURLS/0/rancher-compose.yml
Normal file
49
templates/YOURLS/0/rancher-compose.yml
Normal file
@@ -0,0 +1,49 @@
|
||||
version: '2'
|
||||
catalog:
|
||||
name: YOURLS
|
||||
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" database user.
|
||||
# default:
|
||||
required: true
|
||||
type: password
|
||||
|
||||
- variable: "DB_USER_PASS"
|
||||
label: "Database User Password"
|
||||
description: |
|
||||
A secure password to be used by the "yourls_user" database user.
|
||||
# default:
|
||||
required: true
|
||||
type: password
|
||||
|
||||
- variable: "DATA_DIR"
|
||||
label: "Data Directory"
|
||||
description: |
|
||||
The directory to store persistent data for the stack.
|
||||
default: "Personal/YOURLS"
|
||||
required: true
|
||||
type: string
|
||||
8
templates/YOURLS/config.yml
Normal file
8
templates/YOURLS/config.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
name: YOURLS
|
||||
description: |
|
||||
Status: EXPERIMENTAL
|
||||
version: latest
|
||||
# category:
|
||||
maintainer: WilliamMiceli
|
||||
# license:
|
||||
# projectURL:
|
||||
Reference in New Issue
Block a user