version: '3'
services:
  pantsu:
    build:
      context: ..
      dockerfile: deploy/Dockerfile
    command: ./deploy/init.sh
    depends_on: 
      - pantsu_db
    env_file:
      - postgres.env
    environment:
      - PANTSU_INTERNAL_PORT=${PANTSU_INTERNAL_PORT}
    links:
      - pantsu_db
    ports:
      # 0.0.0.0 makes it accessible to the network
      # You may want to remove it to make pantsu available only
      # to localhost
      - 0.0.0.0:${PANTSU_EXTERNAL_PORT}:${PANTSU_INTERNAL_PORT}
    volumes:
      - "${GOPATH}:/go/"
      - "./..:/nyaa"

  pantsu_db:
    env_file:
      - postgres.env
    environment:
      - PANTSU_POSTGRES_DBFILE=${PANTSU_POSTGRES_DBFILE}
    image: postgres:9.6.2
    volumes:
      # restore.sh will be sourced after initial initdb
      - "./restore.sh:/docker-entrypoint-initdb.d/restore.sh"
      - "./../${PANTSU_POSTGRES_DBFILE}:/${PANTSU_POSTGRES_DBFILE}"