You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1panel/docker-compose-middleare.yml

454 lines
13 KiB
YAML

#version: '3'
networks:
local:
external: true
name: local
services:
portainer:
restart: always
image: portainer/portainer-ce:2.19.1
container_name: framework_portainer
privileged: true
networks:
- local
ports:
- 19000:9000
environment:
- MINIO_ROOT_USER=minioadmin
- MINIO_ROOT_PASSWORD=Admin@hd2019
volumes:
- /data/portainer/data:/data
- /var/run/docker.sock:/var/run/docker.sock
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
nacos:
image: nacos/nacos-server:v2.4.3
container_name: middleare_nacos
restart: always
privileged: true
networks:
- local
ports:
- 8848:8848
- 9848:9848
- 9849:9849
environment:
- JVM_XMS=256m
- JVM_XMX=1G
- MODE=standalone
- PREFER_HOST_MODE=hostname
- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_SERVICE_HOST=mysql
- MYSQL_SERVICE_PORT=3306
- MYSQL_SERVICE_USER=root
- MYSQL_SERVICE_PASSWORD=ngskcloud0809
- MYSQL_SERVICE_DB_NAME=nacos_config
- TIME_ZONE=Asia/Shanghai
- MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true
volumes:
- /data/nacos/logs:/home/nacos/logs
- /etc/timezone:/etc/timezone:ro
depends_on:
- mysql
emqx1.io:
image: emqx/emqx:5.2.1
container_name: middleare_emqx
restart: always
#privileged: true
networks:
- local
ports:
- 18083:18083
- 1883:1883
volumes:
- /data/emqx/log:/opt/emqx/log
- /data/emqx/data:/opt/emqx/data
- /data/emqx/etc:/opt/emqx/etc
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
environment:
- "EMQX_NODE_NAME=emqx@emqx1.io"
nginx:
image: nginx:1.22
container_name: middleare_nginx
restart: always
privileged: true
networks:
- local
ports:
- 80:80
- 443:443
volumes:
- /data/nginx/nginx.conf:/etc/nginx/nginx.conf
- /data/nginx/conf.d:/etc/nginx/conf.d
- /data/nginx/log:/var/log/nginx
- /data/nginx/html:/usr/share/nginx/html
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
redis:
restart: always
image: bitnami/redis:8.0.3
container_name: middleare_redis
privileged: true
networks:
- local
ports:
- 6379:6379
environment:
- REDIS_PASSWORD=ngsk0809
volumes:
- /data/redis/data:/bitnami/redis/data
- /data/redis/redis.conf:/etc/redis/redis.conf
- /etc/localtime:/etc/localtime:ro
- /data/redis/run:/var/run
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "2"
sysctls:
- net.core.somaxconn=551
command: redis-server /etc/redis/redis.conf
redis-img:
restart: always
image: redis:6.2.6
container_name: middleare_redis_img
privileged: true
networks:
- local
ports:
- 6380:6379
volumes:
- /data/redis-img/data:/data
- /data/redis-img/redis.conf:/etc/redis/redis.conf
- /etc/localtime:/etc/localtime:ro
command: redis-server /etc/redis/redis.conf
minio:
restart: always
image: minio/minio:RELEASE.2022-10-08T20-11-00Z
container_name: middleare_minio
privileged: true
networks:
- local
ports:
- 9000:9000
- 9001:9001
environment:
- MINIO_ROOT_USER=minioadmin
- MINIO_ROOT_PASSWORD=Admin@hd2019
volumes:
- /data/minio/data1:/data1
- /data/minio/data2:/data2
- /data/minio/data3:/data3
- /data/minio/data4:/data4
- /data/minio/conf:/root/.minio
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
command: server /data{1...4} --console-address ":9001"
mysql:
restart: always
image: mysql:8.0.27
container_name: middleare_mysql
privileged: true
hostname: mysql
networks:
- local
ports:
- 3306:3306
environment:
MYSQL_ROOT_PASSWORD: ngskcloud0809
volumes:
- /data/mysql/conf/my.cnf:/etc/mysql/my.cnf
- /data/mysql/datadir:/var/lib/mysql
- /data/mysql/log/mysqld_slow.log:/var/log/mysqld_slow.log
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
nexus:
image: sonatype/nexus3:3.69.0-java11
container_name: middleare_nexus
restart: always
#privileged: true
networks:
- local
ports:
- 8081:8081
- 8082:8082
- 8083:8083
environment:
- JAVA_TOOL_OPTIONS=-Xms1g -Xmx2g -XX:+UseContainerSupport -XX:MaxMetaspaceSize=256m -XX:MaxDirectMemorySize=512m -Duser.timezone=Asia/Shanghai
volumes:
- /data/nexus/nexus-data:/nexus-data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
code-server:
image: linuxserver/code-server:4.90.1
container_name: middleare_code-server
restart: always
privileged: true
networks:
- local
ports:
- 8443:8443
environment:
- PUID=0
- PGID=0
- TZ=Asia/Shanghai
- SUDO_PASSWORD=admin@Code2023
- DEFAULT_WORKSPACE=/app/data
volumes:
- /data/code-server/config:/config
- /data/code-server/data:/app/data
- /data/code-server/profile:/etc/profile
- /data/maven/apache-maven-3.8.6:/usr/local/maven
- /data/jdk:/usr/local/jdk
- /data/maven/.m2/repository:/data/maven/.m2/repository
- /data/maven/.m2/settings.xml:/root/.m2/settings.xml
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
gitea:
image: gitea/gitea:1.19.3
container_name: middleare_gitea
restart: always
privileged: true
networks:
- local
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=mysql:3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=root
- GITEA__database__PASSWD=ngskcloud0809
volumes:
- /data/gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "30000:3000"
- "22222:22"
iotdb-service:
image: apache/iotdb:1.3.1-standalone
hostname: iotdb-service
container_name: iotdb-service
restart: always
ports:
- "6667:6667"
- "8181:8181"
- "5555:5555"
environment:
- cn_internal_address=iotdb-service
- cn_internal_port=10710
- cn_consensus_port=10720
- cn_seed_config_node=iotdb-service:10710
- dn_rpc_address=iotdb-service
- dn_internal_address=iotdb-service
- dn_rpc_port=6667
- dn_mpp_data_exchange_port=10740
- dn_schema_region_consensus_port=10750
- dn_data_region_consensus_port=10760
- dn_seed_config_node=iotdb-service:10710
- MAX_HEAP_SIZE=512M
- HEAP_NEWSIZE=256M
volumes:
- /data/iotdb/data:/iotdb/data
- /data/iotdb/logs:/iotdb/logs
networks:
- local
1panel:
build:
context: .
dockerfile: Dockerfile
image: 1panel-dev-v2:local
container_name: middleare_1panel
restart: always
privileged: true
networks:
- local
ports:
- "9999:9999"
environment:
- TZ=Asia/Shanghai
volumes:
- /data/1panel:/opt/1panel
- /var/run/docker.sock:/var/run/docker.sock
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- mysql
jenkins:
image: jenkins/jenkins:lts-jdk21
container_name: jenkins
restart: always
privileged: true
networks:
- local
ports:
- "9090:8080"
- "50000:50000"
user: root
environment:
- JAVA_TOOL_OPTIONS=-Xms1g -Xmx2g -XX:MaxDirectMemorySize=512m -Duser.timezone=Asia/Shanghai
- JENKINS_UC=https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current
volumes:
- /data/jenkins:/var/jenkins_home
- /data/docker-compose-server.yml:/var/jenkins_home/home/workspace/docker-compose.yml:ro
- /data/nginx/html:/data/frontend
- /data/maven:/data/maven
- /usr/bin/docker:/usr/bin/docker
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker-compose:/usr/bin/docker-compose
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /usr/libexec/docker/cli-plugins:/usr/libexec/docker/cli-plugins
graylog:
image: graylog/graylog:6.3
container_name: graylog
volumes:
- /data/graylog-new/graylog/data:/usr/share/graylog/data/data
- /data/graylog-new/graylog/journal:/usr/share/graylog/data/journal
- /etc/localtime:/etc/localtime:ro
- /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone:ro
- /data/graylog-new/graylog/config/graylog.conf:/usr/share/graylog/data/config/graylog.conf
environment:
- GRAYLOG_PASSWORD_SECRET=${GRAYLOG_PASSWORD_SECRET}
- GRAYLOG_ROOT_PASSWORD_SHA2=${GRAYLOG_ROOT_PASSWORD_SHA2}
- GRAYLOG_HTTP_BIND_ADDRESS=0.0.0.0:9000
- GRAYLOG_HTTP_EXTERNAL_URI=http://192.168.5.119:9009/
- GRAYLOG_MONGODB_URI=mongodb://mongodb:27017/graylog
- TZ=Asia/Shanghai
- GRAYLOG_TIMEZONE=Asia/Shanghai
- GRAYLOG_SERVER_JAVA_OPTS=-Duser.timezone=Asia/Shanghai
networks:
- local
restart: always
depends_on:
- mongodb
- datanode
ports:
- "9009:9000"
- "12201:12201/udp"
mongodb:
image: mongo:6.0
container_name: mongodb
restart: always
environment:
- TZ=Asia/Shanghai
healthcheck:
test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
interval: 10s
timeout: 5s
retries: 5
networks:
- local
volumes:
- /data/graylog-new/mongodb/db:/data/db
- /data/graylog-new/mongodb/config:/data/configdb
# elasticsearch:
# image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
# container_name: elasticsearch
# restart: always
# volumes:
# - /data/garylog/elasticsearch/data:/usr/share/elasticsearch/data # 挂载数据目录
# - /data/garylog/elasticsearch/config:/usr/share/elasticsearch/config # 挂载配置文件目录
# - /data/garylog/elasticsearch/plugins:/usr/share/elasticsearch/plugins # 挂载插件目录
# environment:
# - http.host=0.0.0.0
# - transport.host=localhost
# - network.host=0.0.0.0
# - "ES_JAVA_OPTS=-Dlog4j2.formatMsgNoLookups=true -Xms512m -Xmx512m"
# ports:
# - "9200:9200"
# ulimits:
# memlock:
# soft: -1
# hard: -1
# deploy:
# resources:
# limits:
# memory: 1g
# networks:
# - local
datanode:
image: graylog/graylog-datanode:6.3
container_name: datanode
restart: always
hostname: datanode
networks:
- local
environment:
- GRAYLOG_DATANODE_NODE_ID_FILE=/var/lib/graylog-datanode/node-id
- GRAYLOG_DATANODE_PASSWORD_SECRET=${GRAYLOG_PASSWORD_SECRET}
- GRAYLOG_DATANODE_MONGODB_URI=mongodb://mongodb:27017/graylog
- TZ=Asia/Shanghai
- GRAYLOG_DATANODE_JAVA_OPTS=-Xms4g -Xmx4g -Duser.timezone=Asia/Shanghai
- GRAYLOG_DATANODE_ELASTICSEARCH_COMPATIBILITY_MODE=true
- GRAYLOG_DATANODE_OPENSEARCH_SECURITY_DISABLED=true
- GRAYLOG_DATANODE_HTTP_BIND_ADDRESS=0.0.0.0:9200
- GRAYLOG_DATANODE_OPENSEARCH_DISABLE_SSL=true
- GRAYLOG_DATANODE_TRANSPORT_SSL_ENABLED=false
ports:
- "8999:8999"
- "9200:9200"
- "9300:9300"
volumes:
- /data/graylog-new/datanode:/var/lib/graylog-datanode
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime:ro
#
# apm-server:
# image: elastic/apm-server:7.16.3
# container_name: apm-server
# restart: always
# ports:
# - "8200:8200" # APM Server默认端口
# environment:
# - output.elasticsearch.hosts=["http://datanode:9200"]
# - output.elasticsearch.username=admin
# - output.elasticsearch.password=admin
# - output.elasticsearch.bulk_max_size=5120
# - output.elasticsearch.retry.max_retries=3
# - output.elasticsearch.retry.initial_interval=10s
# - queue.mem.events=20480
# - output.elasticsearch.workers=4
# depends_on:
# - datanode
# networks:
# - local
# sky-oap:
# image: docker.io/apache/skywalking-oap-server:latest
# container_name: sky-oap
# restart: always
# ports:
# - "12800:12800"
# - "11800:11800"
# environment:
# - TZ=Asia/Shanghai
# - SW_STORAGE=elasticsearch
# - SW_STORAGE_ES_CLUSTER_NODES=192.168.5.119:9200
# - SW_STORAGE_ES_HTTP_SSL_ENABLED=false
# networks:
# - local
#
# sky-ui:
# image: docker.io/apache/skywalking-ui:latest
# container_name: sky-ui
# restart: always
# ports:
# - "8868:8080"
# environment:
# - TZ=Asia/Shanghai
# - SW_OAP_ADDRESS=http://sky-oap:12800
# depends_on:
# - sky-oap
# networks:
# - local