/webtrees-docker

Up-to-date Docker image for webtrees served over HTTP

Primary LanguagePythonMIT LicenseMIT

Docker Image for webtrees

This is an up-to-date Docker image for webtrees served over HTTP, designed to be put behind a reverse proxy such as Cloudflare.

Fork for Raspberry Pi

this repo was forked from nathanvaughn, to make it run on raspberry pi.

The repo has not really changed much, just the build process is different (build process)

Usage

Quickstart

An example docker-compose.yml file is provided for reference.

You can launch the example with docker-compose up -d.

Once you start the container, you can visit http://localhost:1000/setup.php and begin the setup wizard.

Network

The image exposes port 80.

Example docker-compose:

  ports:
    - 80:80

Volumes

The image mounts:

  • /var/www/webtrees/data/
  • /var/www/webtrees/media/

If you want to add custom themes, you can also mount the /var/www/webtrees/themes/ directory.

Example docker-compose:

  volumes:
    - app_data:/var/www/webtrees/data/
    - app_media:/var/www/webtrees/media/
    - app_themes:/var/www/webtrees/themes/

...

volumes:
  app_data:
    driver: local
  app_media:
    driver: local
  app_themes:
    driver: local

MySQL

webtrees requires a MySQL (or compatible equivalent) database. You will need a separate container for this.

Tags

🚨⚠ WARNING ⚠🚨 If you use the beta version of webtrees, you will NOT be able to use the 1.X.X stable version again. The database schema between the stable and beta versions are very different, and this is a one-way operation. Make a full backup before choosing to try the beta version of webtrees so that you can roll back if needed.

Latest

Currently, the tag latest is available for the latest stable version of webtrees.

Example:

image: flowolf/webtrees:latest

Issues

New releases of the Dockerfile are automatically generated from upstream webtrees versions. This means a human does not vette every release. While I try to stay on top of things, sometimes breaking issues do occur. If you have any, please feel free to fill out an issue.

Reverse Proxy Issues

webtrees does not like running behind a reverse proxy, and depending on your setup, you may need to adjust some database values manually.

For example, if you are accessing webtrees via a reverse proxy serving content over HTTPS, but using this HTTP container, you would need to make the following changes in your database:

mysql -u webtrees -p

use webtrees;
update wt_site_setting set setting_value='https://example.com/login.php' where setting_name='LOGIN_URL';
update wt_site_setting set setting_value='http://example.com/' where setting_name='SERVER_URL';
quit;

Inspiration

The Dockerfile is heavily based off solidnerd/docker-bookstack.