Skip to content

sumanchapai/bean-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bean-docker:

This is a project that makes it easier to run Beancount via docker, plus an integration with git/github so that you have easy backup/version-control of your accounting data/software.

Beancount is a plain-text, accounting software. One of my most favorite features of beancount is that it is (or say, can be) a tamper-proof accounting software when you use it with git and github. Just commit your changes and push them to github. However git and github, and even beancount are only (easily) accessible to developers. This project makes it easier for non-developers to also reap the benefits of beancount by providing a docker image for easy installation and bundling it with a basic git server where you can run basic git commands as well as push your changes to github for easy backup from a website, i.e. without you having to go to the command line or some code editing software.

This docker compose bundles two services and uses an nginx reverse proxy to serve them both on the same host:port under different paths:

  1. Fava (Web based GUI for beancount)
  2. GW(https://github.com/sumanchapai/gw) (Web interface that provides basic Git and functionalities)

Fava running on the root route: Fava running on the root route

Git Web (GW) running on the /git route: Git Web (GW) running on /git route

If you want to create a project, here are the steps:

  1. Have Docker installed in your system.
  2. Create a file named compose.yaml (preferably in an empty folder) and copy the contents from compose.yaml.
  3. Create a .env file (alongside compose.yaml) with contents from .env.example and update the environment variables as necessary. You can find instructions on how to set github repo token here which is needed for you to be able to push to github.
  4. Create a file called nginx.conf and copy the contents from nginx.conf into it.
  5. Run docker compose up and you should have your beancount ready to use with git support at localhost:8063 or whatever port you've defined in the environment file.

Environment Variables

Check the .env.example file which is supposed to provide enough documentation for the environment variables that you'll need to set.

By default, your server will listen on all interfaces meaning that others connected to the same network (Wifi) as you will be able to access your server by your IP:PORT web address. If you want to run only in localhost, change your PORT by prepending local IP as follows:

PORT=127.0.0.1:8063

About

docker compose service that provides complete beancount/fava/git/github setup from website

Resources

Stars

Watchers

Forks

Packages

No packages published