templatized

This commit is contained in:
Josh Cox 2017-07-26 13:01:38 -05:00
parent 2ea779c878
commit e6c8359e0d
9 changed files with 25 additions and 245 deletions

View File

@ -1,5 +1,3 @@
# [ReactionCommerce](http://reactioncommerce.com/)
### Docs
The Reaction Commerce official docs are
@ -10,9 +8,8 @@ This template implements the same method as found
### MongoDB
This initial version pulls up its own mongodb just like the official
docker-compose.yml, if you have a mongo stack already running try the
`1.4.0-rancher2` version
You'll need a mongodb stack running, choose it in the external link
question below
### Traefik

View File

@ -11,12 +11,17 @@ services:
traefik.acme: true
traefik.port: 3000
environment:
MONGO_URL: "mongodb://mongo/reaction"
MONGO_URL: "mongodb://mongo/${MONGO_DB}"
ROOT_URL: "http://${REACTION_HOST}.${REACTION_DOMAIN}"
REACTION_EMAIL: ${REACTION_EMAIL}
REACTION_USER: ${REACTION_USER}
REACTION_AUTH: ${REACTION_AUTH}
{{- if ne .Values.mongo_link ""}}
REACTION_TEST: ${REACTION_AUTH}
external_links:
- ${mongo_link}:mongo
tty: true
{{- else}}
mongo:
command: mongod --storageEngine=wiredTiger
restart: always
@ -30,7 +35,7 @@ services:
io.rancher.container.hostname_override: container_name
volumes:
- mongodata:/data/db
volumes:
mongodata:
driver: ${VOLUME_DRIVER}
{{- end}}

View File

@ -16,7 +16,7 @@ catalog:
description: "Domain to use for the reaction server"
label: "reaction Domain"
required: true
default: ""
default: "local"
type: "string"
- variable: host_label
label: "Host Label to reaction Tags"
@ -29,7 +29,7 @@ catalog:
- variable: REACTION_EMAIL
label: "reaction Email"
required: true
default: ""
default: "test@local"
type: "string"
- variable: REACTION_USER
label: "reaction User"
@ -41,17 +41,20 @@ catalog:
required: true
default: ""
type: "password"
- variable: "VOLUME_DRIVER"
description: "The VOLUME driver to associate with this server"
label: "VOLUME Driver"
- variable: "mongo_link"
description: |
MongoDB external service link
cluster.
label: "External stack/service"
default: ""
required: false
type: "service"
- variable: "MONGO_DB"
default: "reaction"
description: "The mongodb name to associate with this server."
label: "mongo_db"
required: true
default: "local"
type: enum
options:
- local
- rancher-nfs
- rancher-efs
- rancher-ebs
type: "string"
services:
reaction:
@ -65,7 +68,6 @@ services:
interval: 5000
strategy: recreate
request_line: GET / # HTTP/1.0
mongo:
scale: 1
retain_ip: true

View File

@ -1,22 +0,0 @@
### Docs
The Reaction Commerce official docs are
[here](https://docs.reactioncommerce.com/)
This template implements the same method as found
[here](https://docs.reactioncommerce.com/reaction-docs/master/deploying-reaction-using-docker)
### MongoDB
You'll need a mongodb stack running, choose it in the external link
question below
### 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
### Support
There are experimental versions of this template in this catalog [here](https://github.com/ohmydocker/ohmydocker-catalog) which implement
other setups. Issues, PRs, etc are welcome there.

View File

@ -1,20 +0,0 @@
version: '2'
services:
reaction:
image: reactioncommerce/reaction:v1.4.0
restart: always
labels:
io.rancher.scheduler.affinity:host_label: ${host_label}
traefik.enable: true
traefik.alias: ${REACTION_HOST}
traefik.domain: ${REACTION_DOMAIN}
traefik.acme: true
traefik.port: 3000
environment:
MONGO_URL: ${MONGO_URL}
ROOT_URL: "http://${REACTION_HOST}.${REACTION_DOMAIN}"
REACTION_EMAIL: ${REACTION_EMAIL}
REACTION_USER: ${REACTION_USER}
REACTION_AUTH: ${REACTION_AUTH}
external_links:
- ${mongo_link}:mongo

View File

@ -1,70 +0,0 @@
version: '2'
catalog:
name: "reactiondemo"
version: 1.4.0-rancher2
description: "E-commerce powered by reaction"
uuid: reaction-0
minimum_rancher_version: v0.51.0
questions:
- variable: "REACTION_HOST"
description: "Hostname to use for the reaction server"
label: "reaction Hostname"
required: true
default: "reaction"
type: "string"
- variable: "REACTION_DOMAIN"
description: "Domain to use for the reaction server"
label: "reaction Domain"
required: true
default: ""
type: "string"
- variable: host_label
label: "Host Label to reaction Tags"
description: |
Host label to use as reaction 'value' tag.
Example: 'reaction=true'
required: false
default: "private=true"
type: "string"
- variable: REACTION_EMAIL
label: "reaction Email"
required: true
default: ""
type: "string"
- variable: REACTION_USER
label: "reaction User"
required: true
default: ""
type: "string"
- variable: REACTION_AUTH
label: "reaction Auth"
required: true
default: ""
type: "password"
- variable: "mongo_link"
description: |
MongoDB external service link
cluster.
label: "External stack/service"
default: ""
required: true
type: "service"
- variable: "MONGO_URL"
default: "mongodb://mongo/reaction"
description: "The mongodb url to associate with this server. !!Do not change!! if you are setting the external link above!"
label: "mongo_url"
required: true
type: "string"
services:
reaction:
scale: 1
retain_ip: true
health_check:
healthy_threshold: 2
response_timeout: 5000
port: 3000
unhealthy_threshold: 3
interval: 5000
strategy: recreate
request_line: GET / # HTTP/1.0

View File

@ -1,22 +0,0 @@
### Docs
The Reaction Commerce official docs are
[here](https://docs.reactioncommerce.com/)
This template implements the same method as found
[here](https://docs.reactioncommerce.com/reaction-docs/master/deploying-reaction-using-docker)
### MongoDB
You'll need a mongodb stack running, choose it in the external link
question below
### 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
### Support
There are experimental versions of this template in this catalog [here](https://github.com/ohmydocker/ohmydocker-catalog) which implement
other setups. Issues, PRs, etc are welcome there.

View File

@ -1,20 +0,0 @@
version: '2'
services:
reaction:
image: reactioncommerce/reaction:v1.4.0
restart: always
labels:
io.rancher.scheduler.affinity:host_label: ${host_label}
traefik.enable: true
traefik.alias: ${REACTION_HOST}
traefik.domain: ${REACTION_DOMAIN}
traefik.acme: true
traefik.port: 3000
environment:
MONGO_URL: "mongodb://mongo/${MONGO_DB}"
ROOT_URL: "http://${REACTION_HOST}.${REACTION_DOMAIN}"
REACTION_EMAIL: ${REACTION_EMAIL}
REACTION_USER: ${REACTION_USER}
REACTION_AUTH: ${REACTION_AUTH}
external_links:
- ${mongo_link}:mongo

View File

@ -1,70 +0,0 @@
version: '2'
catalog:
name: "reactiondemo"
version: 1.4.0-rancher3
description: "E-commerce powered by reaction"
uuid: reaction-0
minimum_rancher_version: v0.51.0
questions:
- variable: "REACTION_HOST"
description: "Hostname to use for the reaction server"
label: "reaction Hostname"
required: true
default: "reaction"
type: "string"
- variable: "REACTION_DOMAIN"
description: "Domain to use for the reaction server"
label: "reaction Domain"
required: true
default: ""
type: "string"
- variable: host_label
label: "Host Label to reaction Tags"
description: |
Host label to use as reaction 'value' tag.
Example: 'reaction=true'
required: false
default: "private=true"
type: "string"
- variable: REACTION_EMAIL
label: "reaction Email"
required: true
default: ""
type: "string"
- variable: REACTION_USER
label: "reaction User"
required: true
default: ""
type: "string"
- variable: REACTION_AUTH
label: "reaction Auth"
required: true
default: ""
type: "password"
- variable: "mongo_link"
description: |
MongoDB external service link
cluster.
label: "External stack/service"
default: ""
required: true
type: "service"
- variable: "MONGO_DB"
default: "reaction"
description: "The mongodb name to associate with this server."
label: "mongo_db"
required: true
type: "string"
services:
reaction:
scale: 1
retain_ip: true
health_check:
healthy_threshold: 2
response_timeout: 5000
port: 3000
unhealthy_threshold: 3
interval: 5000
strategy: recreate
request_line: GET / # HTTP/1.0