Small changes for a better docker-compose

This commit is contained in:
Lucas BEE 2017-04-04 10:55:17 +00:00
parent d57f119c7a
commit cbc3f0fe1f
6 changed files with 48 additions and 36 deletions

2
.gitignore vendored
View File

@ -2,3 +2,5 @@ node_modules
build build
config.yml config.yml
*.log *.log
docker/app.env
docker/db.env

View File

@ -31,7 +31,7 @@ build_docker_image:
cp -R sql/migration canapeapp/migrations cp -R sql/migration canapeapp/migrations
cp $$GOPATH/bin/migrate canapeapp/migrate cp $$GOPATH/bin/migrate canapeapp/migrate
yarn build 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 . docker build --tag canapeapp:latest --file docker/Dockerfile-production .
rm -rf canapeapp rm -rf canapeapp

View File

@ -1,4 +1,5 @@
FROM debian:8.7 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 COPY canapeapp /opt/canapeapp
WORKDIR /opt/canapeapp WORKDIR /opt/canapeapp

4
docker/app.env.example Normal file
View File

@ -0,0 +1,4 @@
CONFIG_FILE=/etc/canapeapp.yml
DB_USER=w000t
DB_PASS=bob
DB_ENV=production

4
docker/db.env.example Normal file
View File

@ -0,0 +1,4 @@
POSTGRES_PASSWORD=bob
POSTGRES_USER=w000t
POSTGRES_DB=production
PGDATA=/var/lib/postgresql/data/pgdata

View File

@ -1,40 +1,41 @@
version: "3" version: "3"
networks: networks:
canapeapp: canapeapp:
external: false external: false
services: services:
database: database:
image: postgres:9.5 image: postgres:9.5
container_name: canapeapp_database container_name: canapeapp_database
restart: always restart: always
environment: networks:
- POSTGRES_PASSWORD=test - canapeapp
- POSTGRES_USER=test volumes:
- POSTGRES_DB=production - db-volume:/var/lib/postgresql/data/pgdata
networks: ports:
- canapeapp - 127.0.0.1:5432:5432
# volumes: env_file:
# - .:/docker-entrypoint-initdb.d/ - ./db.env
ports:
- 5432 app:
app: image: canapeapp:latest
image: canapeapp:latest container_name: canapeapp
container_name: canapeapp restart: always
restart: always depends_on:
depends_on: - database
- database networks:
environment: - canapeapp
- CONFIG_FILE=/etc/canapeapp.yml ports:
- DB_USER=test - 127.0.0.1:3000:3000
- DB_PASS=test volumes:
- DB_ENV=production - ../config.yml:/etc/canapeapp.yml:ro
networks: - img-volume:/home/img
- canapeapp links:
ports: - database
- 127.0.0.1:6666:3000 env_file:
volumes: - ./app.env
- ../config-prod.yml:/etc/canapeapp.yml:ro
links: volumes:
- database img-volume:
db-volume: