You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

347 lines
8.6 KiB

version: '3'
services:
####################################################################################################
###=================================== 以下为中间件模块 =========================================###
####################################################################################################
nacos:
image: nacos/nacos-server:2.1.2
hostname: "nacos-standalone"
environment:
- MODE=standalone
- TZ=Asia/Shanghai
volumes:
- /docker/nacos/standalone-logs/:/home/nacos/logs
- /docker/nacos/conf/application.properties:/home/nacos/conf/application.properties
ports:
- 8848:8848
- 9848:9848
- 9849:9849
networks:
blade_net:
ipv4_address: 172.30.0.48
sentinel:
image: bladex/sentinel-dashboard:1.8.0
hostname: "sentinel"
environment:
- TZ=Asia/Shanghai
ports:
- 8858:8858
restart: on-failure
networks:
blade_net:
ipv4_address: 172.30.0.58
seata-server:
image: seataio/seata-server:1.6.1
hostname: "seata-server"
ports:
- 8091:8091
environment:
- TZ=Asia/Shanghai
- SEATA_PORT=8091
- STORE_MODE=file
networks:
blade_net:
ipv4_address: 172.30.0.68
blade-nginx:
image: nginx:stable-alpine-perl
hostname: "blade-nginx"
environment:
- TZ=Asia/Shanghai
ports:
- 88:88
volumes:
- /docker/nginx/api/nginx.conf:/etc/nginx/nginx.conf
privileged: true
restart: always
networks:
- blade_net
web-nginx:
image: nginx:stable-alpine-perl
hostname: "web-nginx"
environment:
- TZ=Asia/Shanghai
ports:
- 8000:8000
volumes:
- /docker/nginx/web/html:/usr/share/nginx/html
- /docker/nginx/web/nginx.conf:/etc/nginx/nginx.conf
privileged: true
restart: always
networks:
- blade_net
blade-redis:
image: redis:5.0.8-alpine
hostname: "blade-redis"
environment:
- TZ=Asia/Shanghai
ports:
- 3379:6379
volumes:
- /docker/redis/data:/data
command: "redis-server --appendonly yes"
privileged: true
restart: always
networks:
- blade_net
####################################################################################################
###================================= 以下为BladeX服务模块 =======================================###
####################################################################################################
blade-admin:
image: "${REGISTER}/blade-admin:${TAG}"
environment:
- TZ=Asia/Shanghai
ports:
- 7002:7002
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.72
blade-swagger:
image: "${REGISTER}/blade-swagger:${TAG}"
environment:
- TZ=Asia/Shanghai
ports:
- 18000:18000
privileged: true
restart: always
networks:
- blade_net
blade-gateway1:
image: "${REGISTER}/blade-gateway:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.81
blade-gateway2:
image: "${REGISTER}/blade-gateway:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.82
blade-auth1:
image: "${REGISTER}/blade-auth:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.91
blade-auth2:
image: "${REGISTER}/blade-auth:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.92
blade-report:
image: "${REGISTER}/blade-report:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
ports:
- 8108:8108
networks:
blade_net:
ipv4_address: 172.30.0.98
blade-log:
image: "${REGISTER}/blade-log:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
- blade_net
blade-desk:
image: "${REGISTER}/blade-desk:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
- blade_net
blade-system:
image: "${REGISTER}/blade-system:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
- blade_net
blade-flow:
image: "${REGISTER}/blade-flow:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
- blade_net
blade-resource:
image: "${REGISTER}/blade-resource:${TAG}"
environment:
- TZ=Asia/Shanghai
privileged: true
restart: always
networks:
- blade_net
####################################################################################################
###=============================== 以下为Prometheus监控模块 =====================================###
####################################################################################################
prometheus:
image: prom/prometheus:v2.24.1
hostname: "prometheus"
environment:
- TZ=Asia/Shanghai
ports:
- 9090:9090
volumes:
- /docker/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
- /docker/prometheus/rules:/etc/prometheus/rules
command: "--config.file=/etc/prometheus/prometheus.yml --web.enable-lifecycle"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.90
node-exporter:
image: prom/node-exporter:v1.0.1
hostname: "node-exporter"
environment:
- TZ=Asia/Shanghai
ports:
- 9190:9100
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.93
mysqld-exporter:
image: prom/mysqld-exporter:v0.12.1
hostname: "mysqld-exporter"
environment:
- TZ=Asia/Shanghai
# 需要先在mysql服务执行如下语句
# =====================================================================================
# === CREATE USER 'exporter'@'mysql服务ip' IDENTIFIED BY '密码'; ===
# === GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'mysql服务ip'; ===
# === flush privileges; ===
# =====================================================================================
- DATA_SOURCE_NAME=exporter:密码@(mysql服务ip:mysql服务端口)/
ports:
- 9104:9104
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.94
cadvisor:
image: google/cadvisor:v0.33.0
hostname: "cadvisor"
environment:
- TZ=Asia/Shanghai
ports:
- 18080:8080
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- /dev/disk/:/dev/disk:ro
command: "detach=true"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.180
grafana:
image: grafana/grafana:7.3.7
hostname: "grafana"
environment:
- TZ=Asia/Shanghai
- GF_SERVER_ROOT_URL=https://grafana.bladex.vip
- GF_SECURITY_ADMIN_PASSWORD=1qaz@WSX
ports:
- 3000:3000
volumes:
- /docker/grafana/grafana.ini:/etc/grafana/grafana.ini
- /docker/grafana:/var/lib/grafana
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.30
alertmanager:
image: prom/alertmanager:v0.21.0
hostname: "alertmanager"
environment:
- TZ=Asia/Shanghai
ports:
- 9093:9093
volumes:
- /docker/alertmanager/alertmanager.yml:/etc/alertmanager/alertmanager.yml
- /docker/alertmanager/data:/etc/alertmanager/data
- /docker/alertmanager/templates:/etc/alertmanager/templates
command: "--config.file=/etc/alertmanager/alertmanager.yml --storage.path=/etc/alertmanager/data"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.99
webhook-dingtalk:
image: timonwong/prometheus-webhook-dingtalk:v1.4.0
hostname: "webhook-dingtalk"
environment:
- TZ=Asia/Shanghai
ports:
- 8060:8060
command: "ding.profile=webhook_robot=https://oapi.dingtalk.com/robot/send?access_token=xxxxx"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.96
networks:
blade_net:
driver: bridge
ipam:
config:
- subnet: 172.30.0.0/16