mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-08-20 19:10:16 +00:00
* feat: add simplex-support-bot-light * feat: package simplex-support-bot-light for docker * docs: document simplex-support-bot-light * fix: make a missing config actionable and bounded * docs: note the attached compose Ctrl+C behaviour * refactor: use the library for startup and custom data * refactor: drop the display-name workaround * style: shorten the startup comment * build: build the core and the library into the image * docs: correct where the image type rule comes from * fix: log what the core said a command got wrong * build: run the container as the operator's uid * docs: keep the container uid in .env * docs: tighten the README
28 lines
1.2 KiB
YAML
28 lines
1.2 KiB
YAML
services:
|
|
support-bot-light:
|
|
build:
|
|
# The repository root: the image is built from the Haskell core and the
|
|
# Python library in this tree, neither of them released.
|
|
context: ../..
|
|
dockerfile: apps/simplex-support-bot-light/Dockerfile
|
|
args:
|
|
# Defaults to 1000. Set both to your own ids to own ./state yourself.
|
|
USER_UID: ${USER_UID:-1000}
|
|
USER_GID: ${USER_GID:-1000}
|
|
# Bounded on purpose. A config that will not load is not fixed by retrying,
|
|
# and an unbounded policy turns it into a log flood that also makes Ctrl+C
|
|
# wait out the grace period. Five is enough to ride out a transient fault.
|
|
restart: on-failure:5
|
|
volumes:
|
|
# Directory, not a single file: bot.image resolves relative paths against
|
|
# the directory holding config.toml.
|
|
- ./bot-config:/etc/support-bot-light:ro
|
|
# Holds the bot's identity, address, roster group and roster. Deleting it
|
|
# means a new address and every roster member redoing the handshake.
|
|
- ./state:/data
|
|
stop_grace_period: 10s
|
|
ports:
|
|
# GET /health. Published on the host loopback because the endpoint has no
|
|
# authentication; widen it only for a monitoring system that needs it.
|
|
- "127.0.0.1:7777:8080"
|