Add DockerMan labels to Unraid compose
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled

This commit is contained in:
Codex
2026-06-17 05:22:31 +02:00
parent 6010d876bf
commit 14a9d7db02
5 changed files with 19 additions and 0 deletions
+1
View File
@@ -14,6 +14,7 @@
- Added `deploy/unraid/all-in-one-start.sh` to start embedded PostGIS, apply Alembic migrations, start the backend and serve nginx. - Added `deploy/unraid/all-in-one-start.sh` to start embedded PostGIS, apply Alembic migrations, start the backend and serve nginx.
- Added `deploy/unraid/nginx-all-in-one.conf` with localhost backend proxying inside the same container. - Added `deploy/unraid/nginx-all-in-one.conf` with localhost backend proxying inside the same container.
- Added a PNG DockerMan icon and made the Unraid template name match the running `geointel` container. - Added a PNG DockerMan icon and made the Unraid template name match the running `geointel` container.
- Added DockerMan labels to the all-in-one Compose service so Unraid can associate the running container with web UI and icon metadata.
- Updated Tower deploy scripts to install `/boot/config/plugins/dockerMan/templates-user/my-geointel.xml` and `/boot/config/plugins/dockerMan/images/geointel-icon.png`. - Updated Tower deploy scripts to install `/boot/config/plugins/dockerMan/templates-user/my-geointel.xml` and `/boot/config/plugins/dockerMan/images/geointel-icon.png`.
- Updated Tower deploy scripts to stop the old multi-container stack without removing volumes and start the all-in-one stack. - Updated Tower deploy scripts to stop the old multi-container stack without removing volumes and start the all-in-one stack.
- Updated the Unraid template so the Docker can be edited from Unraid with one web port, storage path, PostGIS data path and app icon. - Updated the Unraid template so the Docker can be edited from Unraid with one web port, storage path, PostGIS data path and app icon.
@@ -44,6 +44,9 @@ def test_unraid_env_template_matches_single_container_compose_variables() -> Non
assert "${GEOINTEL_POSTGIS_DATA_PATH:-geointel_postgis}:/var/lib/postgresql/data" in compose assert "${GEOINTEL_POSTGIS_DATA_PATH:-geointel_postgis}:/var/lib/postgresql/data" in compose
assert "geointel_postgis:" in compose assert "geointel_postgis:" in compose
assert "geointel:" in compose assert "geointel:" in compose
assert "net.unraid.docker.managed: dockerman" in compose
assert 'net.unraid.docker.webui: "http://[IP]:[PORT:80]/"' in compose
assert 'net.unraid.docker.icon: "/boot/config/plugins/dockerMan/images/geointel-icon.png"' in compose
assert "db:" not in compose assert "db:" not in compose
assert "backend:" not in compose assert "backend:" not in compose
assert "frontend:" not in compose assert "frontend:" not in compose
+10
View File
@@ -50,6 +50,16 @@ and copy the PNG icon to:
The template name is `geointel` so it matches the running all-in-one container name. If the Unraid Docker page was already open, refresh it after deploy so DockerMan reloads the template/icon metadata. The template name is `geointel` so it matches the running all-in-one container name. If the Unraid Docker page was already open, refresh it after deploy so DockerMan reloads the template/icon metadata.
`docker-compose.unraid.yml` also applies DockerMan labels to the running container:
```text
net.unraid.docker.managed=dockerman
net.unraid.docker.webui=http://[IP]:[PORT:80]/
net.unraid.docker.icon=/boot/config/plugins/dockerMan/images/geointel-icon.png
```
These labels are required because a plain Compose container can run correctly while still missing the normal Unraid edit/icon controls.
## First setup with Compose Manager ## First setup with Compose Manager
From the Unraid shell: From the Unraid shell:
+4
View File
@@ -5,6 +5,10 @@ services:
dockerfile: deploy/unraid/Dockerfile.all-in-one dockerfile: deploy/unraid/Dockerfile.all-in-one
image: geointel-all-in-one:latest image: geointel-all-in-one:latest
container_name: geointel container_name: geointel
labels:
net.unraid.docker.managed: dockerman
net.unraid.docker.webui: "http://[IP]:[PORT:80]/"
net.unraid.docker.icon: "/boot/config/plugins/dockerMan/images/geointel-icon.png"
environment: environment:
GEOINTEL_POSTGRES_DB: ${GEOINTEL_POSTGRES_DB:-geointel} GEOINTEL_POSTGRES_DB: ${GEOINTEL_POSTGRES_DB:-geointel}
GEOINTEL_POSTGRES_USER: ${GEOINTEL_POSTGRES_USER:-geointel} GEOINTEL_POSTGRES_USER: ${GEOINTEL_POSTGRES_USER:-geointel}
+1
View File
@@ -1511,6 +1511,7 @@ Changed:
- Added a PNG icon for Unraid/DockerMan because DockerMan may not reliably render app-served SVG icons. - Added a PNG icon for Unraid/DockerMan because DockerMan may not reliably render app-served SVG icons.
- Changed the Unraid template `<Name>` to `geointel` so it matches the running all-in-one container name. - Changed the Unraid template `<Name>` to `geointel` so it matches the running all-in-one container name.
- Changed the template icon URL to the absolute PNG URL `http://192.168.10.150:1202/geointel-icon.png`. - Changed the template icon URL to the absolute PNG URL `http://192.168.10.150:1202/geointel-icon.png`.
- Added DockerMan labels to `docker-compose.unraid.yml` so the running Compose container exposes Unraid managed/webui/icon metadata.
- Updated Tower deploy scripts to copy the editable template to `/boot/config/plugins/dockerMan/templates-user/my-geointel.xml`. - Updated Tower deploy scripts to copy the editable template to `/boot/config/plugins/dockerMan/templates-user/my-geointel.xml`.
- Updated Tower deploy scripts to copy the PNG icon to `/boot/config/plugins/dockerMan/images/geointel-icon.png`. - Updated Tower deploy scripts to copy the PNG icon to `/boot/config/plugins/dockerMan/images/geointel-icon.png`.