diff --git a/CHANGELOG.md b/CHANGELOG.md index 8015683..9df2309 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to `sendmsg` are documented here. +## 5.1.1 + +### Added +- **Updated README.md:** Exposes docker compose sample config for signal-rest-api setup along with notes on Traefik and Pullio usage and integration + ## 5.1.0 ### Added diff --git a/README.md b/README.md index 89331a3..d4683a2 100644 --- a/README.md +++ b/README.md @@ -107,6 +107,43 @@ chmod +x /usr/local/bin/sendmsg **For Signal:** + a. **Get signal-cli-rest running in docker compose:** + Put the following config into your docker-compose.yml file (this assumes you are using [traefik](https://github.com/traefik/traefik) to reverse proxy your docker compose services and [pullio](https://hotio.dev/scripts/pullio/) to automate updates) + +``` +services: + signal-api: + image: bbernhard/signal-cli-rest-api:latest + restart: always + expose: + - "8080" + labels: + - "traefik.http.routers.$NAME.rule=Host(`$SIGNAL_INTERNAL_URL`)" + - "traefik.http.routers.$NAME.entrypoints=websecure" + - "traefik.http.routers.$NAME.tls.certresolver=route53" + - "org.hotio.pullio.notify=true" + - "org.hotio.pullio.update=true" + - "org.hotio.pullio.generic.webhook=$WEBHOOK_URL" + - "org.hotio.pullio.author.avatar=$GRAVATAR_URL" + volumes: + - $PATH_TO_DOCKER_STORAGE_DIR:/home/.local/share/signal-cli + environment: + - MODE=native + - AUTO_RECEIVE_SCHEDULE=0 22 * * * + - PUID=$USER_ID + - PGID=$GROUP_ID + - TZ=$TIMEZONE_NAME +``` + $SIGNAL_INTERNAL_URL - The internal URL traefik will server the container from https://example.internal.mydomain.com + $WEBHOOK_URL - The URL to your IFTTT webhook for Pullio, i.e https://maker.ifttt.com/trigger/Pullio/with/key/test-key + $GRAVATAR_URL - The URL for your [Gravatar](https://gravatar.com/) icon i.e https://s.gravatar.com/avatar/1234567890 + $NAME - The name you give to this service in traefik + $PATH_TO_DOCKER_STORAGE_DIR - The directory on your docker compose host where the signal containers filesystem lives i.e /opt/docker-data/signal + $TIMEZONE_NAME - The [Linux Timezone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) name i.e "America/Los_Angeles" + + Note: See https://builder.aws.com/content/2tmBo5uCgpwQegRBsdSDmupj5rH/lets-encrypt-dns01-challenge-with-traefik-and-aws-route-53 for examples of using AWS Route53 with traefik to do Lets Encrypt ACME DNS-01 requests for automatic SSL certificate creation with Traefik. Installation of traefik is outside the scope of this document. + + ``` # Verify signal-cli-rest-api is running curl -s http://localhost:8080/v1/accounts | python3 -m json.tool diff --git a/sendmsg b/sendmsg index c87bc9b..88b678d 100755 --- a/sendmsg +++ b/sendmsg @@ -39,7 +39,7 @@ import urllib.error import urllib.parse import urllib.request -VERSION = "5.1.0" +VERSION = "5.1.1" CONFIG_PATHS = [ os.path.expanduser("~/.sendmsg.conf"),