mirror of
https://github.com/mainflux/mainflux.git
synced 2025-04-24 13:48:49 +08:00
MF-1342 - Use environment variables in docker-compose to use tagged version of image (#1343)
* add MF_RELEASE_TAG Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * update readme file for MF_RELEASE_TAG Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * update readme file for MF_RELEASE_TAG Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * fix explanation, space Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * fix bad search/replace Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * fix bad search/replace Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * minor changes Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * fix readme Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * improve explanation for tag Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * replace snippet with link to code section Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * improve explanation for tag Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * replace snippet with link to code section Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com> * remove MF_RELEASE_TAG from service readme Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
This commit is contained in:
parent
a3dbfecb2d
commit
39a649c1bb
3
.env
3
.env
@ -300,3 +300,6 @@ MF_SMTP_NOTIFIER_DB_PORT=5432
|
||||
MF_SMTP_NOTIFIER_DB_USER=mainflux
|
||||
MF_SMTP_NOTIFIER_DB_PASS=mainflux
|
||||
MF_SMTP_NOTIFIER_DB=subscriptions
|
||||
|
||||
# Docker image tag
|
||||
MF_RELEASE_TAG=latest
|
||||
|
12
README.md
12
README.md
@ -62,6 +62,18 @@ This will bring up the Mainflux docker services and interconnect them. This comm
|
||||
make run
|
||||
```
|
||||
|
||||
If you want to run services from specific release checkout code from github and make sure that
|
||||
`MF_RELEASE_TAG` in [.env](.env) is being set to match the release version
|
||||
|
||||
```
|
||||
git checkout tags/0.10.0 -b 0.10.0
|
||||
```
|
||||
```
|
||||
#.env:
|
||||
MF_RELEASE_TAG=0.10.0
|
||||
```
|
||||
**docker-compose is meant and designed to be used for development and testing environments, for production we suggest using** [Kubernetes](https://mainflux.readthedocs.io/en/latest/kubernetes/)
|
||||
|
||||
## Usage
|
||||
|
||||
The quickest way to start using Mainflux is via the CLI. The latest version can be downloaded from the [official releases page][rel].
|
||||
|
@ -59,36 +59,9 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service itself is distributed as Docker container. The following snippet
|
||||
provides a compose file template that can be used to deploy the service container
|
||||
locally:
|
||||
The service itself is distributed as Docker container. Check the [`auth`](https://github.com/mainflux/mainflux/blob/master/docker/docker-compose.yml#L71-L94) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
auth:
|
||||
image: mainflux/auth:[version]
|
||||
container_name: [instance name]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
environment:
|
||||
MF_AUTH_LOG_LEVEL: [Service log level]
|
||||
MF_AUTH_DB_HOST: [Database host address]
|
||||
MF_AUTH_DB_PORT: [Database host port]
|
||||
MF_AUTH_DB_USER: [Database user]
|
||||
MF_AUTH_DB_PASS: [Database password]
|
||||
MF_AUTH_DB: [Name of the database used by the service]
|
||||
MF_AUTH_DB_SSL_MODE: [SSL mode to connect to the database with]
|
||||
MF_AUTH_DB_SSL_CERT: [Path to the PEM encoded certificate file]
|
||||
MF_AUTH_DB_SSL_KEY: [Path to the PEM encoded key file]
|
||||
MF_AUTH_DB_SSL_ROOT_CERT: [Path to the PEM encoded root certificate file]
|
||||
MF_AUTH_HTTP_PORT: [Service HTTP port]
|
||||
MF_AUTH_GRPC_PORT: [Service gRPC port]
|
||||
MF_AUTH_SECRET: [String used for signing tokens]
|
||||
MF_AUTH_SERVER_CERT: [String path to server certificate in pem format]
|
||||
MF_AUTH_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
```
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -68,50 +68,8 @@ The service is configured using the environment variables presented in the follo
|
||||
|
||||
## Deployment
|
||||
|
||||
The service itself is distributed as Docker container. The following snippet
|
||||
provides a compose file template that can be used to deploy the service container
|
||||
locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
bootstrap:
|
||||
image: mainflux/bootstrap:latest
|
||||
container_name: mainflux-bootstrap
|
||||
depends_on:
|
||||
- bootstrap-db
|
||||
restart: on-failure
|
||||
ports:
|
||||
- 8200:8200
|
||||
environment:
|
||||
MF_BOOTSTRAP_LOG_LEVEL: [Bootstrap log level]
|
||||
MF_BOOTSTRAP_DB_HOST: [Database host address]
|
||||
MF_BOOTSTRAP_DB_PORT: [Database host port]
|
||||
MF_BOOTSTRAP_DB_USER: [Database user]
|
||||
MF_BOOTSTRAP_DB_PASS: [Database password]
|
||||
MF_BOOTSTRAP_DB: [Name of the database used by the service]
|
||||
MF_BOOTSTRAP_DB_SSL_MODE: [SSL mode to connect to the database with]
|
||||
MF_BOOTSTRAP_DB_SSL_CERT: [Path to the PEM encoded certificate file]
|
||||
MF_BOOTSTRAP_DB_SSL_KEY: [Path to the PEM encoded key file]
|
||||
MF_BOOTSTRAP_DB_SSL_ROOT_CERT: [Path to the PEM encoded root certificate file]
|
||||
MF_BOOTSTRAP_ENCRYPT_KEY: [Hex-encoded encryption key used for secure bootstrap]
|
||||
MF_BOOTSTRAP_CLIENT_TLS: [Boolean value to enable/disable client TLS]
|
||||
MF_BOOTSTRAP_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_BOOTSTRAP_PORT: 8200
|
||||
MF_BOOTSTRAP_SERVER_CERT: [String path to server cert in pem format]
|
||||
MF_BOOTSTRAP_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_SDK_BASE_URL: [Base SDK URL for the Mainflux services]
|
||||
MF_SDK_THINGS_PREFIX: [SDK prefix for Things service]
|
||||
MF_THINGS_ES_URL: [Things service event source URL]
|
||||
MF_THINGS_ES_PASS: [Things service event source password]
|
||||
MF_THINGS_ES_DB: [Things service event source database]
|
||||
MF_BOOTSTRAP_ES_URL: [Bootstrap service event source URL]
|
||||
MF_BOOTSTRAP_ES_PASS: [Bootstrap service event source password]
|
||||
MF_BOOTSTRAP_ES_DB: [Bootstrap service event source database]
|
||||
MF_BOOTSTRAP_EVENT_CONSUMER: [Bootstrap service event source consumer name]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_AUTH_GRPC_URL: [Auth service gRPC URL]
|
||||
MF_AUTH_GRPC_TIMEOUT: [Auth service gRPC request timeout in seconds]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`boostrap`](https://github.com/mainflux/mainflux/blob/master/docker/addons/bootstrap/docker-compose.yml#L32-L56) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -23,28 +23,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service is distributed as Docker container. The following snippet provides
|
||||
a compose file template that can be used to deploy the service container locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
adapter:
|
||||
image: mainflux/coap:[version]
|
||||
container_name: [instance name]
|
||||
ports:
|
||||
- [host machine port]:[configured port]
|
||||
environment:
|
||||
MF_COAP_ADAPTER_PORT: [Service HTTP port]
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_COAP_ADAPTER_LOG_LEVEL: [Service log level]
|
||||
MF_COAP_ADAPTER_CLIENT_TLS: [Flag that indicates if TLS should be turned on]
|
||||
MF_COAP_ADAPTER_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_COAP_ADAPTER_PING_PERIOD: [Hours between 1 and 24 to ping client with ACK message]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_THINGS_AUTH_GRPC_URL: [Things service Auth gRPC URL]
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: [Things service Auth gRPC request timeout in seconds]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`coap-adapter`](https://github.com/mainflux/mainflux/blob/master/docker/docker-compose.yml#L273-L291) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
Running this service outside of container requires working instance of the NATS service.
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
@ -23,32 +23,8 @@ default values.
|
||||
| MF_CASSANDRA_WRITER_TRANSFORMER | Message transformer type | senml |
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
cassandra-writer:
|
||||
image: mainflux/cassandra-writer:[version]
|
||||
container_name: [instance name]
|
||||
expose:
|
||||
- [Service HTTP port]
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_CASSANDRA_WRITER_LOG_LEVEL: [Cassandra writer log level]
|
||||
MF_CASSANDRA_WRITER_PORT: [Service HTTP port]
|
||||
MF_CASSANDRA_WRITER_DB_CLUSTER: [Cassandra cluster comma separated addresses]
|
||||
MF_CASSANDRA_WRITER_DB_KEYSPACE: [Cassandra keyspace name]
|
||||
MF_CASSANDRA_WRITER_DB_USER: [Cassandra DB username]
|
||||
MF_CASSANDRA_WRITER_DB_PASS: [Cassandra DB password]
|
||||
MF_CASSANDRA_WRITER_DB_PORT: [Cassandra DB port]
|
||||
MF_CASSANDRA_WRITER_CONFIG_PATH: [Configuration file path with NATS subjects list]
|
||||
MF_CASSANDRA_WRITER_CONTENT_TYPE: [Message payload Content Type]
|
||||
MF_CASSANDRA_WRITER_TRANSFORMER: [Message transformer type]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
volume:
|
||||
- ./config.toml:/config.toml
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`cassandra-writer`](https://github.com/mainflux/mainflux/blob/master/docker/addons/cassandra-writer/docker-compose.yml#L30-L49) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -24,31 +24,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
influxdb-writer:
|
||||
image: mainflux/influxdb:[version]
|
||||
container_name: [instance name]
|
||||
expose:
|
||||
- [Service HTTP port]
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_INFLUX_WRITER_LOG_LEVEL: [Influx writer log level]
|
||||
MF_INFLUX_WRITER_PORT: [Service HTTP port]
|
||||
MF_INFLUX_WRITER_DB: [InfluxDB name]
|
||||
MF_INFLUX_WRITER_DB_HOST: [InfluxDB host]
|
||||
MF_INFLUX_WRITER_DB_PORT: [InfluxDB port]
|
||||
MF_INFLUX_WRITER_DB_USER: [InfluxDB admin user]
|
||||
MF_INFLUX_WRITER_DB_PASS: [InfluxDB admin password]
|
||||
MF_INFLUX_WRITER_CONFIG_PATH: [Configuration file path with NATS subjects list]
|
||||
MF_INFLUX_WRITER_CONTENT_TYPE: [Message payload Content Type]
|
||||
MF_INFLUX_WRITER_TRANSFORMER: [Message transformer type]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
volume:
|
||||
- ./subjects.yaml:/config/subjects.yaml
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`influxdb-writer`](https://github.com/mainflux/mainflux/blob/master/docker/addons/influxdb-writer/docker-compose.yml#L35-L58) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -22,32 +22,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
mongodb-writer:
|
||||
image: mainflux/mongodb-writer:[version]
|
||||
container_name: [instance name]
|
||||
depends_on:
|
||||
- mongodb
|
||||
- nats
|
||||
expose:
|
||||
- [Service HTTP port]
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_MONGO_WRITER_LOG_LEVEL: [MongoDB writer log level]
|
||||
MF_MONGO_WRITER_PORT: [Service HTTP port]
|
||||
MF_MONGO_WRITER_DB: [MongoDB name]
|
||||
MF_MONGO_WRITER_DB_HOST: [MongoDB host]
|
||||
MF_MONGO_WRITER_DB_PORT: [MongoDB port]
|
||||
MF_MONGO_WRITER_CONFIG_PATH: [Configuration file path with NATS subjects list]
|
||||
MF_MONGO_WRITER_CONTENT_TYPE: [Message payload Content Type]
|
||||
MF_MONGO_WRITER_TRANSFORMER: [Message transformer type]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
volume:
|
||||
- ./config.toml:/config.toml
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`mongodb-writer`](https://github.com/mainflux/mainflux/blob/master/docker/addons/mongodb-writer/docker-compose.yml#L36-L55) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -28,38 +28,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
postgres-writer:
|
||||
image: mainflux/postgres-writer:[version]
|
||||
container_name: [instance name]
|
||||
depends_on:
|
||||
- postgres
|
||||
- nats
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_POSTGRES_WRITER_LOG_LEVEL: [Service log level]
|
||||
MF_POSTGRES_WRITER_PORT: [Service HTTP port]
|
||||
MF_POSTGRES_WRITER_DB_HOST: [Postgres host]
|
||||
MF_POSTGRES_WRITER_DB_PORT: [Postgres port]
|
||||
MF_POSTGRES_WRITER_DB_USER: [Postgres user]
|
||||
MF_POSTGRES_WRITER_DB_PASS: [Postgres password]
|
||||
MF_POSTGRES_WRITER_DB: [Postgres database name]
|
||||
MF_POSTGRES_WRITER_DB_SSL_MODE: [Postgres SSL mode]
|
||||
MF_POSTGRES_WRITER_DB_SSL_CERT: [Postgres SSL cert]
|
||||
MF_POSTGRES_WRITER_DB_SSL_KEY: [Postgres SSL key]
|
||||
MF_POSTGRES_WRITER_DB_SSL_ROOT_CERT: [Postgres SSL Root cert]
|
||||
MF_POSTGRES_WRITER_CONFIG_PATH: [Configuration file path with NATS subjects list]
|
||||
MF_POSTGRES_WRITER_CONTENT_TYPE: [Message payload Content Type]
|
||||
MF_POSTGRES_WRITER_TRANSFORMER: [Message transformer type]
|
||||
ports:
|
||||
- 9104:9104
|
||||
networks:
|
||||
- docker_mainflux-base-net
|
||||
volume:
|
||||
- ./config.toml:/config.toml
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`postgres-writer`](https://github.com/mainflux/mainflux/blob/master/docker/addons/postgres-writer/docker-compose.yml#L34-L59) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -21,3 +21,4 @@ docker-compose -f docker/docker-compose.yml up
|
||||
docker-compose -f docker/addons/<path>/docker-compose.yml up
|
||||
```
|
||||
|
||||
To pull docker images from a specific release you need to change the value of `MF_RELEASE_TAG` in `.env` before running these commands.
|
||||
|
@ -30,7 +30,7 @@ services:
|
||||
- mainflux-bootstrap-db-volume:/var/lib/postgresql/data
|
||||
|
||||
bootstrap:
|
||||
image: mainflux/bootstrap:latest
|
||||
image: mainflux/bootstrap:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-bootstrap
|
||||
depends_on:
|
||||
- bootstrap-db
|
||||
|
@ -14,7 +14,7 @@ networks:
|
||||
|
||||
services:
|
||||
cassandra-reader:
|
||||
image: mainflux/cassandra-reader:latest
|
||||
image: mainflux/cassandra-reader:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-cassandra-reader
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -28,7 +28,7 @@ services:
|
||||
- mainflux-cassandra-volume:/var/lib/cassandra
|
||||
|
||||
cassandra-writer:
|
||||
image: mainflux/cassandra-writer:latest
|
||||
image: mainflux/cassandra-writer:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-cassandra-writer
|
||||
depends_on:
|
||||
- cassandra
|
||||
|
@ -31,7 +31,7 @@ services:
|
||||
- mainflux-certs-db-volume:/var/lib/postgresql/data
|
||||
|
||||
certs:
|
||||
image: mainflux/certs:latest
|
||||
image: mainflux/certs:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-certs
|
||||
depends_on:
|
||||
- certs-db
|
||||
|
@ -16,7 +16,7 @@ networks:
|
||||
|
||||
services:
|
||||
influxdb-reader:
|
||||
image: mainflux/influxdb-reader:latest
|
||||
image: mainflux/influxdb-reader:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-influxdb-reader
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -33,7 +33,7 @@ services:
|
||||
- mainflux-influxdb-volume:/var/lib/influxdb
|
||||
|
||||
influxdb-writer:
|
||||
image: mainflux/influxdb-writer:latest
|
||||
image: mainflux/influxdb-writer:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-influxdb-writer
|
||||
depends_on:
|
||||
- influxdb
|
||||
|
@ -21,7 +21,7 @@ services:
|
||||
- docker_mainflux-base-net
|
||||
|
||||
lora-adapter:
|
||||
image: mainflux/lora:latest
|
||||
image: mainflux/lora:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-lora
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -15,7 +15,7 @@ networks:
|
||||
|
||||
services:
|
||||
mongodb-reader:
|
||||
image: mainflux/mongodb-reader:latest
|
||||
image: mainflux/mongodb-reader:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-mongodb-reader
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -34,7 +34,7 @@ services:
|
||||
- mainflux-mongodb-configdb-volume:/data/configdb
|
||||
|
||||
mongodb-writer:
|
||||
image: mainflux/mongodb-writer:latest
|
||||
image: mainflux/mongodb-writer:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-mongodb-writer
|
||||
depends_on:
|
||||
- mongodb
|
||||
|
@ -27,7 +27,7 @@ services:
|
||||
- mainflux-opcua-redis-volume:/data
|
||||
|
||||
opcua-adapter:
|
||||
image: mainflux/opcua:latest
|
||||
image: mainflux/opcua:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-opcua
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -15,7 +15,7 @@ networks:
|
||||
|
||||
services:
|
||||
postgres-reader:
|
||||
image: mainflux/postgres-reader:latest
|
||||
image: mainflux/postgres-reader:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-postgres-reader
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -32,7 +32,7 @@ services:
|
||||
- mainflux-postgres-writer-volume:/var/lib/postgresql/data
|
||||
|
||||
postgres-writer:
|
||||
image: mainflux/postgres-writer:latest
|
||||
image: mainflux/postgres-writer:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-postgres-writer
|
||||
depends_on:
|
||||
- postgres
|
||||
|
@ -14,7 +14,7 @@ networks:
|
||||
|
||||
services:
|
||||
provision:
|
||||
image: mainflux/provision:latest
|
||||
image: mainflux/provision:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-provision
|
||||
restart: on-failure
|
||||
networks:
|
||||
|
@ -33,7 +33,7 @@ services:
|
||||
- mainflux-twins-db-configdb-volume:/data/configdb
|
||||
|
||||
twins:
|
||||
image: mainflux/twins:latest
|
||||
image: mainflux/twins:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-twins
|
||||
restart: on-failure
|
||||
environment:
|
||||
|
@ -19,7 +19,7 @@ volumes:
|
||||
|
||||
services:
|
||||
vault:
|
||||
image: vault:latest
|
||||
image: vault:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-vault
|
||||
ports:
|
||||
- ${MF_VAULT_PORT}:8200
|
||||
|
@ -69,7 +69,7 @@ services:
|
||||
- mainflux-auth-db-volume:/var/lib/postgresql/data
|
||||
|
||||
auth:
|
||||
image: mainflux/auth:latest
|
||||
image: mainflux/auth:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-auth
|
||||
depends_on:
|
||||
- auth-db
|
||||
@ -107,7 +107,7 @@ services:
|
||||
- mainflux-users-db-volume:/var/lib/postgresql/data
|
||||
|
||||
users:
|
||||
image: mainflux/users:latest
|
||||
image: mainflux/users:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-users
|
||||
volumes:
|
||||
- ./users/emailer/templates/${MF_EMAIL_TEMPLATE}:/${MF_EMAIL_TEMPLATE}
|
||||
@ -165,7 +165,7 @@ services:
|
||||
- mainflux-auth-redis-volume:/data
|
||||
|
||||
things:
|
||||
image: mainflux/things:latest
|
||||
image: mainflux/things:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-things
|
||||
depends_on:
|
||||
- things-db
|
||||
@ -205,7 +205,7 @@ services:
|
||||
- mainflux-base-net
|
||||
|
||||
vernemq:
|
||||
image: mainflux/vernemq:latest
|
||||
image: mainflux/vernemq:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-vernemq
|
||||
restart: on-failure
|
||||
environment:
|
||||
@ -217,7 +217,7 @@ services:
|
||||
- mainflux-mqtt-broker-volume:/var/lib/vernemq
|
||||
|
||||
mqtt-adapter:
|
||||
image: mainflux/mqtt:latest
|
||||
image: mainflux/mqtt:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-mqtt
|
||||
depends_on:
|
||||
- vernemq
|
||||
@ -243,7 +243,7 @@ services:
|
||||
- mainflux-base-net
|
||||
|
||||
http-adapter:
|
||||
image: mainflux/http:latest
|
||||
image: mainflux/http:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-http
|
||||
depends_on:
|
||||
- things
|
||||
@ -271,7 +271,7 @@ services:
|
||||
- mainflux-es-redis-volume:/data
|
||||
|
||||
coap-adapter:
|
||||
image: mainflux/coap:latest
|
||||
image: mainflux/coap:${MF_RELEASE_TAG}
|
||||
container_name: mainflux-coap
|
||||
depends_on:
|
||||
- things
|
||||
|
@ -21,26 +21,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service is distributed as Docker container. The following snippet provides
|
||||
a compose file template that can be used to deploy the service container locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
adapter:
|
||||
image: mainflux/http:[version]
|
||||
container_name: [instance name]
|
||||
ports:
|
||||
- [host machine port]:8180
|
||||
environment:
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_HTTP_ADAPTER_LOG_LEVEL: [HTTP Adapter Log Level]
|
||||
MF_HTTP_ADAPTER_PORT: [Service HTTP port]
|
||||
MF_HTTP_ADAPTER_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_THINGS_AUTH_GRPC_URL: [Things service Auth gRPC URL]
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: [Things service Auth gRPC request timeout in seconds]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`http-adapter`](https://github.com/mainflux/mainflux/blob/master/docker/docker-compose.yml#L245-L262) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -27,27 +27,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service is distributed as Docker container. The following snippet provides
|
||||
a compose file template that can be used to deploy the service container locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
adapter:
|
||||
image: mainflux/lora:[version]
|
||||
container_name: [instance name]
|
||||
environment:
|
||||
MF_LORA_ADAPTER_LOG_LEVEL: [Service Log Level]
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_LORA_ADAPTER_MESSAGES_URL: [LoRa Server MQTT broker URL]
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_URL: [Route-map database URL]
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_PASS: [Route-map database password]
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_DB: [Route-map instance]
|
||||
MF_THINGS_ES_URL: [Things event source URL]
|
||||
MF_THINGS_ES_PASS: [Things event source password]
|
||||
MF_THINGS_ES_DB: [Things event source DB instance]
|
||||
MF_LORA_ADAPTER_EVENT_CONSUMER: [Service event consumer name]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`lora-adapter`](https://github.com/mainflux/mainflux/blob/master/docker/addons/lora-adapter/docker-compose.yml#L23-L37) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -36,39 +36,10 @@ default values.
|
||||
| MF_AUTH_CACHE_PASS | Auth cache password | "" |
|
||||
| MF_AUTH_CACHE_DB | Auth cache database | "0" |
|
||||
|
||||
|
||||
## Deployment
|
||||
|
||||
The service is distributed as Docker container. The following snippet provides
|
||||
a compose file template that can be used to deploy the service container locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
mqtt-adapter:
|
||||
image: mainflux/mqtt:latest
|
||||
container_name: mainflux-mqtt
|
||||
depends_on:
|
||||
- vernemq
|
||||
- things
|
||||
- nats
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_MQTT_ADAPTER_LOG_LEVEL: ${MF_MQTT_ADAPTER_LOG_LEVEL}
|
||||
MF_MQTT_ADAPTER_MQTT_PORT: ${MF_MQTT_ADAPTER_MQTT_PORT}
|
||||
MF_MQTT_ADAPTER_WS_PORT: ${MF_MQTT_ADAPTER_WS_PORT}
|
||||
MF_MQTT_ADAPTER_ES_URL: es-redis:${MF_REDIS_TCP_PORT}
|
||||
MF_NATS_URL: ${MF_NATS_URL}
|
||||
MF_MQTT_ADAPTER_MQTT_TARGET_HOST: vernemq
|
||||
MF_MQTT_ADAPTER_MQTT_TARGET_PORT: ${MF_MQTT_BROKER_PORT}
|
||||
MF_MQTT_ADAPTER_MQTT_TARGET_HEALTH_CHECK: http://vernemq:8888/health
|
||||
MF_MQTT_ADAPTER_WS_TARGET_HOST: vernemq
|
||||
MF_MQTT_ADAPTER_WS_TARGET_PORT: ${MF_MQTT_BROKER_WS_PORT}
|
||||
MF_JAEGER_URL: ${MF_JAEGER_URL}
|
||||
MF_THINGS_AUTH_GRPC_URL: ${MF_THINGS_AUTH_GRPC_URL}
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: ${MF_THINGS_AUTH_GRPC_TIMEOUT}
|
||||
MF_AUTH_CACHE: things-redis:${MF_REDIS_TCP_PORT}
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`mqtt-adapter`](https://github.com/mainflux/mainflux/blob/master/docker/docker-compose.yml#L219-L243) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -31,32 +31,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service is distributed as Docker container. The following snippet provides
|
||||
a compose file template that can be used to deploy the service container locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
adapter:
|
||||
image: mainflux/opcua:[version]
|
||||
container_name: [instance name]
|
||||
environment:
|
||||
MF_OPCUA_ADAPTER_HTTP_PORT: [Service HTTP port]
|
||||
MF_OPCUA_ADAPTER_LOG_LEVEL: [Service Log Level]
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_OPCUA_ADAPTER_INTERVAL_MS: [OPC-UA Server Interval (milliseconds)]
|
||||
MF_OPCUA_ADAPTER_POLICY: [OPC-UA Server Policy]
|
||||
MF_OPCUA_ADAPTER_MODE: [OPC-UA Server Mode]
|
||||
MF_OPCUA_ADAPTER_CERT_FILE: [OPC-UA Server Certificate file]
|
||||
MF_OPCUA_ADAPTER_KEY_FILE: [OPC-UA Server Key file]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_URL: [Route-map database URL]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_PASS: [Route-map database password]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_DB: [Route-map instance name]
|
||||
MF_THINGS_ES_URL: [Things event source URL]
|
||||
MF_THINGS_ES_PASS: [Things event source password]
|
||||
MF_THINGS_ES_DB: [Things event source DB instance]
|
||||
MF_OPCUA_ADAPTER_EVENT_CONSUMER: [Service event consumer name]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`opcua-adapter`](https://github.com/mainflux/mainflux/blob/master/docker/addons/opcua-adapter/docker-compose.yml#L29-L53) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -22,30 +22,30 @@ default values.
|
||||
| MF_PROVISION_USER | User (email) for accessing Mainflux | user@example.com |
|
||||
| MF_PROVISION_PASS | Mainflux password | user123 |
|
||||
| MF_PROVISION_API_KEY | Mainflux authentication token | |
|
||||
| MF_PROVISION_CONFIG_FILE | Provision config file | config.toml |
|
||||
| MF_PROVISION_CONFIG_FILE | Provision config file | config.toml |
|
||||
| MF_PROVISION_HTTP_PORT | Provision service listening port | 8091 |
|
||||
| MF_PROVISION_ENV_CLIENTS_TLS | Mainflux SDK TLS verification | false |
|
||||
| MF_PROVISION_SERVER_CERT | Mainflux gRPC secure server cert | |
|
||||
| MF_PROVISION_SERVER_KEY | Mainflux gRPC secure server key | |
|
||||
| MF_PROVISION_SERVER_KEY | Mainflux gRPC secure server key | |
|
||||
| MF_PROVISION_MQTT_URL | Mainflux MQTT adapter URL | http://localhost:1883 |
|
||||
| MF_PROVISION_USERS_LOCATION | Users service URL | http://locahost |
|
||||
| MF_PROVISION_THINGS_LOCATION | Things service URL | http://localhost |
|
||||
| MF_PROVISION_LOG_LEVEL | Service log level | http://localhost |
|
||||
| MF_PROVISION_HTTP_PORT | Service listening port | 8091 |
|
||||
| MF_PROVISION_USER | Mainflux user username | test@example.com |
|
||||
| MF_PROVISION_PASS | Mainflux user password | password |
|
||||
| MF_PROVISION_BS_SVC_URL | Mainflux Bootstrap service URL | http://localhost/things/configs |
|
||||
| MF_PROVISION_BS_SVC_WHITELIST_URL | Mainflux Bootstrap service whitelist URL | http://localhost/things/state |
|
||||
| MF_PROVISION_CERTS_SVC_URL | Certificats service URL | http://localhost/certs |
|
||||
| MF_PROVISION_X509_PROVISIONING | Should X509 client cert be provisioned | false |
|
||||
| MF_PROVISION_BS_CONFIG_PROVISIONING | Should thing config be saved in Bootstrap service | true |
|
||||
| MF_PROVISION_BS_AUTO_WHITELIST | Should thing be auto whitelisted | true |
|
||||
| MF_PROVISION_BS_CONTENT | Bootstrap service configs content, JSON format | {} |
|
||||
| MF_PROVISION_CERTS_CA | Mainflux CA cert for generating certificates | "" |
|
||||
| MF_PROVISION_CERTS_CA_KEY | Mainflux CA cert private key | "" |
|
||||
| MF_PROVISION_CERTS_RSA_BITS | Certificate RSA bits parameter | 4096 |
|
||||
| MF_PROVISION_CERTS_HOURS_VALID | Number of days that certificate is valid | "2400h" |
|
||||
| MF_PROVISION_MQTT_URL | Mainflux MQTT adapter URL | http://localhost:1883 |
|
||||
| MF_PROVISION_USERS_LOCATION | Users service URL | http://locahost |
|
||||
| MF_PROVISION_THINGS_LOCATION | Things service URL | http://localhost |
|
||||
| MF_PROVISION_LOG_LEVEL | Service log level | http://localhost |
|
||||
| MF_PROVISION_HTTP_PORT | Service listening port | 8091 |
|
||||
| MF_PROVISION_USER | Mainflux user username | test@example.com |
|
||||
| MF_PROVISION_PASS | Mainflux user password | password |
|
||||
| MF_PROVISION_BS_SVC_URL | Mainflux Bootstrap service URL | http://localhost/things/configs |
|
||||
| MF_PROVISION_BS_SVC_WHITELIST_URL | Mainflux Bootstrap service whitelist URL | http://localhost/things/state |
|
||||
| MF_PROVISION_CERTS_SVC_URL | Certificats service URL | http://localhost/certs |
|
||||
| MF_PROVISION_X509_PROVISIONING | Should X509 client cert be provisioned | false |
|
||||
| MF_PROVISION_BS_CONFIG_PROVISIONING | Should thing config be saved in Bootstrap service | true |
|
||||
| MF_PROVISION_BS_AUTO_WHITELIST | Should thing be auto whitelisted | true |
|
||||
| MF_PROVISION_BS_CONTENT | Bootstrap service configs content, JSON format | {} |
|
||||
| MF_PROVISION_CERTS_CA | Mainflux CA cert for generating certificates | "" |
|
||||
| MF_PROVISION_CERTS_CA_KEY | Mainflux CA cert private key | "" |
|
||||
| MF_PROVISION_CERTS_RSA_BITS | Certificate RSA bits parameter | 4096 |
|
||||
| MF_PROVISION_CERTS_HOURS_VALID | Number of days that certificate is valid | "2400h" |
|
||||
|
||||
By default, call to `/mapping` endpoint will create one thing and two channels (`control` and `data`) and connect it. If there is a requirement for different provision layout we can use [config](docker/configs/config.toml) file in addition to environment variables.
|
||||
|
||||
|
@ -27,31 +27,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
cassandra-reader:
|
||||
image: mainflux/cassandra-reader:[version]
|
||||
container_name: [instance name]
|
||||
expose:
|
||||
- [Service HTTP port]
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_CASSANDRA_READER_PORT: [Service HTTP port]
|
||||
MF_CASSANDRA_READER_DB_CLUSTER: [Cassandra cluster comma separated addresses]
|
||||
MF_CASSANDRA_READER_DB_KEYSPACE: [Cassandra keyspace name]
|
||||
MF_CASSANDRA_READER_DB_USER: [Cassandra DB username]
|
||||
MF_CASSANDRA_READER_DB_PASS: [Cassandra DB password]
|
||||
MF_CASSANDRA_READER_DB_PORT: [Cassandra DB port]
|
||||
MF_CASSANDRA_READER_CLIENT_TLS: [Flag that indicates if TLS should be turned on]
|
||||
MF_CASSANDRA_READER_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_CASSANDRA_READER_SERVER_CERT: [String path to server cert in pem format]
|
||||
MF_CASSANDRA_READER_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_THINGS_AUTH_GRPC_URL: [Things service Auth gRPC URL]
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: [Things service Auth gRPC request timeout in seconds]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`cassandra-reader`](https://github.com/mainflux/mainflux/blob/master/docker/addons/cassandra-reader/docker-compose.yml#L15-L35) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -26,29 +26,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
influxdb-reader:
|
||||
image: mainflux/influxdb-reader:[version]
|
||||
container_name: [instance name]
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_INFLUX_READER_PORT: [Service HTTP port]
|
||||
MF_INFLUX_READER_DB: [InfluxDB name]
|
||||
MF_INFLUX_READER_DB_HOST: [InfluxDB host]
|
||||
MF_INFLUX_READER_DB_PORT: [InfluxDB port]
|
||||
MF_INFLUX_READER_DB_USER: [InfluxDB admin user]
|
||||
MF_INFLUX_READER_DB_PASS: [InfluxDB admin password]
|
||||
MF_INFLUX_READER_CLIENT_TLS: [Flag that indicates if TLS should be turned on]
|
||||
MF_INFLUX_READER_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_INFLUX_READER_SERVER_CERT: [String path to server cert in pem format]
|
||||
MF_INFLUX_READER_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_THINGS_AUTH_GRPC_URL: [Things service Auth gRPC URL]
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: [Things service Auth gRPC request timeout in seconds]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`influxdb-reader`](https://github.com/mainflux/mainflux/blob/master/docker/addons/influxdb-reader/docker-compose.yml#L17-L40) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -24,29 +24,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
mongodb-reader:
|
||||
image: mainflux/mongodb-reader:[version]
|
||||
container_name: [instance name]
|
||||
expose:
|
||||
- [Service HTTP port]
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_MONGO_READER_PORT: [Service HTTP port]
|
||||
MF_MONGO_READER_DB: [MongoDB name]
|
||||
MF_MONGO_READER_DB_HOST: [MongoDB host]
|
||||
MF_MONGO_READER_DB_PORT: [MongoDB port]
|
||||
MF_MONGO_READER_CLIENT_TLS: [Flag that indicates if TLS should be turned on]
|
||||
MF_MONGO_READER_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_MONGO_READER_SERVER_CERT: [String path to server cert in pem format]
|
||||
MF_MONGO_READER_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_THINGS_AUTH_GRPC_URL: [Things service Auth gRPC URL]
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: [Things service Auth gRPC request timeout in seconds]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`mongodb-reader`](https://github.com/mainflux/mainflux/blob/master/docker/addons/mongodb-reader/docker-compose.yml#L16-L37) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -29,36 +29,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
postgres-writer:
|
||||
image: mainflux/postgres-writer:[version]
|
||||
container_name: [instance name]
|
||||
depends_on:
|
||||
- postgres
|
||||
- nats
|
||||
restart: on-failure
|
||||
environment:
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_POSTGRES_READER_LOG_LEVEL: [Service log level]
|
||||
MF_POSTGRES_READER_PORT: [Service HTTP port]
|
||||
MF_POSTGRES_READER_DB_HOST: [Postgres host]
|
||||
MF_POSTGRES_READER_DB_PORT: [Postgres port]
|
||||
MF_POSTGRES_READER_DB_USER: [Postgres user]
|
||||
MF_POSTGRES_READER_DB_PASS: [Postgres password]
|
||||
MF_POSTGRES_READER_DB: [Postgres database name]
|
||||
MF_POSTGRES_READER_DB_SSL_MODE: [Postgres SSL mode]
|
||||
MF_POSTGRES_READER_DB_SSL_CERT: [Postgres SSL cert]
|
||||
MF_POSTGRES_READER_DB_SSL_KEY: [Postgres SSL key]
|
||||
MF_POSTGRES_READER_DB_SSL_ROOT_CERT: [Postgres SSL Root cert]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_THINGS_AUTH_GRPC_URL: [Things service Auth gRPC URL]
|
||||
MF_THINGS_AUTH_GRPC_TIMEOUT: [Things service Auth gRPC request timeout in seconds]
|
||||
ports:
|
||||
- 8180:8180
|
||||
networks:
|
||||
- docker_mainflux-base-net
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`postgres-reader`](https://github.com/mainflux/mainflux/blob/master/docker/addons/postgres-reader/docker-compose.yml#L17-L41) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service, execute the following shell script:
|
||||
|
||||
|
@ -51,47 +51,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service itself is distributed as Docker container. The following snippet
|
||||
provides a compose file template that can be used to deploy the service container
|
||||
locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
things:
|
||||
image: mainflux/things:[version]
|
||||
container_name: [instance name]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
environment:
|
||||
MF_THINGS_LOG_LEVEL: [Things log level]
|
||||
MF_THINGS_DB_HOST: [Database host address]
|
||||
MF_THINGS_DB_PORT: [Database host port]
|
||||
MF_THINGS_DB_USER: [Database user]
|
||||
MF_THINGS_DB_PASS: [Database password]
|
||||
MF_THINGS_DB: [Name of the database used by the service]
|
||||
MF_THINGS_DB_SSL_MODE: [SSL mode to connect to the database with]
|
||||
MF_THINGS_DB_SSL_CERT: [Path to the PEM encoded certificate file]
|
||||
MF_THINGS_DB_SSL_KEY: [Path to the PEM encoded key file]
|
||||
MF_THINGS_DB_SSL_ROOT_CERT: [Path to the PEM encoded root certificate file]
|
||||
MF_THINGS_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_THINGS_CACHE_URL: [Cache database URL]
|
||||
MF_THINGS_CACHE_PASS: [Cache database password]
|
||||
MF_THINGS_CACHE_DB: [Cache instance that should be used]
|
||||
MF_THINGS_ES_URL: [Event store URL]
|
||||
MF_THINGS_ES_PASS: [Event store password]
|
||||
MF_THINGS_ES_DB: [Event store instance name]
|
||||
MF_THINGS_HTTP_PORT: [Things service HTTP port]
|
||||
MF_THINGS_AUTH_HTTP_PORT: [Things service Auth HTTP port]
|
||||
MF_THINGS_AUTH_GRPC_PORT: [Things service Auth gRPC port]
|
||||
MF_THINGS_SERVER_CERT: [String path to server cert in pem format]
|
||||
MF_THINGS_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_THINGS_SINGLE_USER_EMAIL: [User email for single user mode (no gRPC communication with users)]
|
||||
MF_THINGS_SINGLE_USER_TOKEN: [User token for single user mode that should be passed in auth header]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_AUTH_GRPC_URL: [Auth service gRPC URL]
|
||||
MF_AUTH_GRPC_TIMEOUT: [Auth service gRPC request timeout in seconds]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`things `](https://github.com/mainflux/mainflux/blob/master/docker/docker-compose.yml#L167-L194) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
|
@ -37,39 +37,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service itself is distributed as Docker container. The following snippet
|
||||
provides a compose file template that can be used to deploy the service
|
||||
container locally:
|
||||
|
||||
```yaml
|
||||
version: "3"
|
||||
services:
|
||||
twins:
|
||||
image: mainflux/twins:[version]
|
||||
container_name: [instance name]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
environment:
|
||||
MF_TWINS_LOG_LEVEL: [Twins log level]
|
||||
MF_TWINS_HTTP_PORT: [Service HTTP port]
|
||||
MF_TWINS_SERVER_CERT: [String path to server cert in pem format]
|
||||
MF_TWINS_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_TWINS_DB: [Database name]
|
||||
MF_TWINS_DB_HOST: [Database host address]
|
||||
MF_TWINS_DB_PORT: [Database host port]
|
||||
MF_TWINS_SINGLE_USER_EMAIL: [User email for single user mode]
|
||||
MF_TWINS_SINGLE_USER_TOKEN: [User token for single user mode]
|
||||
MF_TWINS_CLIENT_TLS: [Flag that indicates if TLS should be turned on]
|
||||
MF_TWINS_CA_CERTS: [Path to trusted CAs in PEM format]
|
||||
MF_TWINS_CHANNEL_ID: [NATS notifications channel ID]
|
||||
MF_NATS_URL: [Mainflux NATS broker URL]
|
||||
MF_AUTH_GRPC_URL: [Auth service gRPC URL]
|
||||
MF_AUTH_GRPC_TIMEOUT: [Auth service gRPC request timeout in seconds]
|
||||
MF_TWINS_ES_URL: [Event store URL]
|
||||
MF_TWINS_ES_PASS: [Event store password]
|
||||
MF_TWINS_ES_DB: [Event store instance name]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`twins`](https://github.com/mainflux/mainflux/blob/master/docker/addons/twins/docker-compose.yml#L35-L58) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell
|
||||
script:
|
||||
|
@ -46,43 +46,8 @@ default values.
|
||||
|
||||
## Deployment
|
||||
|
||||
The service itself is distributed as Docker container. The following snippet
|
||||
provides a compose file template that can be used to deploy the service container
|
||||
locally:
|
||||
|
||||
```yaml
|
||||
version: "3.7"
|
||||
services:
|
||||
users:
|
||||
image: mainflux/users:[version]
|
||||
container_name: [instance name]
|
||||
ports:
|
||||
- [host machine port]:[configured HTTP port]
|
||||
environment:
|
||||
MF_USERS_LOG_LEVEL: [Users log level]
|
||||
MF_USERS_DB_HOST: [Database host address]
|
||||
MF_USERS_DB_PORT: [Database host port]
|
||||
MF_USERS_DB_USER: [Database user]
|
||||
MF_USERS_DB_PASS: [Database password]
|
||||
MF_USERS_DB: [Name of the database used by the service]
|
||||
MF_USERS_DB_SSL_MODE: [SSL mode to connect to the database with]
|
||||
MF_USERS_DB_SSL_CERT: [Path to the PEM encoded certificate file]
|
||||
MF_USERS_DB_SSL_KEY: [Path to the PEM encoded key file]
|
||||
MF_USERS_DB_SSL_ROOT_CERT: [Path to the PEM encoded root certificate file]
|
||||
MF_USERS_HTTP_PORT: [Service HTTP port]
|
||||
MF_USERS_SERVER_CERT: [String path to server certificate in pem format]
|
||||
MF_USERS_SERVER_KEY: [String path to server key in pem format]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_EMAIL_DRIVER: [Mail server driver smtp]
|
||||
MF_EMAIL_HOST: [MF_EMAIL_HOST]
|
||||
MF_EMAIL_PORT: [MF_EMAIL_PORT]
|
||||
MF_EMAIL_USERNAME: [MF_EMAIL_USERNAME]
|
||||
MF_EMAIL_PASSWORD: [MF_EMAIL_PASSWORD]
|
||||
MF_EMAIL_FROM_ADDRESS: [MF_EMAIL_FROM_ADDRESS]
|
||||
MF_EMAIL_FROM_NAME: [MF_EMAIL_FROM_NAME]
|
||||
MF_EMAIL_TEMPLATE: [MF_EMAIL_TEMPLATE]
|
||||
MF_TOKEN_RESET_ENDPOINT: [MF_TOKEN_RESET_ENDPOINT]
|
||||
```
|
||||
The service itself is distributed as Docker container. Check the [`users`](https://github.com/mainflux/mainflux/blob/master/docker/docker-compose.yml#L109-L143) service section in
|
||||
docker-compose to see how service is deployed.
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
|
||||
@ -99,7 +64,30 @@ make users
|
||||
make install
|
||||
|
||||
# set the environment variables and run the service
|
||||
MF_USERS_LOG_LEVEL=[Users log level] MF_USERS_DB_HOST=[Database host address] MF_USERS_DB_PORT=[Database host port] MF_USERS_DB_USER=[Database user] MF_USERS_DB_PASS=[Database password] MF_USERS_DB=[Name of the database used by the service] MF_USERS_DB_SSL_MODE=[SSL mode to connect to the database with] MF_USERS_DB_SSL_CERT=[Path to the PEM encoded certificate file] MF_USERS_DB_SSL_KEY=[Path to the PEM encoded key file] MF_USERS_DB_SSL_ROOT_CERT=[Path to the PEM encoded root certificate file] MF_USERS_HTTP_PORT=[Service HTTP port] MF_USERS_SERVER_CERT=[Path to server certificate] MF_USERS_SERVER_KEY=[Path to server key] MF_JAEGER_URL=[Jaeger server URL] MF_EMAIL_DRIVER=[Mail server driver smtp] MF_EMAIL_HOST=[Mail server host] MF_EMAIL_PORT=[Mail server port] MF_EMAIL_USERNAME=[Mail server username] MF_EMAIL_PASSWORD=[Mail server password] MF_EMAIL_FROM_ADDRESS=[Email from address] MF_EMAIL_FROM_NAME=[Email from name] MF_EMAIL_TEMPLATE=[Email template file] MF_TOKEN_RESET_ENDPOINT=[Password reset token endpoint] $GOBIN/mainflux-users
|
||||
MF_USERS_LOG_LEVEL=[Users log level] \
|
||||
MF_USERS_DB_HOST=[Database host address] \
|
||||
MF_USERS_DB_PORT=[Database host port] \
|
||||
MF_USERS_DB_USER=[Database user] \
|
||||
MF_USERS_DB_PASS=[Database password] \
|
||||
MF_USERS_DB=[Name of the database used by the service] \
|
||||
MF_USERS_DB_SSL_MODE=[SSL mode to connect to the database with] \
|
||||
MF_USERS_DB_SSL_CERT=[Path to the PEM encoded certificate file] \
|
||||
MF_USERS_DB_SSL_KEY=[Path to the PEM encoded key file] \
|
||||
MF_USERS_DB_SSL_ROOT_CERT=[Path to the PEM encoded root certificate file] \
|
||||
MF_USERS_HTTP_PORT=[Service HTTP port] \
|
||||
MF_USERS_SERVER_CERT=[Path to server certificate] \
|
||||
MF_USERS_SERVER_KEY=[Path to server key] \
|
||||
MF_JAEGER_URL=[Jaeger server URL] \
|
||||
MF_EMAIL_DRIVER=[Mail server driver smtp] \
|
||||
MF_EMAIL_HOST=[Mail server host] \
|
||||
MF_EMAIL_PORT=[Mail server port] \
|
||||
MF_EMAIL_USERNAME=[Mail server username] \
|
||||
MF_EMAIL_PASSWORD=[Mail server password] \
|
||||
MF_EMAIL_FROM_ADDRESS=[Email from address] \
|
||||
MF_EMAIL_FROM_NAME=[Email from name] \
|
||||
MF_EMAIL_TEMPLATE=[Email template file] \
|
||||
MF_TOKEN_RESET_ENDPOINT=[Password reset token endpoint] \
|
||||
$GOBIN/mainflux-users
|
||||
```
|
||||
|
||||
If `MF_EMAIL_TEMPLATE` doesn't point to any file service will function but password reset functionality will not work.
|
||||
|
Loading…
x
Reference in New Issue
Block a user