45 lines
2.4 KiB
YAML
45 lines
2.4 KiB
YAML
# Dockerized Signal Messenger REST API
|
||
# https://github.com/bbernhard/signal-cli-rest-api/blob/master/doc/EXAMPLES.md
|
||
# https://deepwiki.com/bbernhard/signal-cli-rest-api/1-overview
|
||
# test: curl -X POST -H "Content-Type: application/json" 'http://localhost:8003/v2/send' -d '{"message": "Test via Signal API!", "number": "+15555555555", "recipients": [ "+15555555555" ]}'
|
||
# curl -X POST -H "Content-Type: application/json" '<SWAGGER_HOST>/v2/send' -d '{"message": "Test via Signal API with reverse proxy", "number": "+15555555555", "recipients": [ "+15555555555" ]}'
|
||
|
||
services:
|
||
signal-cli-rest-api:
|
||
image: bbernhard/signal-cli-rest-api:latest
|
||
container_name: signal-api
|
||
restart: unless-stopped
|
||
environment:
|
||
- TZ=America/Chicago
|
||
- MODE=native #supported modes: json-rpc, native, normal. Receives Signal Messages from the Signal Network. If you are running the docker container in normal/native mode, this is a GET endpoint. In json-rpc mode this is a websocket endpoint.
|
||
- SWAGGER_HOST=${SWAGGER_HOST} #The host that's used in the Swagger UI for the interactive examples (and useful when this runs behind a reverse proxy). Defaults to SWAGGER_IP:PORT.
|
||
- SWAGGER_IP=8004 #The IP that's used in the Swagger UI for the interactive examples. Default 8081. Optional
|
||
- SWAGGER_USE_HTTPS_AS_PREFERRED_SCHEME=true
|
||
#- PORT=8080 # Sets the main REST API server’s internal listening port inside the container.
|
||
#- AUTO_RECEIVE_SCHEDULE=0 22 * * * #enable this parameter on demand (see description below)
|
||
ports:
|
||
- "8003:8080" # API
|
||
- "8004:8081" # swagger UI
|
||
volumes:
|
||
- /srv/docker/utilities/signal-api:/home/.local/share/signal-cli #map "signal-cli-config" folder on host system into docker container. the folder contains the password and cryptographic keys when a new number is registered
|
||
labels:
|
||
- rackpeek.name=signal-api
|
||
- rackpeek.tags=services
|
||
networks:
|
||
- proxy-net
|
||
## Secured Signal Asdds authentication
|
||
#secured-signal:
|
||
# image: ghcr.io/codeshelldev/secured-signal-api:latest
|
||
# container_name: secured-signal
|
||
# environment:
|
||
# API__URL: http://signal-api:8003
|
||
# SETTINGS__MESSAGE__VARIABLES__RECIPIENTS: "[+15555555555]"
|
||
# SETTINGS__MESSAGE__VARIABLES__NUMBER: "+15555555555"
|
||
# API__TOKENS: "[${API_TOKEN}]"
|
||
# ports:
|
||
# - "8899:8880"
|
||
# restart: unless-stopped
|
||
|
||
networks:
|
||
proxy-net:
|
||
external: true |