feat(gateway): added first implement of the Gateway (MQTT, Influx, REST)
Signed-off-by: Klagarge <remi@heredero.ch>
This commit is contained in:
@@ -6,6 +6,32 @@ volumes:
|
||||
rabbitmq_data:
|
||||
|
||||
services:
|
||||
gateway:
|
||||
image: registry.forge.hefr.ch/team-raclette/project-softweng/gateway:latest
|
||||
container_name: gateway
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- INFLUXDB_TOKEN=$INFLUXDB_TOKEN
|
||||
- INFLUXDB_ORG=$INFLUXDB_ORG
|
||||
- INFLUXDB_BUCKET=$INFLUXDB_BUCKET
|
||||
- MQTT_USERNAME=$MQTT_USERNAME
|
||||
- MQTT_PASSWORD=$MQTT_PASSWORD
|
||||
- REST_USERNAME=$REST_USERNAME
|
||||
- REST_PASSWORD=$REST_PASSWORD
|
||||
|
||||
- INFLUXDB_URL=http://influx.mse.kb28.ch
|
||||
- CLIENT_ID=Gateway-SoftwEng
|
||||
- MQTT_URL=http://mqtt.mse.kb28.ch
|
||||
- MEASUREMENT_NAME=THC
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.Gateway-http.entrypoints=http"
|
||||
- "traefik.http.routers.Gateway-http.rule=Host(`rest.mse.kb28.ch`)"
|
||||
- "traefik.http.middlewares.Gateway-redirect.redirectscheme.scheme=https"
|
||||
- "traefik.http.routers.Gateway-https.entrypoints=https"
|
||||
- "traefik.http.routers.Gateway-https.rule=Host(`rest.mse.kb28.ch`)"
|
||||
- "traefik.http.routers.Gateway-https.tls.certResolver=letsencrypt"
|
||||
- "traefik.http.services.Gateway-https.loadbalancer.server.port=8080"
|
||||
influxdb:
|
||||
image: influxdb:2
|
||||
container_name: influxdb
|
||||
@@ -23,6 +49,15 @@ services:
|
||||
- DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=$INFLUXDB_TOKEN
|
||||
- DOCKER_INFLUXDB_INIT_ORG=$INFLUXDB_ORG
|
||||
- DOCKER_INFLUXDB_INIT_BUCKET=$INFLUXDB_BUCKET
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.influx-http.entrypoints=http"
|
||||
- "traefik.http.routers.influx-http.rule=Host(`influx.mse.kb28.ch`)"
|
||||
- "traefik.http.middlewares.influx-redirect.redirectscheme.scheme=https"
|
||||
- "traefik.http.routers.influx-https.entrypoints=https"
|
||||
- "traefik.http.routers.influx-https.rule=Host(`influx.mse.kb28.ch`)"
|
||||
- "traefik.http.routers.influx-https.tls.certResolver=letsencrypt"
|
||||
- "traefik.http.services.influx-https.loadbalancer.server.port=8086"
|
||||
rabbitmq:
|
||||
image: rabbitmq:3-management-alpine
|
||||
container_name: rabbitmq
|
||||
@@ -39,3 +74,12 @@ services:
|
||||
- RABBITMQ_DEFAULT_PASS=$MQTT_PASSWORD
|
||||
command:
|
||||
sh -c "rabbitmq-plugins enable rabbitmq_mqtt && rabbitmq-server"
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.mqtt-http.entrypoints=http"
|
||||
- "traefik.http.routers.mqtt-http.rule=Host(`mqtt.mse.kb28.ch`)"
|
||||
- "traefik.http.middlewares.mqtt-redirect.redirectscheme.scheme=https"
|
||||
- "traefik.http.routers.mqtt-https.entrypoints=https"
|
||||
- "traefik.http.routers.mqtt-https.rule=Host(`mqtt.mse.kb28.ch`)"
|
||||
- "traefik.http.routers.mqtt-https.tls.certResolver=letsencrypt"
|
||||
- "traefik.http.services.mqtt-https.loadbalancer.server.port=1883"
|
||||
|
||||
Reference in New Issue
Block a user