diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index c6f54eda1c..dbd56d163f 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,3 +1,10 @@ +## 4.4.22-3 (04-06-2026) +- Remove DISABLE_WEB_UI option, web UI is now always enabled +- Make MinIO internal-only (127.0.0.1) since museum proxies S3 operations +- Fix web UI API origin: use ENTE_ENDPOINT_URL so browsers can reach the API +- Hardcode MinIO credentials internally (no longer user-configurable) +- Remove dead options: MINIO_DATA_LOCATION, MINIO_ROOT_USER, MINIO_ROOT_PASSWORD + ## 4.4.22-2 (04-06-2026) - Minor bugs fixed diff --git a/ente/README.md b/ente/README.md index 6efbd71226..002eadca90 100644 --- a/ente/README.md +++ b/ente/README.md @@ -53,12 +53,8 @@ Webui can be found at . | Option | Type | Default | Description | |--------|------|---------|-------------| -| `ENTE_ENDPOINT_URL` | str | `http://homeassistant.local:8280` | The URL where Ente API will be accessible | -| `MINIO_ROOT_USER` | str | `minioadmin` | MinIO root username | -| `MINIO_ROOT_PASSWORD` | str | `minioadmin` | MinIO root password | -| `MINIO_DATA_LOCATION` | str | `/config/minio-data` | Path where MinIO stores data | +| `ENTE_ENDPOINT_URL` | str | `http://homeassistant.local:8280` | The URL where Ente API will be accessible (used by web UI) | | `DB_PASSWORD` | str | `ente` | Database password for internal PostgreSQL | -| `DISABLE_WEB_UI` | bool | `true` | Disable the web UI (use mobile/desktop apps) | | `USE_EXTERNAL_DB` | bool | `false` | Use external PostgreSQL database | | `TZ` | str | `Europe/Paris` | Timezone setting | @@ -77,11 +73,7 @@ If you want to use an external PostgreSQL database, set `USE_EXTERNAL_DB: true` ```yaml ENTE_ENDPOINT_URL: "http://homeassistant.local:8280" -MINIO_ROOT_USER: "myuser" -MINIO_ROOT_PASSWORD: "mypassword" -MINIO_DATA_LOCATION: "/config/ente-storage" DB_PASSWORD: "securepassword" -DISABLE_WEB_UI: false TZ: "America/New_York" ``` @@ -137,11 +129,17 @@ After starting the addon for the first time: ## Ports -The addon exposes three ports: +The addon exposes the following ports: -- **8300** (3000/tcp): Ente web UI (if enabled) +- **8300** (3000/tcp): Ente web UI +- **8305** (3005/tcp): Ente Share +- **8306** (3006/tcp): Ente Embed +- **8307** (3007/tcp): Ente Paste +- **8308** (3008/tcp): Ente Locker +- **8309** (3009/tcp): Ente Memories - **8280** (8080/tcp): Ente API server (museum) - Main endpoint for apps -- **8320** (3200/tcp): MinIO S3 endpoint (for storage backend) + +MinIO S3 is internal-only (127.0.0.1:3200) and not exposed externally since museum proxies all S3 operations. ## Data Storage diff --git a/ente/config.yaml b/ente/config.yaml index 8150e7683f..42387e62cf 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -78,11 +78,7 @@ name: Ente options: env_vars: [] DB_PASSWORD: ente - DISABLE_WEB_UI: true ENTE_ENDPOINT_URL: http://homeassistant.local:8280 - MINIO_DATA_LOCATION: /config/minio-data - MINIO_ROOT_PASSWORD: minioadmin - MINIO_ROOT_USER: minioadmin TZ: Europe/Paris USE_EXTERNAL_DB: false ports: @@ -92,7 +88,6 @@ ports: 3007/tcp: 8307 3008/tcp: 8308 3009/tcp: 8309 - 3200/tcp: 8320 8080/tcp: 8280 ports_description: 3000/tcp: Ente web UI @@ -101,7 +96,6 @@ ports_description: 3007/tcp: Ente Paste 3008/tcp: Ente Locker 3009/tcp: Ente Memories - 3200/tcp: MinIO S3 endpoint 8080/tcp: Ente API (museum) privileged: - SYS_ADMIN @@ -115,11 +109,7 @@ schema: DB_PASSWORD: str DB_PORT: int? DB_USERNAME: str? - DISABLE_WEB_UI: bool? ENTE_ENDPOINT_URL: str - MINIO_DATA_LOCATION: str - MINIO_ROOT_PASSWORD: str - MINIO_ROOT_USER: str TZ: str? USE_EXTERNAL_DB: bool? cifsdomain: str? @@ -130,6 +120,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.22-2" +version: "4.4.22-3" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/rootfs/etc/cont-init.d/99-run.sh b/ente/rootfs/etc/cont-init.d/99-run.sh index 8226bfd542..a2783e5d5e 100755 --- a/ente/rootfs/etc/cont-init.d/99-run.sh +++ b/ente/rootfs/etc/cont-init.d/99-run.sh @@ -2,14 +2,15 @@ # shellcheck shell=bash set -euo pipefail -MINIO_USER="$(bashio::config 'MINIO_ROOT_USER')" -MINIO_PASS="$(bashio::config 'MINIO_ROOT_PASSWORD')" +# Internal MinIO credentials (not user-configurable; MinIO is 127.0.0.1 only) +MINIO_USER="minioadmin" +MINIO_PASS="minioadmin" S3_BUCKET="b2-eu-cen" export ENTE_S3_ARE_LOCAL_BUCKETS=true export ENTE_S3_B2_EU_CEN_KEY="$MINIO_USER" export ENTE_S3_B2_EU_CEN_SECRET="$MINIO_PASS" -export ENTE_S3_B2_EU_CEN_ENDPOINT="http://192.168.178.23:$(bashio::addon.port "3200")" +export ENTE_S3_B2_EU_CEN_ENDPOINT="http://127.0.0.1:3200" export ENTE_S3_B2_EU_CEN_REGION=eu-central-2 export ENTE_S3_B2_EU_CEN_BUCKET="$S3_BUCKET" @@ -42,11 +43,6 @@ else bashio::log.info "Using internal Postgres." fi -DISABLE_WEB_UI=false -if bashio::config.true 'DISABLE_WEB_UI'; then - DISABLE_WEB_UI=true -fi - # Active DB connection target (may be overridden below) if $USE_EXTERNAL_DB; then DB_HOST="$DB_HOST_EXT" @@ -186,9 +182,9 @@ bootstrap_internal_db() { # MinIO ############################################ start_minio() { - bashio::log.info "Starting MinIO (:3200)..." + bashio::log.info "Starting MinIO (127.0.0.1:3200)..." mkdir -p /config/minio-data - "$MINIO_BIN" server /config/minio-data --address ":3200" & + "$MINIO_BIN" server /config/minio-data --address "127.0.0.1:3200" & MINIO_PID=$! } @@ -206,13 +202,8 @@ wait_minio_ready_and_bucket() { # Web (static nginx bundle) ############################################ start_web() { - if $DISABLE_WEB_UI; then - bashio::log.info "Web UI disabled." - return 0 - fi - - ENTE_API_ORIGIN=http://localhost:8080 - ENTE_ALBUMS_ORIGIN=http://localhost:3002 + ENTE_API_ORIGIN="$(bashio::config 'ENTE_ENDPOINT_URL')" + ENTE_ALBUMS_ORIGIN="http://localhost:3002" export ENTE_API_ORIGIN ENTE_ALBUMS_ORIGIN # Running ente-web-prepare @@ -226,7 +217,7 @@ start_web() { mv /etc/nginx/http.d/web.bak /etc/nginx/http.d/web.conf bashio::log.info "Starting Ente web (nginx, ports 3000‑3009)..." - exec nginx -g 'daemon off;' & + nginx -g 'daemon off;' & WEB_PID=$! }