Browse Source

update config

imwald
Silberengel 1 week ago
parent
commit
fb0295e59d
  1. 3
      Dockerfile
  2. 3
      PROXY_SETUP.md
  3. 2
      docker-compose.prod.yml
  4. 4
      scripts/README-deploy.md
  5. 5
      scripts/build-and-push-prod.sh

3
Dockerfile

@ -13,6 +13,9 @@ ENV VITE_LANGUAGE_TOOL_URL=${VITE_LANGUAGE_TOOL_URL} @@ -13,6 +13,9 @@ ENV VITE_LANGUAGE_TOOL_URL=${VITE_LANGUAGE_TOOL_URL}
ARG VITE_TRANSLATE_URL
ENV VITE_TRANSLATE_URL=${VITE_TRANSLATE_URL}
ARG VITE_ASCIIDOCTOR_SERVER_URL
ENV VITE_ASCIIDOCTOR_SERVER_URL=${VITE_ASCIIDOCTOR_SERVER_URL}
ARG APP_VERSION=unknown
ARG GIT_COMMIT=unknown
ARG BUILD_TIME

3
PROXY_SETUP.md

@ -35,6 +35,7 @@ These are enabled by build-time URLs: @@ -35,6 +35,7 @@ These are enabled by build-time URLs:
VITE_READ_ALOUD_TTS_URL=/api/piper-tts
VITE_LANGUAGE_TOOL_URL=/api/languagetool
VITE_TRANSLATE_URL=/api/translate
VITE_ASCIIDOCTOR_SERVER_URL=/api/asciidoctor
```
Proxy targets:
@ -46,6 +47,8 @@ ProxyPass /api/languagetool http://127.0.0.1:8010 @@ -46,6 +47,8 @@ ProxyPass /api/languagetool http://127.0.0.1:8010
ProxyPassReverse /api/languagetool http://127.0.0.1:8010
ProxyPass /api/translate http://127.0.0.1:5000
ProxyPassReverse /api/translate http://127.0.0.1:5000
ProxyPass /api/asciidoctor/ http://127.0.0.1:8091/
ProxyPassReverse /api/asciidoctor/ http://127.0.0.1:8091/
```
For the full production workflow, use `scripts/README-deploy.md` and `docker-compose.prod.yml`.

2
docker-compose.prod.yml

@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@
# - Set NIP66_MONITOR_NPUB (npub1... derived from the same key) so the relay info page shows the monitor's avatar and handle in the NIP-66 liveliness section.
#
# Apache (or nginx) must proxy same-origin paths baked into the SPA, e.g. /api/languagetool → http://127.0.0.1:8010
# and /api/translate → http://127.0.0.1:5000. Build the app with:
# and /api/translate → http://127.0.0.1:5000 and /api/asciidoctor → http://127.0.0.1:8091. Build the app with:
# LANGUAGE_TOOL_URL=/api/languagetool TRANSLATE_URL=/api/translate ./scripts/build-and-push-prod.sh
services:

4
scripts/README-deploy.md

@ -59,9 +59,9 @@ docker compose -f docker-compose.prod.yml up -d @@ -59,9 +59,9 @@ docker compose -f docker-compose.prod.yml up -d
That starts the **full** stack in `docker-compose.prod.yml` (app, NIP-66 monitor, OG proxy, Piper, LanguageTool, LibreTranslate). The SPA is on **port 8089**; see `docker-compose.prod.yml` header for Apache paths.
**Grammar + translate:** `./scripts/build-and-push-prod.sh` now bakes in **`/api/languagetool`** and **`/api/translate`** by default (same as `.env.development`). Override with `LANGUAGE_TOOL_URL` / `TRANSLATE_URL` if your paths differ; set either to empty to omit that feature from the bundle.
**Grammar + translate + export:** `./scripts/build-and-push-prod.sh` now bakes in **`/api/languagetool`**, **`/api/translate`**, and **`/api/asciidoctor`** by default (same as `.env.development`). Override with `LANGUAGE_TOOL_URL` / `TRANSLATE_URL` / `ASCIIDOCTOR_SERVER_URL` if your paths differ; set any to empty to omit that feature from the bundle.
Apache (or nginx) must still proxy `/api/languagetool``127.0.0.1:8010` and `/api/translate``127.0.0.1:5000`.
Apache (or nginx) must still proxy `/api/languagetool``127.0.0.1:8010`, `/api/translate``127.0.0.1:5000`, and `/api/asciidoctor``127.0.0.1:8091` (Wikistr sidecar; not part of `docker-compose.prod.yml`).
**Shared host:** if you already run another `og-proxy` on `127.0.0.1:8090` or another Wyoming Piper on the same ports, `docker compose up -d` can fail with a port or name conflict. Either stop the duplicates or start only the pieces you need, e.g. `docker compose up -d jumble jumble-nip66-monitor languagetool libretranslate` (and point `PIPER_TTS_HOST` / Apache at your existing Piper stack if applicable).

5
scripts/build-and-push-prod.sh

@ -14,6 +14,7 @@ @@ -14,6 +14,7 @@
# Same-origin: Apache proxies /api/piper-tts → aitherboard (e.g. :9876). Override only if you use CORS on another host.
# LANGUAGE_TOOL_URL — build-arg VITE_LANGUAGE_TOOL_URL (default /api/languagetool if unset). Same-origin Apache → LanguageTool :8010.
# TRANSLATE_URL — build-arg VITE_TRANSLATE_URL (default /api/translate if unset). Same-origin Apache → LibreTranslate :5000.
# ASCIIDOCTOR_SERVER_URL — build-arg VITE_ASCIIDOCTOR_SERVER_URL (default /api/asciidoctor if unset). Same-origin Apache → Wikistr sidecar :8091.
# Set either to an empty string to omit that feature from the bundle: LANGUAGE_TOOL_URL= TRANSLATE_URL= ./scripts/build-and-push-prod.sh
set -e
@ -34,16 +35,18 @@ READ_ALOUD_TTS_URL="${READ_ALOUD_TTS_URL:-/api/piper-tts}" @@ -34,16 +35,18 @@ READ_ALOUD_TTS_URL="${READ_ALOUD_TTS_URL:-/api/piper-tts}"
# Match .env.development and PROXY_SETUP.md (`:-` would force defaults even when empty; use `-` so LANGUAGE_TOOL_URL= disables).
LANGUAGE_TOOL_URL="${LANGUAGE_TOOL_URL-/api/languagetool}"
TRANSLATE_URL="${TRANSLATE_URL-/api/translate}"
ASCIIDOCTOR_SERVER_URL="${ASCIIDOCTOR_SERVER_URL-/api/asciidoctor}"
GIT_COMMIT="$(git rev-parse --short HEAD 2>/dev/null || echo unknown)"
BUILD_TIME="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
echo "Building main app (version: $VERSION, commit: $GIT_COMMIT, VITE_PROXY_SERVER=$PROXY_ORIGIN, VITE_READ_ALOUD_TTS_URL=$READ_ALOUD_TTS_URL, VITE_LANGUAGE_TOOL_URL=$LANGUAGE_TOOL_URL, VITE_TRANSLATE_URL=$TRANSLATE_URL)"
echo "Building main app (version: $VERSION, commit: $GIT_COMMIT, VITE_PROXY_SERVER=$PROXY_ORIGIN, VITE_READ_ALOUD_TTS_URL=$READ_ALOUD_TTS_URL, VITE_LANGUAGE_TOOL_URL=$LANGUAGE_TOOL_URL, VITE_TRANSLATE_URL=$TRANSLATE_URL, VITE_ASCIIDOCTOR_SERVER_URL=$ASCIIDOCTOR_SERVER_URL)"
docker build \
--build-arg "VITE_PROXY_SERVER=$PROXY_ORIGIN" \
--build-arg "VITE_READ_ALOUD_TTS_URL=$READ_ALOUD_TTS_URL" \
--build-arg "VITE_LANGUAGE_TOOL_URL=$LANGUAGE_TOOL_URL" \
--build-arg "VITE_TRANSLATE_URL=$TRANSLATE_URL" \
--build-arg "VITE_ASCIIDOCTOR_SERVER_URL=$ASCIIDOCTOR_SERVER_URL" \
--build-arg "APP_VERSION=$VERSION" \
--build-arg "GIT_COMMIT=$GIT_COMMIT" \
--build-arg "BUILD_TIME=$BUILD_TIME" \

Loading…
Cancel
Save