From cbc3f0fe1fb26768ec49e5ba2197af8ef96366d3 Mon Sep 17 00:00:00 2001 From: Lucas BEE Date: Tue, 4 Apr 2017 10:55:17 +0000 Subject: [PATCH] Small changes for a better docker-compose --- .gitignore | 2 + Makefile | 2 +- docker/Dockerfile-production | 1 + docker/app.env.example | 4 ++ docker/db.env.example | 4 ++ docker/docker-compose-prod.yml | 71 +++++++++++++++++----------------- 6 files changed, 48 insertions(+), 36 deletions(-) create mode 100644 docker/app.env.example create mode 100644 docker/db.env.example diff --git a/.gitignore b/.gitignore index b2decc3..e625da5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ node_modules build config.yml *.log +docker/app.env +docker/db.env diff --git a/Makefile b/Makefile index 4f1f55f..88e0986 100644 --- a/Makefile +++ b/Makefile @@ -31,7 +31,7 @@ build_docker_image: cp -R sql/migration canapeapp/migrations cp $$GOPATH/bin/migrate canapeapp/migrate yarn build - go build -v -o canapeapp/app src/main.go + go build -v -o canapeapp/app src/*.go docker build --tag canapeapp:latest --file docker/Dockerfile-production . rm -rf canapeapp diff --git a/docker/Dockerfile-production b/docker/Dockerfile-production index ff9c91b..fbd2bc3 100644 --- a/docker/Dockerfile-production +++ b/docker/Dockerfile-production @@ -1,4 +1,5 @@ FROM debian:8.7 +RUN apt update && apt upgrade -y && apt install -y ca-certificates && rm -rf /var/lib/apt/lists/* COPY canapeapp /opt/canapeapp WORKDIR /opt/canapeapp diff --git a/docker/app.env.example b/docker/app.env.example new file mode 100644 index 0000000..eaa051d --- /dev/null +++ b/docker/app.env.example @@ -0,0 +1,4 @@ +CONFIG_FILE=/etc/canapeapp.yml +DB_USER=w000t +DB_PASS=bob +DB_ENV=production diff --git a/docker/db.env.example b/docker/db.env.example new file mode 100644 index 0000000..cae8509 --- /dev/null +++ b/docker/db.env.example @@ -0,0 +1,4 @@ +POSTGRES_PASSWORD=bob +POSTGRES_USER=w000t +POSTGRES_DB=production +PGDATA=/var/lib/postgresql/data/pgdata diff --git a/docker/docker-compose-prod.yml b/docker/docker-compose-prod.yml index ad9754c..b705ebe 100644 --- a/docker/docker-compose-prod.yml +++ b/docker/docker-compose-prod.yml @@ -1,40 +1,41 @@ version: "3" networks: - canapeapp: - external: false + canapeapp: + external: false services: - database: - image: postgres:9.5 - container_name: canapeapp_database - restart: always - environment: - - POSTGRES_PASSWORD=test - - POSTGRES_USER=test - - POSTGRES_DB=production - networks: - - canapeapp - # volumes: - # - .:/docker-entrypoint-initdb.d/ - ports: - - 5432 - app: - image: canapeapp:latest - container_name: canapeapp - restart: always - depends_on: - - database - environment: - - CONFIG_FILE=/etc/canapeapp.yml - - DB_USER=test - - DB_PASS=test - - DB_ENV=production - networks: - - canapeapp - ports: - - 127.0.0.1:6666:3000 - volumes: - - ../config-prod.yml:/etc/canapeapp.yml:ro - links: - - database + database: + image: postgres:9.5 + container_name: canapeapp_database + restart: always + networks: + - canapeapp + volumes: + - db-volume:/var/lib/postgresql/data/pgdata + ports: + - 127.0.0.1:5432:5432 + env_file: + - ./db.env + + app: + image: canapeapp:latest + container_name: canapeapp + restart: always + depends_on: + - database + networks: + - canapeapp + ports: + - 127.0.0.1:3000:3000 + volumes: + - ../config.yml:/etc/canapeapp.yml:ro + - img-volume:/home/img + links: + - database + env_file: + - ./app.env + +volumes: + img-volume: + db-volume: