picinch

Logo

PicInch Gallery provides a simple way for a group of members, such as a photography club, to display their photographs.

Home

Installation and Setup

Docker Repository

View the Project on GitHub inchworks/picinch

Step 1: docker-compose.yml

Copy this example, and save it in /srv/picinch on your server.

version: '3'

services:

  db:
    image: mariadb:10.4
    container_name: gallery_db
    expose:
      - 3306
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: "<root-password>"
      MYSQL_DATABASE: picinch
      MYSQL_USER: server
      MYSQL_PASSWORD: "<server-password>"
    volumes:
      - ./mysql:/var/lib/mysql
    logging:
      driver: "json-file"
      options:
        max-size: "2m"
        max-file: "5"

  gallery:
    image: inchworks/picinch:0.9
    ports:
      - 443:4000
      - 80:8000
    restart: always
    environment:
      db-password: "<server-password>"
      domains: "example.com, www.example.com"
      certificate-email: "you@example.com"
      session-secret: Hk4TEiDgq8JaCNR?WaPeWBf4QQYNUjMR
      admin-name: "admin@example.com"
      admin-password: "<your-password>"
    volumes:
      - ./certs:/certs 
      - ./photos:/photos
      - ./site:/site
      - ./misc:/misc 
    logging:
      driver: "json-file"
      options:
        max-size: "5m"
        max-file: "5"
    depends_on:
      - db

Edit the example to change the following items. (Take care to keep indentation unchanged when editing. Do not use tabs.)

If you intend to change other PicInch configuration settings, you may prefer to omit the environment settings here, and set them in a site/configuration.yml file instead.

Run docker-compose up to fetch PicInch and MariahDB from Docker Hub and start them.