From cd94b9901d22d98f91cad28dc5adb6309e23da8e Mon Sep 17 00:00:00 2001 From: Jacob Cody Wimer Date: Wed, 11 Jul 2018 13:23:17 +0000 Subject: [PATCH] Updating to compose api version 3.3 --- deploy/deploy-test.sh | 3 +- deploy/docker-compose-common.yml | 25 ---- deploy/docker-compose-prod-full-stack.yml | 88 ++++++++----- deploy/docker-compose-test.yml | 154 ++++++++++++++-------- 4 files changed, 154 insertions(+), 116 deletions(-) delete mode 100644 deploy/docker-compose-common.yml diff --git a/deploy/deploy-test.sh b/deploy/deploy-test.sh index c9a59bf..d6ab59b 100755 --- a/deploy/deploy-test.sh +++ b/deploy/deploy-test.sh @@ -1,7 +1,8 @@ #!/bin/bash project_dir="$(dirname $( dirname $(readlink -f ${BASH_SOURCE[0]})))" -docker build -t wrestlingdev -f ${project_dir}/deploy/rails-prod-Dockerfile ${project_dir} +docker build -t wrestlingdev:test -f ${project_dir}/deploy/rails-prod-Dockerfile ${project_dir} docker-compose -f ${project_dir}/deploy/docker-compose-test.yml kill +#docker-compose -f ${project_dir}/deploy/docker-compose-test.yml pull docker-compose -f ${project_dir}/deploy/docker-compose-test.yml up -d echo Make sure your local mysql database has a wrestlingtourney db diff --git a/deploy/docker-compose-common.yml b/deploy/docker-compose-common.yml deleted file mode 100644 index 0de23b1..0000000 --- a/deploy/docker-compose-common.yml +++ /dev/null @@ -1,25 +0,0 @@ -app: - image: wrestlingdev - ports: - - "80:80" - - "443:443" -jobs: - image: wrestlingdev - command: bundle exec rake:jobs -db: - image: mysql:5.5 - ports: - - "3306:3306" - volumes: - - /srv/docker/mysql:/var/lib/mysql - -email: - image: postfix - -memcached: - image: memcached - mem_limit: 64000000 - -worker: - image: wrestlingdev - command: /bin/bash -c "cd /rails && bundle exec rake jobs:work RAILS_ENV=production" diff --git a/deploy/docker-compose-prod-full-stack.yml b/deploy/docker-compose-prod-full-stack.yml index 09430ec..a94f6a9 100644 --- a/deploy/docker-compose-prod-full-stack.yml +++ b/deploy/docker-compose-prod-full-stack.yml @@ -1,36 +1,54 @@ -app: - extends: - file: docker-compose-common.yml - service: app - image: wrestlingdev-prod - links: - - db - restart: always - env_file: - - ./prod.env -db: - extends: - file: docker-compose-common.yml - service: db - restart: always - env_file: - - ./prod.env -worker: - extends: - file: docker-compose-common.yml - service: worker - image: wrestlingdev-prod - links: - - db - restart: always - env_file: - - ./prod.env - healthcheck: - test: ps -ef | grep rake | grep ruby - command: bundle exec rake jobs:work RAILS_ENV=production +version: "3.3" +networks: + database: + caching: -memcached: - extends: - file: docker-compose-common.yml - service: memcached - restart: always +volumes: + mysql: + +services: + app: + image: wrestlingdev-prod + ports: + - "80:80" + - "443:443" + networks: + database: + caching: + restart: always + env_file: + - ./prod.env + healthcheck: + test: curl --insecure https://127.0.0.1/ + + db: + image: mysql:5.5 + ports: + - "3306:3306" + volumes: + - mysql:/var/lib/mysql + restart: always + env_file: + - ./prod.env + networks: + database: + + worker: + image: wrestlingdev-prod + networks: + database: + caching: + restart: always + env_file: + - ./prod.env + healthcheck: + test: ps -ef | grep rake | grep ruby + command: bundle exec rake jobs:work RAILS_ENV=production + + + memcached: + image: memcached + mem_limit: 64000000 + restart: always + networks: + caching: \ No newline at end of file diff --git a/deploy/docker-compose-test.yml b/deploy/docker-compose-test.yml index 5429e85..e7ef11b 100644 --- a/deploy/docker-compose-test.yml +++ b/deploy/docker-compose-test.yml @@ -1,59 +1,103 @@ -app: - image: registry:5000/wrestlingdev:dev - extends: - file: docker-compose-common.yml - service: app - environment: - - WRESTLINGDEV_DB_NAME=wrestlingtourney - - WRESTLINGDEV_DB_USR=root - - WRESTLINGDEV_DB_PWD=password - - WRESTLINGDEV_DB_HOST=db - - WRESTLINGDEV_DB_PORT=3306 - - WRESTLINGDEV_DEVISE_SECRET_KEY=2f29d49db6704377ba263f7cb9db085b386bcb301c0cd501126a674686ab1a109754071165b08cd72af03cec4642a4dd04361c994462254dd5d85e9594e8b9aa - - WRESTLINGDEV_SECRET_KEY_BASE=077cdbef5c2ccf22543fb17a67339f234306b7fa2e1e4463d851c444c10a5611829a2290b253da78339427f131571fac9a42c83d960b2d25ecc10a4a0a7ce1a2 - - MEMCACHIER_SERVERS=memcached:11211 - - MEMCACHIER_USERNAME= - - MEMCACHIER_PASSWORD= - links: - - db - - memcached - restart: always +version: "3.3" +networks: + database: + caching: -db: - extends: - file: docker-compose-common.yml - service: db - environment: - - MYSQL_ROOT_PASSWORD=password - restart: always +volumes: + mysql: + +services: + app: + image: wrestlingdev:dev + environment: + - WRESTLINGDEV_DB_NAME=wrestlingtourney + - WRESTLINGDEV_DB_USR=root + - WRESTLINGDEV_DB_PWD=password + - WRESTLINGDEV_DB_HOST=db + - WRESTLINGDEV_DB_PORT=3306 + - WRESTLINGDEV_DEVISE_SECRET_KEY=2f29d49db6704377ba263f7cb9db085b386bcb301c0cd501126a674686ab1a109754071165b08cd72af03cec4642a4dd04361c994462254dd5d85e9594e8b9aa + - WRESTLINGDEV_SECRET_KEY_BASE=077cdbef5c2ccf22543fb17a67339f234306b7fa2e1e4463d851c444c10a5611829a2290b253da78339427f131571fac9a42c83d960b2d25ecc10a4a0a7ce1a2 + - MEMCACHIER_SERVERS=memcached:11211 + - MEMCACHIER_USERNAME= + - MEMCACHIER_PASSWORD= + networks: + database: + caching: + restart: always + ports: + - "80:80" + - "443:443" + deploy: + resources: + limits: + cpus: '0.25' + memory: 512M + reservations: + cpus: '0.25' + memory: 256M + healthcheck: + test: curl --insecure https://127.0.0.1/ -worker: - image: registry:5000/wrestlingdev:dev - extends: - file: docker-compose-common.yml - service: worker - environment: - - WRESTLINGDEV_DB_NAME=wrestlingtourney - - WRESTLINGDEV_DB_USR=root - - WRESTLINGDEV_DB_PWD=password - - WRESTLINGDEV_DB_HOST=db - - WRESTLINGDEV_DB_PORT=3306 - - WRESTLINGDEV_DEVISE_SECRET_KEY=2f29d49db6704377ba263f7cb9db085b386bcb301c0cd501126a674686ab1a109754071165b08cd72af03cec4642a4dd04361c994462254dd5d85e9594e8b9aa - - WRESTLINGDEV_SECRET_KEY_BASE=077cdbef5c2ccf22543fb17a67339f234306b7fa2e1e4463d851c444c10a5611829a2290b253da78339427f131571fac9a42c83d960b2d25ecc10a4a0a7ce1a2 - - MEMCACHIER_SERVERS=memcached:11211 - - MEMCACHIER_USERNAME= - - MEMCACHIER_PASSWORD= - links: - - db - - memcached - restart: always - healthcheck: - test: ps -ef | grep rake | grep ruby - command: bundle exec rake jobs:work RAILS_ENV=production + db: + image: mysql:5.5 + ports: + - "3306:3306" + volumes: + - mysql:/var/lib/mysql + environment: + - MYSQL_ROOT_PASSWORD=password + restart: always + networks: + database: + deploy: + resources: + limits: + cpus: '0.25' + memory: 512M + reservations: + cpus: '0.25' + memory: 256M -memcached: - extends: - file: docker-compose-common.yml - service: memcached - restart: always + worker: + image: wrestlingdev:dev + environment: + - WRESTLINGDEV_DB_NAME=wrestlingtourney + - WRESTLINGDEV_DB_USR=root + - WRESTLINGDEV_DB_PWD=password + - WRESTLINGDEV_DB_HOST=db + - WRESTLINGDEV_DB_PORT=3306 + - WRESTLINGDEV_DEVISE_SECRET_KEY=2f29d49db6704377ba263f7cb9db085b386bcb301c0cd501126a674686ab1a109754071165b08cd72af03cec4642a4dd04361c994462254dd5d85e9594e8b9aa + - WRESTLINGDEV_SECRET_KEY_BASE=077cdbef5c2ccf22543fb17a67339f234306b7fa2e1e4463d851c444c10a5611829a2290b253da78339427f131571fac9a42c83d960b2d25ecc10a4a0a7ce1a2 + - MEMCACHIER_SERVERS=memcached:11211 + - MEMCACHIER_USERNAME= + - MEMCACHIER_PASSWORD= + networks: + database: + caching: + restart: always + healthcheck: + test: ps -ef | grep rake | grep ruby + command: bundle exec rake jobs:work RAILS_ENV=production + deploy: + resources: + limits: + cpus: '0.25' + memory: 512M + reservations: + cpus: '0.25' + memory: 256M + + memcached: + image: memcached + deploy: + resources: + limits: + cpus: '0.10' + memory: 64M + reservations: + cpus: '0.10' + memory: 64M + restart: always + networks: + caching: