Public | Automated Build

Last pushed: a year ago
Short Description
FrontAccounting on Debian 8 (Jessie) with support for HTTP, HTTPS, and HSTS.
Full Description

FrontAccounting

FrontAccounting (FA) on Debian 8 (Jessie) with support for HTTP, HTTPS, and HSTS.

For more infomation, see my article: Why FrontAccounting.

Improvements

Wow, over 5.2K pulls on docker. Thank you! I put together a great new release. Enjoy.

  • upgraded FA to 2.3.25 (default)
  • upgraded OS to Debian 8.5
  • added option to use regular HTTPS
  • added --tag option to select FA release
  • added --branch option to select desired FA branch
  • added --overwrite option to overwrite mounted version
  • improved help and this readme

Quick Start

(1) Spin-up mysql container and create database for FA:

$ docker pull mysql
$ docker run -d -P --name fa_db -e MYSQL_ROOT_PASSWORD=quickDIRTY mysql
$ docker exec -it fa_db mysqladmin -u root -p create fa23
  (enter quickDIRTY for password)

(2) Spin-up FA container:

$ docker pull genebarker/frontaccounting
$ docker run -d -p 80:80 --link fa_db:fa_db genebarker/frontaccounting --http

(3) Open browser, enter your host's URL, and on Step 2: Database Server Settings:

  • Server Host: fa_db
  • Database User: root
  • Database Password: quickDIRTY
  • Database Name: fa23

(4) Enjoy!

How to Use

For usage info, just run the image without a command:

$ docker run --rm genebarker/frontaccounting

Which produces the following:

frontaccounting - FrontAccounting on Debian 8 Docker Container

usage: genebarker/frontaccounting [options]

Options:
  -p, --http         Run FA using plain HTTP (port 80)
  -s, --https FQDN   Run FA using HTTPS (port 443)
  -S, --hsts FQDN    Run FA using HSTS (ports 80 and 443)
  -t, --tag TAG      Version of FA webapp to use
                     (defaults to 2.3.25)
  -b, --branch NAME  Use latest commit in given branch of
                     FA webapp repository
  -O, --overwrite    Overwrite existing FA webapp content with
                     the repository's version (careful!)
  -h, --help         Display this message

To use FA webapp content on the host, mount it, i.e.:
  $ docker run -d -p 80:80 \
      -v /home/me/frontacc:/var/www/html \
      genebarker/frontaccounting --http

  (if host dir empty, the container will initialize it)

To run FA with HTTPS creating new self-signed keys:
  $ docker run -d -p 443:443 \
      genebarker/frontaccounting --https mybox.example.com

To run FA with HTTPS using your own keys, mount them, i.e.:
  $ docker run -d -p 443:443 \
      -v /etc/ssl:/etc/ssl \
      genebarker/frontaccounting --https mybox.example.com

  (the cert's CN must match the FQDN)

To run FA with HSTS, map both web ports, i.e.:
  $ docker run -d -p 80:80 -p 443:443 \
      genebarker/frontaccounting --hsts mybox.example.com

To link FA with a MySQL container named 'fa_db', i.e.:
  $ docker run -d -p 80:80 \
      --link fa_db:fa_db \
      genebarker/frontaccounting --http

  (then use 'fa_db' for the MySQL hostname)

To bypass script, just enter desired command, i.e.:
  $ docker run -it genebarker/frontaccounting bash

FA webapp repository:
  https://github.com/genebarker/FA (see its Wiki)

Key paths in the container:
  /var/www/html  - FA webapp content
  /etc/ssl       - SSL keys and certificates
  /etc/ssl/private/ssl-cert-snakeoil.key  - Private SSL key
  /etc/ssl/certs/ssl-cert-snakeoil.pem    - Public SSL cert

FA requires a MySQL DB for data storage, we recommend using:
  https://hub.docker.com/_/mysql/

Notes

  • FA requires a MySQL database for data storage. This FA container does not include such a database - this is best served by using your own or even better, using the official MySQL container image (mysql).
  • The --tag and --branch options allow you to use this docker image for the different versions of FA. Check the source repository's Wiki to see the tags and branches currently available.
  • This image uses a forked copy genebarker/FA of the official FA repository. I use this fork to tag the official releases and hold copies of my changes in different branches. For more, see the repository's Wiki.
Docker Pull Command
Owner
genebarker
Source Repository

Comments (0)