Container Deployment #
INFINI Console supports container deployment.
Downloading an Image #
The images of INFINI Console are published at the official repository of Docker. The URL is as follows:
https://hub.docker.com/r/infinilabs/console
Use the following command to obtain the latest container image:
docker pull infinilabs/console:latest
Verifying the Image #
After downloading the image locally, you will notice that the container image of INFINI Console is very small, with a size less than 30 MB. So, the downloading is very fast.
✗ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
infinilabs/console latest 8c27cd334e4c 47 minutes ago 26.4MB
Create configuration #
Now you need to create a configuration file console.yml
for basic configuration, as follows:
# for this System Cluster, please use Elasticsearch v7.3+
elasticsearch:
- name: default
enabled: true
monitored: false
endpoint: http://192.168.3.188:9299
basic_auth:
username: elastic
password: ZBdkVQUUdF1Sir4X4BGB
disk_queue:
reserved_free_bytes: 524288000 #reserve 500MB free storage
max_bytes_per_file: 52428800 #50MB for each local file
compress_on_message_payload: #enable compression
enabled: true
retention: #only keep 3 recently consumed queue files
max_num_of_local_files: 3
web:
enabled: true
embedding_api: true
ui:
enabled: true
path: .public
vfs: true
local: true
network:
binding: 0.0.0.0:9000
skip_occupied_port: true
elastic:
elasticsearch: default
enabled: true
remote_configs: true
health_check:
enabled: true
availability_check:
enabled: true
metadata_refresh:
enabled: true
store:
enabled: true
orm:
enabled: true
init_template: true
template_name: ".infini"
index_prefix: ".infini_"
metrics:
enabled: true
major_ip_pattern: "10.*"
queue: metrics
elasticsearch:
enabled: true
cluster_stats: true
node_stats: true
index_stats: true
pipeline:
- name: metrics_ingest
auto_start: true
keep_running: true
processor:
- json_indexing:
index_name: ".infini_metrics"
index_prefix: ".infini_"
elasticsearch: "default"
input_queue: "metrics"
worker_size: 1
bulk_size_in_mb: 10
- name: metadata_ingest
auto_start: true
keep_running: true
processor:
- metadata:
bulk_size_in_mb: 10
bulk_max_docs_count: 5000
fetch_max_messages: 1000
elasticsearch: "default"
queues:
type: metadata
category: elasticsearch
when:
cluster_available: [ "default" ]
Note: Please change the relevant configuration of Elasticsearch in the above configuration to the actual server connection address and authentication information, which requires version v7.3 or above.
Starting the Console #
Use the following command to start the INFINI Console container:
docker run -p 9000:9000 -v=`pwd`/console.yml:/console.yml infinilabs/console:latest
Docker Compose #
You can also use docker compose to manage container instances. Create one docker-compose.yml
file as follows:
version: "3.5"
services:
infini-console:
image: infinilabs/console:latest
ports:
- 9000:9000
container_name: "infini-console"
volumes:
- ../console.yml:/console.yml
volumes:
dist:
In the directory where the configuration file resides, run the following command to start INFINI Console.
➜ docker-compose up