Browse Source

Add docker compose support

Gautam Korlam 3 years ago
parent
commit
a807e3d07e
2 changed files with 27 additions and 3 deletions
  1. 8 2
      Dockerfile
  2. 19 1
      README.md

+ 8 - 2
Dockerfile

@@ -52,5 +52,11 @@ ARG SOURCE_DIR_PATH
 COPY --from=build $SOURCE_DIR_PATH $SOURCE_DIR_PATH
 ARG VIRTUALENV_PATH
 ENV PATH=$VIRTUALENV_PATH/bin:$PATH
-ENTRYPOINT ["tini", "--"]
-CMD ["switchbot-mqtt", "--help"]
+
+ENV MQTT_HOST ""
+ENV MQTT_PORT "1883"
+ENV MQTT_USERNAME ""
+ENV MQTT_PASSWORD ""
+
+ENTRYPOINT [ "tini", "--" ]
+CMD ["sh", "-c", "switchbot-mqtt --mqtt-host \"$MQTT_HOST\" --mqtt-port \"$MQTT_PORT\" --mqtt-username \"$MQTT_USERNAME\" --mqtt-password \"$MQTT_PASSWORD\""]

+ 19 - 1
README.md

@@ -71,7 +71,7 @@ switch:
 
 ## Docker 🐳
 
-Pre-built docker image are available at https://hub.docker.com/r/fphammerle/switchbot-mqtt/tags
+Pre-built docker images are available at https://hub.docker.com/r/fphammerle/switchbot-mqtt/tags
 
 Annotation of signed tags `docker/*` contains docker image digests: https://github.com/fphammerle/switchbot-mqtt/tags
 
@@ -83,6 +83,24 @@ $ docker run --name spelunca_switchbot \
     switchbot-mqtt --mqtt-host HOSTNAME_OR_IP_ADDRESS
 ```
 
+Alternatively, you can use docker-compose
+```
+version: '3.8'
+
+services:
+  switchbot-mqtt:
+    image: switchbot-mqtt
+    container_name: switchbot-mqtt
+    network_mode: host
+    userns_mode: host
+    environment:
+      - MQTT_HOST=localhost
+      - MQTT_PORT=1883
+      - MQTT_USERNAME=username
+      - MQTT_PASSWORD=password
+    restart: unless-stopped
+```
+
 ## MQTT Authentication
 
 ```sh