captainVersion: 4 services: $$cap_appname-db: image: influxdb:$$cap_influx_version volumes: - $$cap_appname-db-data:/var/lib/influxdb restart: always ports: - $$cap_influxdb_port:8086 - $$cap_graphite_port:2003 environment: INFLUXDB_DB: $$cap_influx_db INFLUXDB_HTTP_AUTH_ENABLED: $$cap_influx_auth_enabled INFLUXDB_ADMIN_USER: $$cap_influx_admin_user INFLUXDB_ADMIN_PASSWORD: $$cap_influx_admin_password INFLUXDB_USER: $$cap_influx_user INFLUXDB_USER_PASSWORD: $$cap_influx_user_password INFLUXDB_READ_USER: $$cap_influx_read_user INFLUXDB_READ_USER_PASSWORD: $$cap_influx_read_user_password INFLUXDB_WRITE_USER: $$cap_influx_write_user INFLUXDB_WRITE_USER_PASSWORD: $$cap_influx_write_password caproverExtra: notExposeAsWebApp: 'true' caproverOneClickApp: variables: - id: $$cap_influx_version label: InfluxDb Version defaultValue: '1.8' description: Check out their Docker page for the valid tags https://hub.docker.com/r/library/influxdb/tags/ validRegex: /^([^\s^\/])+$/ - label: Influxdb port description: The port to make queries to influxdb. defaultValue: '8086' id: $$cap_influxdb_port - label: Graphite port description: The port for graphite protocol defaultValue: '2003' id: $$cap_graphite_port - label: Influx DB description: Automatically initializes a database with the name of this environment variable. defaultValue: '' id: $$cap_influx_db - label: Auth enabled (true/false) description: Enables authentication. Either this must be set or auth-enabled = true must be set within the configuration file for any authentication related options below to work. defaultValue: '' id: $$cap_influx_auth_enabled - label: Admin User description: The name of the admin user to be created. If this is unset, no admin user is created. defaultValue: '' id: $$cap_influx_admin_user - label: Admin password description: The password for the admin user configured with INFLUXDB_ADMIN_USER. If this is unset, a random password is generated and printed to standard out. defaultValue: '' id: $$cap_influx_admin_password - label: Inlfux user description: The name of a user to be created with no privileges. If INFLUXDB_DB is set, this user will be granted read and write permissions for that database. defaultValue: '' id: $$cap_influx_user - label: Influx password description: The password for the user configured with INFLUXDB_USER. If this is unset, a random password is generated and printed to standard out. defaultValue: '' id: $$cap_influx_user_password - label: Influx read user description: The name of a user to be created with read privileges on INFLUXDB_DB. If INFLUXDB_DB is not set, this user will have no granted permissions. defaultValue: '' id: $$cap_influx_read_user - label: Influx read user password description: The password for the user configured with INFLUXDB_READ_USER. If this is unset, a random password is generated and printed to standard out defaultValue: '' id: $$cap_influx_read_user_password - label: Influx write user description: The name of a user to be created with write privileges on INFLUXDB_DB. If INFLUXDB_DB is not set, this user will have no granted permissions. defaultValue: '' id: $$cap_influx_write_user - label: Influx write user password description: The password for the user configured with INFLUXDB_WRITE_USER. If this is unset, a random password is generated and printed to standard out. defaultValue: '' id: $$cap_influx_write_password instructions: start: >- Influxdb is a time series database, and part of the tickstack. After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME at the port you choose (8086 by default) to other CapRover apps. Enter your Influxdb configuration parameters and click on next. The default configuration has no users or authentication and is only accessible to other Caprover apps. It will take about a minute for the process to finish. end: All set. Influx is deployed and available as srv-captain--$$cap_appname-db:$$cap_influxdb_port to other apps. For example with curl 'curl -G http://srv-captain--$$cap_appname-db:$$cap_influxdb_port/query --data-urlencode "q=CREATE DATABASE mydb"' displayName: InfluxDb isOfficial: true description: InfluxDB is a time series database. It stores large amounts of timestamped data, including DevOps monitoring, application metrics, IoT sensor data, and real-time analytics. documentation: Taken from https://hub.docker.com/_/influxdb