mirror of
https://github.com/Jermolene/TiddlyWiki5.git
synced 2026-03-18 04:41:12 -07:00
- Add Dockerfile (Node Alpine, unprivileged user, configurable via env vars) - Add docker-compose.yml with named volume and environment variable support - Add docker/entrypoint.sh for wiki init and --listen argument assembly - Add bin/docker-publish.sh for manual multi-platform image publishing - Add .github/workflows/docker-publish.yml for automated Docker Hub release on GitHub Release publish - Add editions/tw5.com howto tiddler documenting Docker usage Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
34 lines
915 B
Bash
Executable file
34 lines
915 B
Bash
Executable file
#!/bin/sh
|
|
set -e
|
|
|
|
WIKI_DIR="${TIDDLYWIKI_DATA_DIR:-/data}"
|
|
HOST="${TIDDLYWIKI_HOST:-0.0.0.0}"
|
|
PORT="${TIDDLYWIKI_PORT:-8080}"
|
|
|
|
# Initialize wiki on first run
|
|
if [ ! -f "${WIKI_DIR}/tiddlywiki.info" ]; then
|
|
echo "Initializing new wiki at ${WIKI_DIR} ..."
|
|
tiddlywiki "${WIKI_DIR}" --init server
|
|
fi
|
|
|
|
# Build --listen argument list
|
|
LISTEN_ARGS="host=${HOST} port=${PORT}"
|
|
|
|
if [ -n "${TIDDLYWIKI_USERNAME}" ]; then
|
|
LISTEN_ARGS="${LISTEN_ARGS} username=${TIDDLYWIKI_USERNAME}"
|
|
fi
|
|
|
|
if [ -n "${TIDDLYWIKI_PASSWORD}" ]; then
|
|
LISTEN_ARGS="${LISTEN_ARGS} password=${TIDDLYWIKI_PASSWORD}"
|
|
fi
|
|
|
|
if [ -n "${TIDDLYWIKI_READERS}" ]; then
|
|
LISTEN_ARGS="${LISTEN_ARGS} readers=${TIDDLYWIKI_READERS}"
|
|
fi
|
|
|
|
if [ -n "${TIDDLYWIKI_WRITERS}" ]; then
|
|
LISTEN_ARGS="${LISTEN_ARGS} writers=${TIDDLYWIKI_WRITERS}"
|
|
fi
|
|
|
|
echo "Starting TiddlyWiki on ${HOST}:${PORT} ..."
|
|
exec tiddlywiki "${WIKI_DIR}" --listen ${LISTEN_ARGS}
|