From d755a32613c8345c407b552e8526d25f2a274385 Mon Sep 17 00:00:00 2001 From: Josh Cox Date: Tue, 25 Jul 2017 10:59:53 -0500 Subject: [PATCH] Added Reaction Commerce --- templates/reactioncommerce/0/README.md | 17 +++++ .../reactioncommerce/0/docker-compose.yml | 36 +++++++++ .../reactioncommerce/0/rancher-compose.yml | 69 ++++++++++++++++++ templates/reactioncommerce/README.md | 3 + .../catalogIcon-reactioncommerce.png | Bin 0 -> 1721 bytes templates/reactioncommerce/config.yml | 5 ++ 6 files changed, 130 insertions(+) create mode 100644 templates/reactioncommerce/0/README.md create mode 100644 templates/reactioncommerce/0/docker-compose.yml create mode 100644 templates/reactioncommerce/0/rancher-compose.yml create mode 100644 templates/reactioncommerce/README.md create mode 100644 templates/reactioncommerce/catalogIcon-reactioncommerce.png create mode 100644 templates/reactioncommerce/config.yml diff --git a/templates/reactioncommerce/0/README.md b/templates/reactioncommerce/0/README.md new file mode 100644 index 0000000..7f09fa4 --- /dev/null +++ b/templates/reactioncommerce/0/README.md @@ -0,0 +1,17 @@ +### 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) + +### 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. diff --git a/templates/reactioncommerce/0/docker-compose.yml b/templates/reactioncommerce/0/docker-compose.yml new file mode 100644 index 0000000..78f4a8b --- /dev/null +++ b/templates/reactioncommerce/0/docker-compose.yml @@ -0,0 +1,36 @@ +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://meango/reaction" + ROOT_URL: "http://${REACTION_HOST}.${REACTION_DOMAIN}" + REACTION_EMAIL: ${REACTION_EMAIL} + REACTION_USER: ${REACTION_USER} + REACTION_AUTH: ${REACTION_AUTH} + + meango: + command: mongod --storageEngine=wiredTiger + restart: always + environment: + MONGO_SERVICE_NAME: meango + CATTLE_SCRIPT_DEBUG: ${debug} + tty: true + image: mongo:3.4 + labels: + io.rancher.scheduler.affinity:host_label: ${host_label} + io.rancher.container.hostname_override: container_name + volumes: + - meangodata:/data/db + +volumes: + meangodata: + driver: ${VOLUME_DRIVER} diff --git a/templates/reactioncommerce/0/rancher-compose.yml b/templates/reactioncommerce/0/rancher-compose.yml new file mode 100644 index 0000000..05375ff --- /dev/null +++ b/templates/reactioncommerce/0/rancher-compose.yml @@ -0,0 +1,69 @@ +.catalog: + name: "reactiondemo" + version: 1.4.0-rancher1 + 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: "VOLUME_DRIVER" + description: "The VOLUME driver to associate with this server" + label: "VOLUME Driver" + required: true + default: "local" + type: enum + options: + - local + - rancher-nfs + - rancher-efs + - rancher-ebs + +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 + +meango: + scale: 1 + retain_ip: true diff --git a/templates/reactioncommerce/README.md b/templates/reactioncommerce/README.md new file mode 100644 index 0000000..d507eac --- /dev/null +++ b/templates/reactioncommerce/README.md @@ -0,0 +1,3 @@ +#[ReactionCommerce](http://reactioncommerce.com/) + + diff --git a/templates/reactioncommerce/catalogIcon-reactioncommerce.png b/templates/reactioncommerce/catalogIcon-reactioncommerce.png new file mode 100644 index 0000000000000000000000000000000000000000..bd5e651a7a11fdc18b1941903c4287b903b4cbb0 GIT binary patch literal 1721 zcmV;q21fabP)Px*b4f%&R9Fe^n0agzbri?n`_0U5TUw;W8n1Sh+g*rJQW`uGhzd~=5RfC0D4^RS z#M^ivm=N&@NsUKnw+I@~ASx;;36OXrAcq>6wTf2SDp8uYXsp{n>*nskhW&Zgedn0`=-qg+(Ar?FRo`3?f0>4P=SAI|=G zPoIk__lU=(dK%>K?Eeqo!+b9 zievVDT4X(-ezZ(3@!?Fr(-Y^BvHdws(z;r-%wXoXvn^wG($!ZJ>WJ5ROmpWx8xH|& z3oxbwZ0X#x@RY8!UgWy^Ro_uP0(Va3S7RJUc8bs-B|KFHbDmfgi`R(gdztBl9)k;2 z+6!HBH#5mE0gFeIY1X>QPA?Izz;S0GM{e@rPMYQhZP*)3)~8lzlDP=uX3EQ*k?Lr_ zl-=};#N=S_9B=i>`m(7r{;m&qQoR_rPu@kxQ-)C#&H9NPxneHdW2Xph~Nqc%E<$2(om|co8u?||wC*s+s3?P3{I_RSl%A8#dxBKxo5 zimUAFQK#^-${jE;Q;8G;@?m7&CY&+EADc$bG*=QMB;{^ofkRkLlH8n+x3}0E5XNzs z^jxqwF#p@D1}6_u9sW3OI8WfIhSXCc5=F?iWRW?;DsY;@6n4L8{$^c*-G_wq&xIUb zdcd(40$@38*0E_#5=kp+YukZR5@N--HIzl3`aP82Kdyubt*kv4V4rwkp1=nTjf_c< zb8%Y>9oW`vf1fb)1r6ols1fY5tVzdL!B_=6w8;qOjAHE!6_>UN@hM7~iF0QmULDXZ( zkq@!B2et~^&1geXgVUOJBU}*(eCEI*;XB$}X-Qglt$~i7SB4eI7Hf#1WM@~}-G+G+ zvCabx<&hb?%KjP51I)l7^=q`Ir4aYpyaF!41#5px+t_{4@M2S`5%A;+!%(y4m4%~j zvSX1;v;lK}GL%^oG^{Okwe|-n8;h{!c?X9?2m*wtFe6e0wXK%?&?^46TI*sLjF=A=a16j7C{EP zQR&Y|;h4k0z(736+n93;LR*Eg1BPXkV%?hVLizLf(9bY@Gfag|IJ;ISJ6=GFUxN_T zK)5#g3t%7%Q`Td%9*ug|5B|P&ZZ!Pt>gxDn(X<2)_6_Dtg=gaa!d~K#%Oiq$*3;i! zKloRFygO%~DFdgJ8VTLKj-v>=y0@`BQZaN@ZJxtszf>yuBt(BLDt;X+bzP8*hJ>VF z1~>|+dbMwXM6q49cgJvd=J;@#Y(Y3l)Jm6>l2@lo4>i9I)6xdfDegz)& z_Vg3h{-ilry3yNaN(;_gw01h9j2&r*Vb*#hJpah}iS8ZIoTAAM(eOJBC)(mMte??b zV>I&4G2C}jre@$yinU`j@;}@$IxI82SN|uh@HSh9+V(>Rw>NYS|C|0Bq2bG+B<+Eb P00000NkvXXu0mjfGF)BE literal 0 HcmV?d00001 diff --git a/templates/reactioncommerce/config.yml b/templates/reactioncommerce/config.yml new file mode 100644 index 0000000..7719f54 --- /dev/null +++ b/templates/reactioncommerce/config.yml @@ -0,0 +1,5 @@ +name: Reaction Commerce +description: | + E-commerce powered by Reaction +version: 1.4.0-rancher1 +category: Repository