version: '3' networks: webproxy: external: true backend-codimd: external: true services: database: # Don't upgrade PostgreSQL by simply changing the version number # You need to migrate the Database to the new PostgreSQL version image: postgres:9.6-alpine container_name: codimd-db #mem_limit: 256mb # version 2 only #memswap_limit: 512mb # version 2 only #read_only: true # not supported in swarm mode please enable along with tmpfs #tmpfs: # - /run/postgresql:size=512K # - /tmp:size=256K environment: - POSTGRES_USER=${POSTGRES_USER} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=${POSTGRES_DB} volumes: - /opt/appdata/codimd/db:/var/lib/postgresql/data networks: - backend-codimd restart: always app: image: quay.io/codimd/server:1.6.0 container_name: codimd-app #mem_limit: 256mb # version 2 only #memswap_limit: 512mb # version 2 only #read_only: true # not supported in swarm mode, enable along with tmpfs #tmpfs: # - /tmp:size=512K # - /codimd/tmp:size=1M # # Make sure you remove this when you use filesystem as upload type # - /codimd/public/uploads:size=10M environment: # DB_URL is formatted like: ://:@:/ # Other examples are: # - mysql://hackmd:hackmdpass@database:3306/hackmd # - sqlite:///data/sqlite.db (NOT RECOMMENDED) # - For details see the official sequelize docs: http://docs.sequelizejs.com/en/v3/ - CMD_DB_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_DB}:5432/hackmd # ports: # Ports that are published to the outside. # The latter port is the port inside the container. It should always stay on 3000 # If you only specify a port it'll published on all interfaces. If you want to use a # local reverse proxy, you may want to listen on 127.0.0.1. # Example: # - "127.0.0.1:3000:3000" # - "3000:3000" networks: - webproxy - backend-codimd restart: always depends_on: - database