TICK/TIGK运维栈安装运行 docker-compose【下】

InfluxDB

构建Dockerfile
vim /opt/influxdb-docker/Dockerfile

FROM influxdb
COPY influxdb.conf /etc/influxdb/influxdb.conf
EXPOSE 8086

vim /opt/influxdb-docker/docker-compose.yml

version: '3.4'
services:
  influxdb:
    image: influxdb1:latest
    container_name: influxdb1
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./influxdb.conf:/etc/influxdb/influxdb.conf
      - /var/lib/influxdb:/var/lib/influxdb
      - /etc/localtime:/etc/localtime:ro
    ports:
      - 8086:8086
    restart: unless-stopped

cd /opt/influxdb-docker
docker-compose build
docker-compose up -d
docker-compose down
docker-compose restart

测试是否安装成功

接口进行访问
curl -G http://localhost:8086/query --data-urlencode "q=show databases"
docker exec -it influxdb1 /bin/bash
influx
show users

默认没有用户名密码,需创建管理员
CREATE USER "root" WITH PASSWORD 'root' WITH ALL PRIVILEGES

如果有问题,docker复制出配置文件查看 docker cp influxdb1:/etc/influxdb/influxdb.conf /opt

telegraf


下载wait-for-it.sh用于依赖influxdb的docker-compose
https://github.com/vishnubob/wait-for-it
放到/opt/telegraf-docker/ 里
https://github.com/vishnubob/wait-for-it/blob/master/wait-for-it.sh复制脚本
填入vim /opt/telegraf-docker/wait-for-it.sh

构建Dockerfile
vim /opt/telegraf-docker/Dockerfile

FROM telegraf
COPY telegraf.conf /etc/telegraf/telegraf.conf
COPY ./wait-for-it.sh /opt/wait-for-it.sh
RUN chmod 777 /opt/wait-for-it.sh

vim /opt/telegraf-docker/docker-compose.yml

version: '3.4'
services:
  telegraf:
    image: telegraf1:latest
    container_name: telegraf1
    build:
      context: .
      dockerfile: Dockerfile
    #command: ["/opt/wait-for-it.sh", "192.168.1.102:8086", "--", "python", "app.py"]
    volumes:
      - ./telegraf.conf:/etc/telegraf/telegraf.conf
      - ./wait-for-it.sh:/etc/wait-for-it.sh
      - /etc/localtime:/etc/localtime:ro
    restart: always

cd /opt/telegraf-docker
docker-compose build
docker-compose up -d

docker-compose up -d --build

查看telegraf1容器近30分钟的日志
docker logs --since 30m telegraf1


Chronograf

构建Dockerfile
mkdir /opt/chronograf-docker
vim /opt/chronograf-docker/Dockerfile

FROM chronograf
EXPOSE 8888

mkdir -p /var/lib/chronograf;chown 472:472 /var/lib/chronograf

vim /opt/chronograf-docker/docker-compose.yml

version: '3.4'
services:
  grafana:
    image: chronograf1:latest
    container_name: chronograf1
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 8085:8888
    volumes:
      - /var/lib/chronograf:/var/lib/chronograf
      - /etc/localtime:/etc/localtime:ro
    restart: unless-stopped

cd /opt/chronograf-docker
docker-compose build
docker-compose up -d

Grafana


构建Dockerfile
mkdir /opt/grafana-docker
vim /opt/grafana-docker/Dockerfile

FROM grafana/grafana
EXPOSE 8086

mkdir -p /var/lib/grafana;chown 472:472 /var/lib/grafana

vim /opt/grafana-docker/docker-compose.yml

version: '3.4'
services:
  grafana:
    image: grafana1:latest
    container_name: grafana1
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 3000:3000
    volumes:
      - /var/lib/grafana:/var/lib/grafana
      - /etc/localtime:/etc/localtime:ro
    restart: unless-stopped

cd /opt/grafana-docker
docker-compose build
docker-compose up -d

进入网站 用户名密码都是admin


第一步创建datasource
Name为telegraf与上面telegraf配置的数据库名一致
influxdb开启了auth-enabled = true
需要勾选Basic Auth 数据库用户名密码都是root

后面的dashboard随意了,记得在sql语句中选择表和列,部分列可以按*显示,否则不会展示数据

猜你喜欢

转载自www.cnblogs.com/wintersoft/p/10972356.html