docker compose部署HertzBeat

环境

系统 docker docker compse HertzBeat
Ubuntu 22.04 27.3.1, build ce12230 v2.29.7 v1.6.1

官网

部署

下载安装包

https://hertzbeat.apache.org/zh-cn/docs/download/

找到 docker-compose 结尾的压缩包

解压

$ tar xf apache-hertzbeat-1.6.1-incubating-docker-compose.tar.gz
$ cd apache-hertzbeat-1.6.1-incubating-docker-compose
$ ll
总计 48
drwxr-xr-x 6 root root  4096 Dec 27 16:13 ./
drwxr-xr-x 4 root root  4096 Dec 27 09:32 ../
-rw-r--r-- 1 root root   556 Oct 19 21:46 DISCLAIMER
-rw-r--r-- 1 root root 11357 Oct 23 18:13 LICENSE
-rw-r--r-- 1 root root   178 Oct 19 21:46 NOTICE
-rw-r--r-- 1 root root   698 Oct 19 21:46 README.md
drwxr-xr-x 4 root root  4096 Dec 27 09:32 hertzbeat-mysql-iotdb/
drwxr-xr-x 4 root root  4096 Dec 27 09:32 hertzbeat-mysql-tdengine/
drwxr-xr-x 4 root root  4096 Dec 27 09:32 hertzbeat-mysql-victoria-metrics/
drwxr-xr-x 6 root root  4096 Dec 27 09:42 hertzbeat-postgresql-victoria-metrics/

部署

选择官方推荐方案 HertzBeat + PostgreSQL + VictoriaMetrics 方案

$ cd hertzbeat-postgresql-victoria-metrics
$ tree
.
├── conf
│   ├── application.yml
│   ├── sql
│   │   └── schema.sql
│   └── sureness.yml
├── docker-compose.yaml
├── ext-lib
│   └── README
├── README_CN.md
└── README.md

可以先看下 README_CN.md

修改配置文件

如果只是测试功能,可以直接运行,不用做任何修改

# 修改端口号
$ vim conf/application.yml
server:
  port: 1157

# 修改用户名密码
$ vim conf/sureness.yml
# account info config
# eg: admin has role [admin,user], password is hertzbeat
# eg: tom has role [user], password is hertzbeat
# eg: lili has role [guest], plain password is lili, salt is 123, salted password is 1A676730B0C7F54654B0E09184448289
account:
  - appId: admin
    credential: hertzbeat
    role: [admin]
  - appId: tom
    credential: hertzbeat
    role: [user]
  - appId: guest
    credential: hertzbeat
    role: [guest]
  - appId: lili
    # credential = MD5(password + salt)
    # plain password: hertzbeat
    # attention: digest authentication does not support salted encrypted password accounts
    credential: 94C6B34E7A199A9F9D4E1F208093B489
    salt: 123
    role: [user]

修改资源清单文件
vim docker-compose.yaml

# 需要注释掉版本信息,否则会报警告信息
# version: "3.7"

networks:
  hertzbeat:
    driver: bridge

services:
  postgres:
    image: postgres:15
    container_name: compose-postgresql
    hostname: postgresql
    restart: always
    healthcheck:
      test: [ "CMD", "pg_isready" ]
      interval: 10s
      timeout: 5s
      retries: 5
      start_period: 30s
    ports:
      - '5432:5432'
    environment:
      POSTGRES_USER: root
      POSTGRES_PASSWORD: 123456
      TZ: Asia/Shanghai
    volumes:
      - ./dbdata/pgdata/data:/var/lib/postgresql/data
      - ./conf/sql:/docker-entrypoint-initdb.d/      
    networks:
      - hertzbeat

  victoria-metrics:
    image: victoriametrics/victoria-metrics:v1.95.1
    container_name: compose-victoria-metrics
    hostname: victoria-metrics
    restart: always
    healthcheck:
      test: ["CMD", "wget", "-q", "-O", "-", "http://victoria-metrics:8428/-/healthy"]
      interval: 10s
      retries: 5
      timeout: 5s
      start_period: 30s
    environment:
      TZ: Asia/Shanghai
    ports:
      - "8428"
    volumes:
      - ./dbdata/tsdbdata:/victoria-metrics-data
    networks:
      - hertzbeat

  hertzbeat:
    image: apache/hertzbeat
    container_name: compose-hertzbeat
    hostname: hertzbeat
    restart: always
    environment:
      TZ: Asia/Shanghai
      LANG: zh_CN.UTF-8
    depends_on:
      postgres:
        condition: service_healthy
      victoria-metrics:
        condition: service_healthy
    volumes:
      - ./conf/application.yml:/opt/hertzbeat/config/application.yml
      - ./conf/sureness.yml:/opt/hertzbeat/config/sureness.yml
      - ./logs:/opt/hertzbeat/logs
      - ./ext-lib:/opt/hertzbeat/ext-lib
    ports:
      # 端口号需要根据实际情况进行修改
      - "1157:1157"
      - "1158:1158"
    networks:
      - hertzbeat

部署

docker-compose up -d

查看状态

$ docker compose ps
NAME                       IMAGE                                      COMMAND                  SERVICE            CREATED       STATUS                 PORTS
compose-hertzbeat          apache/hertzbeat                           "./bin/entrypoint.sh"    hertzbeat          7 hours ago   Up 5 hours             22/tcp, 0.0.0.0:1157-1158->1157-1158/tcp, :::1157-1158->1157-1158/tcp
compose-postgresql         postgres:15                                "docker-entrypoint.s…"   postgres           7 hours ago   Up 7 hours (healthy)   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp
compose-victoria-metrics   victoriametrics/victoria-metrics:v1.95.1   "/victoria-metrics-p…"   victoria-metrics   7 hours ago   Up 7 hours (healthy)   0.0.0.0:32768->8428/tcp, [::]:32768->8428/tcp

访问

访问 1157端口
例如 http://10.1.0.153:1157

如果没修改密码 默认登陆用户名密码为 admin/hertzbeat

此时就部署成功了

posted @ 2024-12-27 16:32  厚礼蝎  阅读(284)  评论(0)    收藏  举报