Skip to main content

Container Configuration

beaver-iot-web

Environment Variables

NameDefaultDescription
BEAVER_IOT_API_HOST172.17.0.1Destination address for Nginx HTTP proxy, i.e., the backend service's IP or FQDN
BEAVER_IOT_API_PORT9200HTTP port number for the API service
BEAVER_IOT_WEBSOCKET_PORT9201WebSocket port number for the API service

Ports

PortDescription
80HTTP service port for web access

Files

PathDescription
/web/Directory for web files
/etc/nginx/nginx.confMain configuration file for Nginx
/etc/nginx/conf.d/Directory for additional Nginx configuration files
/etc/nginx/conf.d/default.confDefault HTTP server configuration file for Nginx

beaver-iot-api

Environment Variables

NameDefaultDescription
JAVA_OPTSJVM configuration parameters
SPRING_OPTSSpring configuration parameters
DB_TYPEh2Database type, options: postgres, h2
SPRING_H2_CONSOLE_ENABLEDfalseEnable H2 console, options: true, false
SPRING_H2_CONSOLE_SETTINGS_WEB_ALLOW_OTHERSfalseAllow access from other hosts, options: true, false
SPRING_DATASOURCE_URLjdbc:h2:file:~/beaver-iot/h2/beaver;
AUTO_SERVER=TRUE
JDBC connection for the database
SPRING_DATASOURCE_USERNAMEsaDatabase username
SPRING_DATASOURCE_PASSWORDDatabase password
SPRING_DATASOURCE_DRIVER_CLASS_NAMEorg.h2.DriverDatabase driver class name, options: org.h2.Driver, org.postgresql.Driver
CLUSTER_ENABLEDfalseEnable cluster mode.
REDIS_HOSTRedis server host name or IP address.
REDIS_PORT6379Redis server port
REDIS_PASSWORDRedis password
REDIS_SSLfalseEnable SSL/TLS for Redis connection.
REDIS_DB0Redis Database id.
MQTT_BROKER_HOSTMQTT Broker host name or IP address.
MQTT_BROKER_MQTT_PORT1883MQTT Broker TCP port.
MQTT_BROKER_MQTTS_PORT8883MQTT Broker SSL/TLS port.
MQTT_BROKER_WS_PORT8083MQTT Broker websocket port.
MQTT_BROKER_WSS_PORT8084MQTT Broker websocket secure port.
MQTT_BROKER_WS_PATH/mqttMQTT Broker websocket path.
MQTT_EMQX_INTERNAL_MQTT_ENDPOINTtcp://${MQTT_BROKER_HOST}:1883EMQX MQTT endpoint. Used to bridge MQTT messages with the Beaver-IoT API server. Note: EMQX configuration only takes effect in cluster mode.
MQTT_EMQX_INTERNAL_MQTT_USERNAMEEMQX MQTT username. Subscription and publish permissions for all topics are required.
MQTT_EMQX_INTERNAL_MQTT_PASSWORDEMQX MQTT password.
MQTT_EMQX_INTERNAL_REST_API_ENDPOINThttp://${MQTT_BROKER_HOST}:18083EMQX REST API endpoint.
MQTT_EMQX_INTERNAL_REST_API_USERNAMEEMQX REST API key.
MQTT_EMQX_INTERNAL_REST_API_PASSWORDEMQX REST API secret key.

Ports

PortDescription
1883Built-in MQTT broker port for MQTT connections
9200HTTP service port for API requests
9201WebSocket service port for WebSocket connections

Files

PathDescription
/root/beaver-iot/logs/Directory for API service log files
/root/beaver-iot/integrations/Directory for Beaver IoT integrations
/root/beaver-iot/h2/Directory for H2 database storage

beaver-iot

Environment Variables

NameDefaultDescription
BEAVER_IOT_API_HOSTlocalhostDestination address for Nginx HTTP proxy, i.e., the backend service's IP or FQDN
BEAVER_IOT_API_PORT9200HTTP port number for the API service
BEAVER_IOT_WEBSOCKET_PORT9201WebSocket port number for the API service
JAVA_OPTSJVM configuration parameters
SPRING_OPTSSpring configuration parameters
DB_TYPEh2Database type, options: postgres, h2
SPRING_H2_CONSOLE_ENABLEDfalseEnable H2 console, options: true, false
SPRING_H2_CONSOLE_SETTINGS_WEB_ALLOW_OTHERSfalseAllow access from other hosts, options: true, false
SPRING_DATASOURCE_URLjdbc:h2:file:~/beaver-iot/h2/beaver;
AUTO_SERVER=TRUE
JDBC connection for the database
SPRING_DATASOURCE_USERNAMEsaDatabase username
SPRING_DATASOURCE_PASSWORDDatabase password
SPRING_DATASOURCE_DRIVER_CLASS_NAMEorg.h2.DriverDatabase driver class name, options: org.h2.Driver, org.postgresql.Driver
CLUSTER_ENABLEDfalseEnable cluster mode.
REDIS_HOSTRedis server host name or IP address.
REDIS_PORT6379Redis server port
REDIS_PASSWORDRedis password
REDIS_SSLfalseEnable SSL/TLS for Redis connection.
REDIS_DB0Redis Database id.
MQTT_BROKER_HOSTMQTT Broker host name or IP address.
MQTT_BROKER_MQTT_PORT1883MQTT Broker TCP port.
MQTT_BROKER_MQTTS_PORT8883MQTT Broker SSL/TLS port.
MQTT_BROKER_WS_PORT8083MQTT Broker websocket port.
MQTT_BROKER_WSS_PORT8084MQTT Broker websocket secure port.
MQTT_BROKER_WS_PATH/mqttMQTT Broker websocket path.
MQTT_EMQX_INTERNAL_MQTT_ENDPOINTtcp://${MQTT_BROKER_HOST}:1883EMQX MQTT endpoint. Used to bridge MQTT messages with the Beaver-IoT API server. Note: EMQX configuration only takes effect in cluster mode.
MQTT_EMQX_INTERNAL_MQTT_USERNAMEEMQX MQTT username. Subscription and publish permissions for all topics are required.
MQTT_EMQX_INTERNAL_MQTT_PASSWORDEMQX MQTT password.
MQTT_EMQX_INTERNAL_REST_API_ENDPOINThttp://${MQTT_BROKER_HOST}:18083EMQX REST API endpoint.
MQTT_EMQX_INTERNAL_REST_API_USERNAMEEMQX REST API key.
MQTT_EMQX_INTERNAL_REST_API_PASSWORDEMQX REST API secret key.

Ports

PortDescription
80Nginx HTTP port for web access and API requests
1883Built-in MQTT broker port for MQTT connections
9200API service HTTP port for API requests (bypassing Nginx)
9201API service WebSocket port for WebSocket connections (bypassing Nginx)

Files

PathDescription
/web/Directory for web files
/etc/nginx/nginx.confMain configuration file for Nginx
/etc/nginx/conf.d/Directory for additional Nginx configuration files
/etc/nginx/conf.d/default.confDefault HTTP server configuration file for Nginx
/root/beaver-iot/logs/Directory for API service log files
/root/beaver-iot/integrations/Directory for Beaver IoT integrations
/root/beaver-iot/h2/Directory for H2 database storage