From b0f454bf40264a4ec10bb3d7b6672562ddb9de06 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Fri, 9 Dec 2016 08:46:09 -0800 Subject: [PATCH 01/17] Added Apache Guacamole entry --- templates/apache-guacamole/0/README.md | 21 ++++++ .../apache-guacamole/0/docker-compose.yml | 50 +++++++++++++ .../apache-guacamole/0/rancher-compose.yml | 68 ++++++++++++++++++ .../catalogIcon-apache-guacamole.png | Bin 0 -> 14890 bytes templates/apache-guacamole/config.yml | 8 +++ 5 files changed, 147 insertions(+) create mode 100644 templates/apache-guacamole/0/README.md create mode 100644 templates/apache-guacamole/0/docker-compose.yml create mode 100644 templates/apache-guacamole/0/rancher-compose.yml create mode 100644 templates/apache-guacamole/catalogIcon-apache-guacamole.png create mode 100644 templates/apache-guacamole/config.yml diff --git a/templates/apache-guacamole/0/README.md b/templates/apache-guacamole/0/README.md new file mode 100644 index 0000000..5ec7aab --- /dev/null +++ b/templates/apache-guacamole/0/README.md @@ -0,0 +1,21 @@ +# Apache Guacamole + +Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH. +We call it clientless because no plugins or client software are required. +Thanks to HTML5, once Guacamole is installed on a server, all you need to access your desktops is a web browser. + +This service uses the official Apache [http://guacamole.incubator.apache.org](https://hub.docker.com/r/glyptodon/guacamole/) Guacamole image. It also uses the official MariaDB image as its backend. +Health checks are enabled on all services. +## Prerequisites +You must have the Rancher-NFS storage driver set up. This is required for persistent SQL storage, otherwise all users and connection settings will be reset on every container move. + +## How to use + +Using all default settings will work. The MySQL root password is randomly generated and has "one time password" set. +After starting, the initial database setup will be executed by a runonce container. +The default login will be `guacadmin/guacadmin`. + +This stack exposes Guacamole on port 8080 by default. You can use it as it is, or map a load balancer to it and not expose the port. + +Once all containers are running, Guacamole is available on `http://[container_ip]:8080/`. +If the page is blank, try refreshing the page after 5-10 seconds, since the database container might still be initializing. \ No newline at end of file diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml new file mode 100644 index 0000000..0db26a8 --- /dev/null +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -0,0 +1,50 @@ +version: '2' +volumes: + db: + driver: rancher-nfs +services: + guacamole: + image: glyptodon/guacamole + environment: + MYSQL_HOSTNAME: database + MYSQL_DATABASE: ${guacamole_db} + MYSQL_PASSWORD: ${guacamole_password} + MYSQL_USER: ${guacamole_user} + command: + - /bin/bash + - -c + - "cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh;" + ports: + - ${public_port}:8080 + links: + - guacd:guacd + depends_on: + - database + guacd: + image: glyptodon/guacd + setup-get-db-script: + image: glyptodon/guacamole + volumes: + - /docker-entrypoint-initdb.d + command: + - bash + - -c + - /opt/guacamole/bin/initdb.sh --mysql > /docker-entrypoint-initdb.d/initdb.sql + labels: + io.rancher.container.start_once: 'true' + database: + image: mariadb + environment: + MYSQL_DATABASE: ${guacamole_db} + MYSQL_ONETIME_PASSWORD: 'true' + MYSQL_PASSWORD: ${guacamole_password} + MYSQL_RANDOM_ROOT_PASSWORD: 'true' + MYSQL_USER: ${guacamole_user} + labels: + io.rancher.sidekicks: setup-get-db-script + depends_on: + - setup-get-db-script + volumes_from: + - setup-get-db-script + volumes: + - db:/var/lib/mysql \ No newline at end of file diff --git a/templates/apache-guacamole/0/rancher-compose.yml b/templates/apache-guacamole/0/rancher-compose.yml new file mode 100644 index 0000000..0f757ea --- /dev/null +++ b/templates/apache-guacamole/0/rancher-compose.yml @@ -0,0 +1,68 @@ +version: '2' +services: + guacamole: + scale: 1 + health_check: + healthy_threshold: 2 + response_timeout: 2000 + port: 8080 + unhealthy_threshold: 3 + initializing_timeout: 60000 + interval: 2000 + strategy: recreate + request_line: GET "/guacamole" "HTTP/1.0" + reinitializing_timeout: 60000 + guacd: + scale: 1 + health_check: + healthy_threshold: 2 + response_timeout: 2000 + port: 4822 + unhealthy_threshold: 3 + initializing_timeout: 60000 + interval: 2000 + strategy: recreate + reinitializing_timeout: 60000 + setup-get-db-script: + scale: 1 + mysql: + scale: 1 + health_check: + healthy_threshold: 2 + response_timeout: 2000 + port: 3306 + unhealthy_threshold: 3 + initializing_timeout: 60000 + interval: 2000 + strategy: recreate + reinitializing_timeout: 60000 +.catalog: + name: "apache-guacamole" + version: "0.1-rancher1" + description: " Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH." + minimum_rancher_version: v0.46.0 + questions: + - variable: "guacamole_db" + label: "MySQL Database Name" + description: "Your MYSQL guacamole database name" + default: "guacamole_db" + required: true + type: "string" + - variable: "guacamole_user" + label: "MySQL Database User" + description: "Your MYSQL guacamole user name" + required: true + default: "guacamole_user" + type: "string" + - variable: "guacamole_password" + label: "MySQL Database Password" + description: "Your MYSQL guacamole user password. Defaults to \"guacamole_password\"" + required: true + default: "guacamole_password" + type: "password" + - variable: "public_port" + label: "Public Port" + description: "The public port that Guacamole listens on, defaults to 8080" + required: true + default: 8080 + type: "int" diff --git a/templates/apache-guacamole/catalogIcon-apache-guacamole.png b/templates/apache-guacamole/catalogIcon-apache-guacamole.png new file mode 100644 index 0000000000000000000000000000000000000000..5ff25d18fab940cdf8eebdee8fcc3604a2a52d24 GIT binary patch literal 14890 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" +projectURL: https://github.com/glyptodon/guacamole-docker \ No newline at end of file From e3091ac8ede33875aefc2350ec7e02a8a7ee6ab5 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Thu, 15 Dec 2016 21:22:04 -0800 Subject: [PATCH 02/17] Removed use of rancher-nfs and use data containers instead. --- .../apache-guacamole/0/docker-compose.yml | 76 ++++++++++--------- .../apache-guacamole/0/rancher-compose.yml | 4 +- 2 files changed, 42 insertions(+), 38 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 0db26a8..d35bb68 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -1,50 +1,52 @@ version: '2' -volumes: - db: - driver: rancher-nfs services: - guacamole: - image: glyptodon/guacamole + database: + image: mariadb environment: - MYSQL_HOSTNAME: database - MYSQL_DATABASE: ${guacamole_db} - MYSQL_PASSWORD: ${guacamole_password} - MYSQL_USER: ${guacamole_user} - command: - - /bin/bash - - -c - - "cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh;" - ports: - - ${public_port}:8080 - links: - - guacd:guacd - depends_on: - - database - guacd: - image: glyptodon/guacd + MYSQL_DATABASE: guacamole_db + MYSQL_ONETIME_PASSWORD: 'true' + MYSQL_PASSWORD: guacamole_password + MYSQL_RANDOM_ROOT_PASSWORD: 'true' + MYSQL_USER: guacamole_user + volumes_from: + - db-data + labels: + io.rancher.sidekicks: setup-get-db-script,db-data setup-get-db-script: image: glyptodon/guacamole - volumes: - - /docker-entrypoint-initdb.d + network_mode: none + volumes_from: + - db-data command: - bash - -c - /opt/guacamole/bin/initdb.sh --mysql > /docker-entrypoint-initdb.d/initdb.sql labels: io.rancher.container.start_once: 'true' - database: + db-data: image: mariadb - environment: - MYSQL_DATABASE: ${guacamole_db} - MYSQL_ONETIME_PASSWORD: 'true' - MYSQL_PASSWORD: ${guacamole_password} - MYSQL_RANDOM_ROOT_PASSWORD: 'true' - MYSQL_USER: ${guacamole_user} - labels: - io.rancher.sidekicks: setup-get-db-script - depends_on: - - setup-get-db-script - volumes_from: - - setup-get-db-script + network_mode: none volumes: - - db:/var/lib/mysql \ No newline at end of file + - /var/lib/mysql + - /docker-entrypoint-initdb.d + command: + - /bin/echo + labels: + io.rancher.container.start_once: 'true' + guacd: + image: glyptodon/guacd + guacamole: + image: glyptodon/guacamole + environment: + MYSQL_DATABASE: guacamole_db + MYSQL_HOSTNAME: database + MYSQL_PASSWORD: guacamole_password + MYSQL_USER: guacamole_user + links: + - guacd:guacd + ports: + - 8080:8080/tcp + command: + - /bin/bash + - -c + - cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh; \ No newline at end of file diff --git a/templates/apache-guacamole/0/rancher-compose.yml b/templates/apache-guacamole/0/rancher-compose.yml index 0f757ea..cbe0ddd 100644 --- a/templates/apache-guacamole/0/rancher-compose.yml +++ b/templates/apache-guacamole/0/rancher-compose.yml @@ -25,7 +25,9 @@ services: reinitializing_timeout: 60000 setup-get-db-script: scale: 1 - mysql: + db-data: + scale: 1 + database: scale: 1 health_check: healthy_threshold: 2 From acb97f0b9f227e232c3a5092c1d76c31c66b0d85 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Tue, 27 Dec 2016 09:46:33 -0800 Subject: [PATCH 03/17] Fixes suggested by catalog maintainer --- templates/apache-guacamole/0/README.md | 2 -- templates/apache-guacamole/0/docker-compose.yml | 14 +++++++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/templates/apache-guacamole/0/README.md b/templates/apache-guacamole/0/README.md index 5ec7aab..7a15622 100644 --- a/templates/apache-guacamole/0/README.md +++ b/templates/apache-guacamole/0/README.md @@ -6,8 +6,6 @@ Thanks to HTML5, once Guacamole is installed on a server, all you need to access This service uses the official Apache [http://guacamole.incubator.apache.org](https://hub.docker.com/r/glyptodon/guacamole/) Guacamole image. It also uses the official MariaDB image as its backend. Health checks are enabled on all services. -## Prerequisites -You must have the Rancher-NFS storage driver set up. This is required for persistent SQL storage, otherwise all users and connection settings will be reset on every container move. ## How to use diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index d35bb68..3e3c314 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -3,11 +3,11 @@ services: database: image: mariadb environment: - MYSQL_DATABASE: guacamole_db + MYSQL_DATABASE: ${guacamole_db} MYSQL_ONETIME_PASSWORD: 'true' - MYSQL_PASSWORD: guacamole_password + MYSQL_PASSWORD: ${guacamole_password} MYSQL_RANDOM_ROOT_PASSWORD: 'true' - MYSQL_USER: guacamole_user + MYSQL_USER: ${guacamole_user} volumes_from: - db-data labels: @@ -38,14 +38,14 @@ services: guacamole: image: glyptodon/guacamole environment: - MYSQL_DATABASE: guacamole_db + MYSQL_DATABASE: ${guacamole_db} MYSQL_HOSTNAME: database - MYSQL_PASSWORD: guacamole_password - MYSQL_USER: guacamole_user + MYSQL_PASSWORD: ${guacamole_password} + MYSQL_USER: ${guacamole_user} links: - guacd:guacd ports: - - 8080:8080/tcp + - ${public_port}:8080/tcp command: - /bin/bash - -c From 01aa82ac1cc08d6fc43f26b0511b6b2904d14b9b Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Fri, 10 Feb 2017 21:14:00 -0800 Subject: [PATCH 04/17] Update docker-compose.yml Switched to rancher-nfs again. --- .../apache-guacamole/0/docker-compose.yml | 28 ++++++++----------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 3e3c314..b13e320 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -8,31 +8,22 @@ services: MYSQL_PASSWORD: ${guacamole_password} MYSQL_RANDOM_ROOT_PASSWORD: 'true' MYSQL_USER: ${guacamole_user} - volumes_from: - - db-data + volumes: + - dbdata:/var/lib/mysql + - dbinit:/docker-entrypoint-initdb.d labels: - io.rancher.sidekicks: setup-get-db-script,db-data + io.rancher.sidekicks: setup-get-db-script setup-get-db-script: image: glyptodon/guacamole network_mode: none - volumes_from: - - db-data + volumes: + - dbinit:/docker-entrypoint-initdb.d command: - bash - -c - /opt/guacamole/bin/initdb.sh --mysql > /docker-entrypoint-initdb.d/initdb.sql labels: io.rancher.container.start_once: 'true' - db-data: - image: mariadb - network_mode: none - volumes: - - /var/lib/mysql - - /docker-entrypoint-initdb.d - command: - - /bin/echo - labels: - io.rancher.container.start_once: 'true' guacd: image: glyptodon/guacd guacamole: @@ -49,4 +40,9 @@ services: command: - /bin/bash - -c - - cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh; \ No newline at end of file + - cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh; +volumes: + dbdata: + driver: rancher-nfs + dbinit: + driver: rancher-nfs From c3b4a04b21b7a5d1fbc03511666ad14a41d236e9 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Fri, 10 Feb 2017 21:14:42 -0800 Subject: [PATCH 05/17] Update rancher-compose.yml Removed db-data container. --- templates/apache-guacamole/0/rancher-compose.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/templates/apache-guacamole/0/rancher-compose.yml b/templates/apache-guacamole/0/rancher-compose.yml index cbe0ddd..62c33dd 100644 --- a/templates/apache-guacamole/0/rancher-compose.yml +++ b/templates/apache-guacamole/0/rancher-compose.yml @@ -25,8 +25,6 @@ services: reinitializing_timeout: 60000 setup-get-db-script: scale: 1 - db-data: - scale: 1 database: scale: 1 health_check: From 096e758a9c8dd8a18137529c2d8b5566832e845b Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 29 Mar 2017 09:47:06 -0700 Subject: [PATCH 06/17] Update docker-compose.yml Reverted to use guacamole 0.9.10-incubating --- templates/apache-guacamole/0/docker-compose.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index b13e320..72bd58e 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -14,7 +14,7 @@ services: labels: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: - image: glyptodon/guacamole + image: glyptodon/guacamole:0.9.10-incubating network_mode: none volumes: - dbinit:/docker-entrypoint-initdb.d @@ -25,9 +25,9 @@ services: labels: io.rancher.container.start_once: 'true' guacd: - image: glyptodon/guacd + image: glyptodon/guacd:0.9.10-incubating guacamole: - image: glyptodon/guacamole + image: glyptodon/guacamole:0.9.10-incubating environment: MYSQL_DATABASE: ${guacamole_db} MYSQL_HOSTNAME: database From 565a1b80a2471de66d6be3a79636682a77057cb0 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 20:48:31 -0800 Subject: [PATCH 07/17] Added external: true to both volume definitions. --- templates/apache-guacamole/0/docker-compose.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 72bd58e..450fc1b 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -43,6 +43,8 @@ services: - cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh; volumes: dbdata: + external: true driver: rancher-nfs dbinit: + external: true driver: rancher-nfs From 735f58545e3092f7f26c43024332da77bce556a0 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 20:56:07 -0800 Subject: [PATCH 08/17] Removed external volume definition --- templates/apache-guacamole/0/docker-compose.yml | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 450fc1b..889b39f 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -9,15 +9,17 @@ services: MYSQL_RANDOM_ROOT_PASSWORD: 'true' MYSQL_USER: ${guacamole_user} volumes: - - dbdata:/var/lib/mysql - - dbinit:/docker-entrypoint-initdb.d + - dbdata:/var/lib/mysql + - dbinit:/docker-entrypoint-initdb.d + volume-driver: rancher-nfs labels: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: image: glyptodon/guacamole:0.9.10-incubating network_mode: none volumes: - - dbinit:/docker-entrypoint-initdb.d + - dbinit:/docker-entrypoint-initdb.d + volume-driver: rancher-nfs command: - bash - -c @@ -41,10 +43,3 @@ services: - /bin/bash - -c - cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh; -volumes: - dbdata: - external: true - driver: rancher-nfs - dbinit: - external: true - driver: rancher-nfs From d51cfc775eaed13e5c33255d7f39d4004f40e1d5 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 20:57:51 -0800 Subject: [PATCH 09/17] corrected volume-driver to volume_driver --- templates/apache-guacamole/0/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 889b39f..0a9e272 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -11,7 +11,7 @@ services: volumes: - dbdata:/var/lib/mysql - dbinit:/docker-entrypoint-initdb.d - volume-driver: rancher-nfs + volume_driver: rancher-nfs labels: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: @@ -19,7 +19,7 @@ services: network_mode: none volumes: - dbinit:/docker-entrypoint-initdb.d - volume-driver: rancher-nfs + volume_driver: rancher-nfs command: - bash - -c From aeaf4e2bbcc1252deb6e6ae13fc07f4277425eaf Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:06:07 -0800 Subject: [PATCH 10/17] added external volume defs again... --- templates/apache-guacamole/0/docker-compose.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 0a9e272..f01b038 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -1,4 +1,9 @@ version: '2' +volumes: + dbdata: + driver: rancher-nfs + dbinit: + driver: rancher-nfs services: database: image: mariadb @@ -11,7 +16,6 @@ services: volumes: - dbdata:/var/lib/mysql - dbinit:/docker-entrypoint-initdb.d - volume_driver: rancher-nfs labels: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: From 03a51a1a7d678838c2d8cbd5c4ae171e07cedf71 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:12:51 -0800 Subject: [PATCH 11/17] Added :nocopy to volume definitions. --- templates/apache-guacamole/0/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index f01b038..e7f1a16 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -14,8 +14,8 @@ services: MYSQL_RANDOM_ROOT_PASSWORD: 'true' MYSQL_USER: ${guacamole_user} volumes: - - dbdata:/var/lib/mysql - - dbinit:/docker-entrypoint-initdb.d + - dbdata:/var/lib/mysql:nocopy + - dbinit:/docker-entrypoint-initdb.d:nocopy labels: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: From cad2d8376eb7d08f20cf7cef23dc84c0162bce8a Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:22:26 -0800 Subject: [PATCH 12/17] attempt to use busybox to host db data. --- .../apache-guacamole/0/docker-compose.yml | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index e7f1a16..64ff655 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -1,10 +1,14 @@ version: '2' -volumes: - dbdata: - driver: rancher-nfs - dbinit: - driver: rancher-nfs services: + database-data: + image: busybox + labels: + io.rancher.container.start_once: 'true' + net: none + entrypoint: /bin/true + volumes: + - /var/lib/mysql + - /docker-entrypoint-initdb.d database: image: mariadb environment: @@ -13,17 +17,15 @@ services: MYSQL_PASSWORD: ${guacamole_password} MYSQL_RANDOM_ROOT_PASSWORD: 'true' MYSQL_USER: ${guacamole_user} - volumes: - - dbdata:/var/lib/mysql:nocopy - - dbinit:/docker-entrypoint-initdb.d:nocopy + volumes_from: + - database-data labels: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: image: glyptodon/guacamole:0.9.10-incubating network_mode: none - volumes: - - dbinit:/docker-entrypoint-initdb.d - volume_driver: rancher-nfs + volumes_from: + - database-data command: - bash - -c From d4f6b4a81cd1addbe444af73b895d09e754f5092 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:41:16 -0800 Subject: [PATCH 13/17] removed version from yaml. --- templates/apache-guacamole/0/docker-compose.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 64ff655..3433682 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -1,4 +1,3 @@ -version: '2' services: database-data: image: busybox From cdd438b5b8c1d468cb50009c2964b6a632c955cb Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:41:48 -0800 Subject: [PATCH 14/17] removed top-level services --- templates/apache-guacamole/0/docker-compose.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 3433682..c3b289b 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -1,5 +1,4 @@ -services: - database-data: +database-data: image: busybox labels: io.rancher.container.start_once: 'true' From 2c3745fc90c8bf612da16e37b1d0207e171c7b5b Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:44:47 -0800 Subject: [PATCH 15/17] Fixed indentation --- .../apache-guacamole/0/docker-compose.yml | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index c3b289b..df84eb2 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -1,49 +1,49 @@ database-data: - image: busybox - labels: - io.rancher.container.start_once: 'true' - net: none - entrypoint: /bin/true - volumes: - - /var/lib/mysql - - /docker-entrypoint-initdb.d - database: - image: mariadb - environment: - MYSQL_DATABASE: ${guacamole_db} - MYSQL_ONETIME_PASSWORD: 'true' - MYSQL_PASSWORD: ${guacamole_password} - MYSQL_RANDOM_ROOT_PASSWORD: 'true' - MYSQL_USER: ${guacamole_user} - volumes_from: - - database-data - labels: - io.rancher.sidekicks: setup-get-db-script - setup-get-db-script: - image: glyptodon/guacamole:0.9.10-incubating - network_mode: none - volumes_from: - - database-data - command: - - bash - - -c - - /opt/guacamole/bin/initdb.sh --mysql > /docker-entrypoint-initdb.d/initdb.sql - labels: - io.rancher.container.start_once: 'true' - guacd: - image: glyptodon/guacd:0.9.10-incubating - guacamole: - image: glyptodon/guacamole:0.9.10-incubating - environment: - MYSQL_DATABASE: ${guacamole_db} - MYSQL_HOSTNAME: database - MYSQL_PASSWORD: ${guacamole_password} - MYSQL_USER: ${guacamole_user} - links: - - guacd:guacd - ports: + image: busybox + labels: + io.rancher.container.start_once: 'true' + net: none + entrypoint: /bin/true + volumes: + - /var/lib/mysql + - /docker-entrypoint-initdb.d +database: + image: mariadb + environment: + MYSQL_DATABASE: ${guacamole_db} + MYSQL_ONETIME_PASSWORD: 'true' + MYSQL_PASSWORD: ${guacamole_password} + MYSQL_RANDOM_ROOT_PASSWORD: 'true' + MYSQL_USER: ${guacamole_user} + volumes_from: + - database-data + labels: + io.rancher.sidekicks: setup-get-db-script +setup-get-db-script: + image: glyptodon/guacamole:0.9.10-incubating + network_mode: none + volumes_from: + - database-data + command: + - bash + - -c + - /opt/guacamole/bin/initdb.sh --mysql > /docker-entrypoint-initdb.d/initdb.sql + labels: + io.rancher.container.start_once: 'true' +guacd: + image: glyptodon/guacd:0.9.10-incubating +guacamole: + image: glyptodon/guacamole:0.9.10-incubating + environment: + MYSQL_DATABASE: ${guacamole_db} + MYSQL_HOSTNAME: database + MYSQL_PASSWORD: ${guacamole_password} + MYSQL_USER: ${guacamole_user} + links: + - guacd:guacd + ports: - ${public_port}:8080/tcp - command: + command: - /bin/bash - -c - cd /usr/local/tomcat/webapps;rm -rf ROOT/; ln -s guacamole.war ROOT.war; /opt/guacamole/bin/start.sh; From fe1efde4014a2940f2e599162f7f73e4b14d0303 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Wed, 15 Nov 2017 21:45:46 -0800 Subject: [PATCH 16/17] removed net: none from setup-get-db-script --- templates/apache-guacamole/0/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index df84eb2..07d56b9 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -21,7 +21,7 @@ database: io.rancher.sidekicks: setup-get-db-script setup-get-db-script: image: glyptodon/guacamole:0.9.10-incubating - network_mode: none + net: none volumes_from: - database-data command: From e4ea9216b0a2d5b51967e2356e74268e81784ec4 Mon Sep 17 00:00:00 2001 From: Kevin Xu Date: Thu, 14 Dec 2017 13:47:31 -0800 Subject: [PATCH 17/17] Update docker-compose.yml Added database-data to sidekick, as suggested by @rawmind0 --- templates/apache-guacamole/0/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/apache-guacamole/0/docker-compose.yml b/templates/apache-guacamole/0/docker-compose.yml index 07d56b9..c6326d2 100644 --- a/templates/apache-guacamole/0/docker-compose.yml +++ b/templates/apache-guacamole/0/docker-compose.yml @@ -18,7 +18,7 @@ database: volumes_from: - database-data labels: - io.rancher.sidekicks: setup-get-db-script + io.rancher.sidekicks: setup-get-db-script, database-data setup-get-db-script: image: glyptodon/guacamole:0.9.10-incubating net: none