Add Docker Compose support for Topola Viewer

This commit is contained in:
Przemek Więch
2026-09-15 17:11:56 +02:00
parent 5cf9394da4
commit 6311c3e8ad
4 changed files with 61 additions and 2 deletions

View File

@@ -26,6 +26,10 @@ in the project:
### Build & Environment ### Build & Environment
- **[.env](.env)**: Contains environment variables for the project. - **[.env](.env)**: Contains environment variables for the project.
- **[docker-compose.yml](docker-compose.yml)**: Runs the published GHCR image
using Docker Compose.
- **[docker-compose.build.yml](docker-compose.build.yml)**: Builds and runs the
application from local source using Docker Compose.
- **[vite.config.mts](vite.config.mts)**: Configuration file for the Vite build - **[vite.config.mts](vite.config.mts)**: Configuration file for the Vite build
tool. tool.

View File

@@ -217,9 +217,45 @@ build a Topola Genealogy Viewer package bundled together with a GEDCOM file.
## Docker Container Deployment ## Docker Container Deployment
Topola Viewer can be run locally or deployed to standard cloud environments Topola Viewer can be run locally or deployed to standard cloud environments
using Docker. using Docker and Docker Compose.
### Running Topola Viewer ### Running with Docker Compose
To pull and run the official published image
(`ghcr.io/pewu/topola-viewer:latest`) using Docker Compose:
```bash
docker compose up
```
To build from local source and start:
```bash
docker compose -f docker-compose.build.yml up
```
To force a rebuild from source and start:
```bash
docker compose -f docker-compose.build.yml up --build
```
#### Custom Port and Static URL
You can customize the host port (`PORT`, default: `8080`) and pre-load a static
tree URL (`STATIC_URL`) using environment variables or a `.env` file:
```bash
PORT=3000 STATIC_URL=https://example.org/sample.ged docker compose up
```
Or when building from source:
```bash
PORT=3000 STATIC_URL=https://example.org/sample.ged docker compose -f docker-compose.build.yml up
```
### Running Topola Viewer with Docker
To pull and run Topola Viewer: To pull and run Topola Viewer:

11
docker-compose.build.yml Normal file
View File

@@ -0,0 +1,11 @@
services:
topola-viewer:
build:
context: .
dockerfile: docker/Dockerfile
image: topola-viewer
container_name: topola-viewer
ports:
- '${PORT:-8080}:8080'
environment:
- STATIC_URL=${STATIC_URL:-}

8
docker-compose.yml Normal file
View File

@@ -0,0 +1,8 @@
services:
topola-viewer:
image: ghcr.io/pewu/topola-viewer:latest
container_name: topola-viewer
ports:
- '${PORT:-8080}:8080'
environment:
- STATIC_URL=${STATIC_URL:-}