How to Install Gramps Web on a Synology NAS

Vivian Lobo
3 min readJan 20, 2023

--

Today we are going to look at how you can install Gramps Web on a Synology NAS using Portainer or docker compose.

Gramps

Please follow the portainer link above to learn how to install it from Wundertech

Gramps Web is an open source web application that enables collaboration in genealogy research. It is compatible with Gramps, the top open source desktop application for genealogy. Gramps Web prioritises privacy and data control for users.

Instructions

  1. Inside the Docker shared folder, create a sub-folder named ‘grampsweb’, then create two sub-folders inside of that folder: gramps_media, grampsdb. Also create a file called “docker-compose.yml” as shown in the screenshot below.

2. Ensure that Portainer is installed on your Synology and launch Portainer.

3. Select Stacks and then Add Stack.

4. Give the stack a name (ex: grampsweb) and then paste the stack below. Be sure to update the items in bold to reflect the local path to your media folders and also the port number. If the folder structure was followed in steps 1, these are the default values.

version: "3.7"

services:
grampsweb:
container_name: grampsweb
image: ghcr.io/gramps-project/grampsweb:latest
restart: unless-stopped
ports:
- "5054:5000" # host:docker
environment:
TREE: "Gramps Web" # will create a new tree if not exists
volumes:
- gramps_users:/app/users # persist user database
- gramps_index:/app/indexdir # persist search index
- gramps_thumb_cache:/app/thumbnail_cache # persist thumbnails
- gramps_secret:/app/secret # persist flask secret
- /volume1/docker/grampsweb/grampsdb:/root/.gramps/grampsdb # persist Gramps database
- /volume1/docker/grampsweb/gramps_media:/app/media # persist media files

volumes:
gramps_users:
gramps_index:
gramps_thumb_cache:
gramps_secret:
gramps_db:
gramps_media:

Optionally: You can copy the above yaml code into the docker-compose.yml file created in step 1.

5. Select Deploy the stack when you’re finished, on Portainer. OR you should run

docker-compose up -d

6. Once the deployment is complete, click on Containers on the left to see, the Gramps Web running.

7. The container will be created. When it’s finished, you can access it by navigating to the IP address of your Synology NAS and port chosen. In my example its 5054, to start the first run.

http://[SYNOLOGY_NAS_IP]:5054/

When logging in to Gramps Web for the first time, the app will display a first-run wizard that will allow you to

  • Create and account for the owner (admin) user.
  • Set some necessary configuration options
  • Import a family tree in Gramps XML (.gramps) format

On the users first login , a form will be displayed requiring the user to select a language for the frontend and a home person., select a language for the frontend and a home person.

Note: The wonderful people maintaining the web-api have clear documentations. Deployment — Gramps Web.

--

--

Vivian Lobo
Vivian Lobo

Written by Vivian Lobo

Software Engineer, Solutions Architect, and some tech stuff. Always learning. https://vivianlobo.dev/

Responses (4)