deploy: add docker login

This commit also includes the required format changes to ensure that we
can push from docker compose. This means that we needed to update the
docker-compose.yml files to version 2.0
This commit is contained in:
Tom Gallacher 2016-10-20 16:58:09 +01:00
parent 57a1b28b27
commit 648caa4dd4
3 changed files with 69 additions and 63 deletions

View File

@ -16,6 +16,7 @@ get_triton_details
write_env_file write_env_file
docker-compose build docker-compose build
docker login -e="." -u="$_DOCKER_LOGIN_USERNAME" -p="$_DOCKER_LOGIN_PASSWORD" $_DOCKER_REGISTRY
docker-compose push docker-compose push
export DOCKER_HOST=$_DOCKER_HOST export DOCKER_HOST=$_DOCKER_HOST

View File

@ -1,46 +1,49 @@
version: '2'
services:
############################################################################# #############################################################################
# CONSUL # CONSUL
############################################################################# #############################################################################
consul: consul:
image: progrium/consul:latest image: progrium/consul:latest
labels: labels:
- triton.cns.services=consul - triton.cns.services=consul
restart: always restart: always
mem_limit: 128m mem_limit: 128m
expose: expose:
- 53 - 53
- 8300 - 8300
- 8301 - 8301
- 8302 - 8302
- 8400 - 8400
- 8500 - 8500
env_file: .env env_file: .env
ports: ports:
- 8500:8500 - 8500:8500
command: -server -bootstrap -ui-dir /ui command: -server -bootstrap -ui-dir /ui
############################################################################# #############################################################################
# CloudAPI GraphQL # CloudAPI GraphQL
############################################################################# #############################################################################
cloudapi: cloudapi:
build: ./cloudapi-graphql image: quay.io/yldio/joyent-dashboard-cloudapi-graphql
mem_limit: 128m build: ./cloudapi-graphql
labels: mem_limit: 128m
- triton.cns.services=cloudapi labels:
env_file: .env - triton.cns.services=cloudapi
environment: env_file: .env
- PORT=3000 environment:
ports: - PORT=3000
- 3000:3000 ports:
- 3000:3000
############################################################################# #############################################################################
# Frontend # Frontend
############################################################################# #############################################################################
backend: backend:
build: ./backend build: ./backend
mem_limit: 128m mem_limit: 128m
labels: labels:
- triton.cns.services=backend - triton.cns.services=backend
env_file: .env env_file: .env
environment: environment:
- PORT=8000 - PORT=8000
ports: ports:
- 8000:8000 - 8000:8000

View File

@ -1,26 +1,28 @@
consul: version: '2'
extends: services:
file: docker-compose.yml consul:
service: consul extends:
ports: file: docker-compose.yml
- 8500:8500 service: consul
cloudapi: ports:
extends: - 8500:8500
file: docker-compose.yml cloudapi:
service: cloudapi extends:
links: file: docker-compose.yml
- consul:consul service: cloudapi
environment: depends_on:
- PORT=3000 - consul
- ROOT_URL=http://localhost:3000 environment:
- CONSUL=consul - PORT=3000
backend: - ROOT_URL=http://localhost:3000
extends: - CONSUL=consul
file: docker-compose.yml backend:
service: backend extends:
links: file: docker-compose.yml
- consul:consul service: backend
environment: depends_on:
- PORT=8000 - consul
- ROOT_URL=http://localhost:8000 environment:
- CONSUL=consul - PORT=8000
- ROOT_URL=http://localhost:8000
- CONSUL=consul