mirror of
https://github.com/mainflux/mainflux.git
synced 2025-05-02 22:17:10 +08:00

* MF-722 - Change UUID lib (#746) * Update uuid package and update things serivce Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> * Update bootstrap service tests Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> * Update existing postgres writer tests Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * MF-732 - Add Postgres reader (#740) * NOISSUE - Fix Readers logs Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * MF-732 - Add Postgres reader Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix total count Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Rm commented code Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add Postgres reader tests Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix editor format Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Change UUID lib Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * MF-742 - Things to support single user scenario (#749) * Add single user mode to things service Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> * Add tests for things/users package Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> * Update init order in main Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * Update grpc and protobuf deps in mqtt adapter (#751) Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * Fix MQTT raw message deserialization (#753) Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * NOISSUE - Add certificate fields to the Bootstrap service (#752) * Add cert fields to the BS Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Add cert fields when creating a config Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Add update cert endpoint Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Fix key column name Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Add cert fields to db converters Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Secure cert update endpoint Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Authroize cert update methods Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Fix Bootstrap service tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Add cert update service tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update endpoit tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update API docs Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update request tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Fix request tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update repository tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Fix typo in repo tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * NOISSUE - Add searchable Things name (#750) * NOISSUE - Add searchable Things name Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix reviews Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix typo Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add postgres schema validation and tests Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add namme tests in requests_test Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Typo fix Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Rm requests_test Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add name in ListThings loggins Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add invalidName var for tests Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Set maxNameSize to 1024 Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix postgres test Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix total when filtering things by name Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix review Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * Add missing Websocket.js into docker ui image (#755) Signed-off-by: Ivan Milošević <iva@blokovi.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * MF-466 - ARM docker deployment (#756) * Add arm Dockerfiles Change version of postgres images in docker-compose to use versions with multiarch Signed-off-by: Ivan Milošević <iva@blokovi.com> * docker compose file Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove bin qemu file Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove unnecesarry comments Signed-off-by: Ivan Milošević <iva@blokovi.com> * Add make dockers_arm32v7 in Makefile Signed-off-by: Ivan Milošević <iva@blokovi.com> * Remove docker/Dockerfile.arm Signed-off-by: Ivan Milošević <iva@blokovi.com> * Add build for arm32v7 in ui Makefile Signed-off-by: Ivan Milošević <iva@blokovi.com> * Add arm32v7 tags Signed-off-by: Ivan Milošević <iva@blokovi.com> * add docker-compose for arm remove thing-db in docker compose (use same db as user) fix dockerfile and makefile Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix thing database env variable Signed-off-by: Ivan Milošević <iva@blokovi.com> * Switch back to separate database for things and users Signed-off-by: Ivan Milošević <iva@blokovi.com> * rename arm32v7 to arm Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove arm32v7 tag rename arm32v7 image names Signed-off-by: Ivan Milošević <iva@blokovi.com> * Rename command for making mqtt and ui individual images, to match other miscroservices Signed-off-by: Ivan Milošević <iva@blokovi.com> * Push arm docker images Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix fucntion call in ci.sh Signed-off-by: Ivan Milošević <iva@blokovi.com> * mergiing ui/Dockerfile Signed-off-by: Ivan Milošević <iva@blokovi.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * NOISSUE - Add searchable Channels name (#754) * NOISSUE - Add searchable Things name Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix reviews Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix typo Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add postgres schema validation and tests Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Add namme tests in requests_test Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * NOISSUE - Add searchable Channels name Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix test description Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix bootstrap mocks Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix reviews Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * NOISSUE - Remove installing non-existent package in ci (#758) * Remove installing non-existent package from ci Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove branch master condition in ci.sh to test it Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix syntax error Signed-off-by: Ivan Milošević <iva@blokovi.com> * update apt Signed-off-by: Ivan Milošević <iva@blokovi.com> * build arm images for latest release push ui and mqtt arm images install only qemu-user-static Signed-off-by: Ivan Milošević <iva@blokovi.com> * clean docker after pushing amd64 images Signed-off-by: Ivan Milošević <iva@blokovi.com> * installing all qemu app Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove docker images before building ui and mqtt arm-images Signed-off-by: Ivan Milošević <iva@blokovi.com> * prune dockers and test only arm build Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix syntax error Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix moving qemu-arm-static Signed-off-by: Ivan Milošević <iva@blokovi.com> * installing qemu with apt-get Signed-off-by: Ivan Milošević <iva@blokovi.com> * add another apt-get update Signed-off-by: Ivan Milošević <iva@blokovi.com> * apt install one liner Signed-off-by: Ivan Milošević <iva@blokovi.com> * testing ci script Signed-off-by: Ivan Milošević <iva@blokovi.com> * After installing qemu, get appropriate version Signed-off-by: Ivan Milošević <iva@blokovi.com> * Test ci without amd64 dockers Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove tests from ci for test purpose Signed-off-by: Ivan Milošević <iva@blokovi.com> * Uncomment commands Signed-off-by: Ivan Milošević <iva@blokovi.com> * Remove whitespace and change order of building images Signed-off-by: Ivan Milošević <iva@blokovi.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * nginx Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * change to openresty Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * change to openresty and accept env from docker compose Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * revert to master Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * revert to master Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * revert to master Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * NOISSUE - Fix Docker for ARM (#760) * NOISSUE - Fix Docker for ARM Signed-off-by: drasko <drasko.draskovic@gmail.com> * Correct ARGs Signed-off-by: drasko <drasko.draskovic@gmail.com> * Fix docker-compose for ARM Signed-off-by: drasko <drasko.draskovic@gmail.com> * Add docker manifest Signed-off-by: drasko <drasko.draskovic@gmail.com> * cp not mv qemu from mf root Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix amd64 docker names for ui and mqtt images Signed-off-by: Ivan Milošević <iva@blokovi.com> * edit ci.sh for testing purposes Signed-off-by: Ivan Milošević <iva@blokovi.com> * remove bachslash from make manifest edits in ci for testing purposes Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix manifest call Signed-off-by: Ivan Milošević <iva@blokovi.com> * add manifest on version realese delete space before latest argument fix for loop in manifest creation Signed-off-by: Ivan Milošević <iva@blokovi.com> * include tests Signed-off-by: Ivan Milošević <iva@blokovi.com> * docker system prune remove tests for testin purposes Signed-off-by: Ivan Milošević <iva@blokovi.com> * Add variant in manifest file for armv7 Signed-off-by: Ivan Milošević <iva@blokovi.com> * Remove white space Signed-off-by: Ivan Milošević <iva@blokovi.com> * paralelise the compilation Signed-off-by: Ivan Milošević <iva@blokovi.com> * fix place of -j$NPROC Signed-off-by: Ivan Milošević <iva@blokovi.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * adding env variable Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * fix variant option for manifest annotate (#765) Signed-off-by: Ivan Milošević <iva@blokovi.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * enable port configure from env var in docker-compose Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * enable port configure from env var in docker-compose Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * enable port configure from env var in docker-compose Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * use docker env to set port Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * add env to conf port in nginx.conf Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * replace string with docker env Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * replace string with docker env Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * Update docs (#766) Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * remove not needed comment Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * adding .env file for default UI_PORT - if no enviroment UI_PORT is set value from .env file is used Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * get default UI_PORT variable value from .env file Signed-off-by: mteodor <mirko.teodorovic@gmail.com> * set default port value to 3000 Signed-off-by: mteodor <mirko.teodorovic@gmail.com>
257 lines
5.9 KiB
YAML
257 lines
5.9 KiB
YAML
###
|
|
# Copyright (c) 2015-2017 Mainflux
|
|
#
|
|
# Mainflux is licensed under an Apache license, version 2.0 license.
|
|
# All rights not explicitly granted in the Apache license, version 2.0 are reserved.
|
|
# See the included LICENSE file for more details.
|
|
###
|
|
|
|
version: "3"
|
|
|
|
networks:
|
|
mainflux-base-net:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
mainflux-users-db-volume:
|
|
mainflux-things-db-volume:
|
|
mainflux-mqtt-redis-volume:
|
|
mainflux-things-redis-volume:
|
|
mainflux-es-redis-volume:
|
|
|
|
services:
|
|
nginx:
|
|
image: nginx:1.16.0-alpine
|
|
container_name: mainflux-nginx
|
|
restart: on-failure
|
|
volumes:
|
|
- ./nginx/nginx-${AUTH-key}.conf:/etc/nginx/nginx.conf.template
|
|
- ./nginx/entrypoint.sh:/entrypoint.sh
|
|
- ./ssl/authorization.js:/etc/nginx/authorization.js
|
|
- ./ssl/certs/mainflux-server.crt:/etc/ssl/certs/mainflux-server.crt
|
|
- ./ssl/certs/ca.crt:/etc/ssl/certs/ca.crt
|
|
- ./ssl/certs/mainflux-server.key:/etc/ssl/private/mainflux-server.key
|
|
- ./ssl/dhparam.pem:/etc/ssl/certs/dhparam.pem
|
|
ports:
|
|
- 80:80
|
|
- 443:443
|
|
- 8883:8883
|
|
networks:
|
|
- mainflux-base-net
|
|
environment:
|
|
- UI_PORT
|
|
command: /entrypoint.sh
|
|
|
|
nats:
|
|
image: nats:1.3.0
|
|
container_name: mainflux-nats
|
|
restart: on-failure
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
users-db:
|
|
image: postgres:10.8-alpine
|
|
container_name: mainflux-users-db
|
|
restart: on-failure
|
|
environment:
|
|
POSTGRES_USER: mainflux
|
|
POSTGRES_PASSWORD: mainflux
|
|
POSTGRES_DB: users
|
|
networks:
|
|
- mainflux-base-net
|
|
volumes:
|
|
- mainflux-users-db-volume:/var/lib/postgresql/data
|
|
|
|
users:
|
|
image: mainflux/users:latest
|
|
container_name: mainflux-users
|
|
depends_on:
|
|
- users-db
|
|
expose:
|
|
- 8181
|
|
restart: on-failure
|
|
environment:
|
|
MF_USERS_LOG_LEVEL: debug
|
|
MF_USERS_DB_HOST: users-db
|
|
MF_USERS_DB_PORT: 5432
|
|
MF_USERS_DB_USER: mainflux
|
|
MF_USERS_DB_PASS: mainflux
|
|
MF_USERS_DB: users
|
|
MF_USERS_HTTP_PORT: 8180
|
|
MF_USERS_GRPC_PORT: 8181
|
|
MF_USERS_SECRET: secret
|
|
ports:
|
|
- 8180:8180
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
things-db:
|
|
image: postgres:10.8-alpine
|
|
container_name: mainflux-things-db
|
|
restart: on-failure
|
|
environment:
|
|
POSTGRES_USER: mainflux
|
|
POSTGRES_PASSWORD: mainflux
|
|
POSTGRES_DB: things
|
|
networks:
|
|
- mainflux-base-net
|
|
volumes:
|
|
- mainflux-things-db-volume:/var/lib/postgresql/data
|
|
|
|
things-redis:
|
|
image: redis:5.0-alpine
|
|
container_name: mainflux-things-redis
|
|
restart: on-failure
|
|
networks:
|
|
- mainflux-base-net
|
|
volumes:
|
|
- mainflux-things-redis-volume:/data
|
|
|
|
things:
|
|
image: mainflux/things:latest
|
|
container_name: mainflux-things
|
|
depends_on:
|
|
- things-db
|
|
- users
|
|
restart: on-failure
|
|
environment:
|
|
MF_THINGS_LOG_LEVEL: debug
|
|
MF_THINGS_DB_HOST: things-db
|
|
MF_THINGS_DB_PORT: 5432
|
|
MF_THINGS_DB_USER: mainflux
|
|
MF_THINGS_DB_PASS: mainflux
|
|
MF_THINGS_DB: things
|
|
MF_THINGS_CACHE_URL: things-redis:6379
|
|
MF_THINGS_ES_URL: es-redis:6379
|
|
MF_THINGS_HTTP_PORT: 8182
|
|
MF_THINGS_GRPC_PORT: 8183
|
|
MF_USERS_URL: users:8181
|
|
MF_THINGS_SECRET: secret
|
|
ports:
|
|
- 8182:8182
|
|
- 8183:8183
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
normalizer:
|
|
image: mainflux/normalizer:latest
|
|
container_name: mainflux-normalizer
|
|
restart: on-failure
|
|
depends_on:
|
|
- nats
|
|
expose:
|
|
- 8184
|
|
environment:
|
|
MF_NORMALIZER_LOG_LEVEL: debug
|
|
MF_NATS_URL: nats://nats:4222
|
|
MF_NORMALIZER_PORT: 8184
|
|
ports:
|
|
- 8184:8184
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
ui:
|
|
image: mainflux/ui:latest
|
|
container_name: mainflux-ui
|
|
restart: on-failure
|
|
ports:
|
|
- ${UI_PORT}:${UI_PORT}
|
|
networks:
|
|
- mainflux-base-net
|
|
environment:
|
|
- UI_PORT
|
|
|
|
ws-adapter:
|
|
image: mainflux/ws:latest
|
|
container_name: mainflux-ws
|
|
depends_on:
|
|
- things
|
|
- nats
|
|
restart: on-failure
|
|
environment:
|
|
MF_WS_ADAPTER_LOG_LEVEL: debug
|
|
MF_WS_ADAPTER_PORT: 8186
|
|
MF_NATS_URL: nats://nats:4222
|
|
MF_THINGS_URL: things:8183
|
|
ports:
|
|
- 8186:8186
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
http-adapter:
|
|
image: mainflux/http:latest
|
|
container_name: mainflux-http
|
|
depends_on:
|
|
- things
|
|
- nats
|
|
restart: on-failure
|
|
expose:
|
|
- 8185
|
|
environment:
|
|
MF_HTTP_ADAPTER_LOG_LEVEL: debug
|
|
MF_HTTP_ADAPTER_PORT: 8185
|
|
MF_NATS_URL: nats://nats:4222
|
|
MF_THINGS_URL: things:8183
|
|
ports:
|
|
- 8185:8185
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
es-redis:
|
|
image: redis:5.0-alpine
|
|
container_name: mainflux-es-redis
|
|
restart: on-failure
|
|
networks:
|
|
- mainflux-base-net
|
|
volumes:
|
|
- mainflux-es-redis-volume:/data
|
|
|
|
mqtt-redis:
|
|
image: redis:5.0-alpine
|
|
container_name: mainflux-mqtt-redis
|
|
restart: on-failure
|
|
networks:
|
|
- mainflux-base-net
|
|
volumes:
|
|
- mainflux-mqtt-redis-volume:/data
|
|
|
|
mqtt-adapter:
|
|
image: mainflux/mqtt:latest
|
|
container_name: mainflux-mqtt
|
|
depends_on:
|
|
- things
|
|
- nats
|
|
- mqtt-redis
|
|
restart: on-failure
|
|
environment:
|
|
MF_MQTT_ADAPTER_LOG_LEVEL: debug
|
|
MF_MQTT_INSTANCE_ID: mqtt-adapter-1
|
|
MF_MQTT_ADAPTER_PORT: 1883
|
|
MF_MQTT_ADAPTER_WS_PORT: 8880
|
|
MF_MQTT_ADAPTER_REDIS_HOST: mqtt-redis
|
|
MF_MQTT_ADAPTER_ES_HOST: es-redis
|
|
MF_NATS_URL: nats://nats:4222
|
|
MF_THINGS_URL: things:8183
|
|
ports:
|
|
- 1883:1883
|
|
- 8880:8880
|
|
networks:
|
|
- mainflux-base-net
|
|
|
|
coap-adapter:
|
|
image: mainflux/coap:latest
|
|
container_name: mainflux-coap
|
|
depends_on:
|
|
- things
|
|
- nats
|
|
restart: on-failure
|
|
environment:
|
|
MF_COAP_ADAPTER_LOG_LEVEL: debug
|
|
MF_COAP_ADAPTER_PORT: 5683
|
|
MF_NATS_URL: nats://nats:4222
|
|
MF_THINGS_URL: things:8183
|
|
ports:
|
|
- 5683:5683/udp
|
|
networks:
|
|
- mainflux-base-net
|