SpringBlade 是一个由商业级项目升级优化而来的微服务架构,采用Spring Boot 4 、Spring Cloud 2025、Java 21 等核心技术构建,完全遵循阿里巴巴编码规范。提供基于React和Vue的两个前端框架用于快速搭建企业级的SaaS多租户微服务平台。
docker pull nacos/nacos-server
docker run -d --name springblade -p 8848:8848 --restart always nacos/nacos-server:v3.2.4
podman run -d --name springblade -p 8848:8848 --restart always nacos/nacos-server:v3.2.4
skopeo inspect docker://docker.io/nacos/nacos-server:v3.2.4
oras pull nacos/nacos-server:v3.2.4
docker compose up -d
version: '3'
services:
nacos:
image: nacos/nacos-server:v3.2.4
hostname: "nacos-standalone"
environment:
- NACOS_AUTH_ENABLE=true
- NACOS_AUTH_CACHE_ENABLE=true
- NACOS_AUTH_IDENTITY_KEY=nacos
- NACOS_AUTH_IDENTITY_VALUE=nacos
- NACOS_AUTH_TOKEN= # 启动前必须填写:Base64编码、≥32字节的密钥,鉴权开启时空值将无法启动。规则见 https://nacos.io/docs/next/manual/user/auth/
- MODE=standalone
- TZ=Asia/Shanghai
volumes:
- /docker/nacos/data:/home/nacos/data
- /docker/nacos/standalone-logs/:/home/nacos/logs
- /docker/nacos/conf/application.properties:/home/nacos/conf/application.properties:ro
ports:
- 8848:8848
- 9848:9848
- 8080:8080
networks:
blade_net:
ipv4_address: 172.30.0.48
sentinel:
image: bladex/sentinel-dashboard:1.8.9
hostname: "sentinel"
ports:
- 8858:8858
restart: on-failure
networks:
blade_net:
ipv4_address: 172.30.0.58
blade-nginx:
image: nginx:stable-alpine-perl
hostname: "blade-nginx"
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"
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:7-alpine
hostname: "blade-redis"
ports:
- 3379:6379
volumes:
- /docker/redis/data:/data
command: "redis-server --appendonly yes"
privileged: true
restart: always
networks:
- blade_net
blade-admin:
image: "${REGISTER}/blade-admin:${TAG}"
ports:
- 7002:7002
privileged: true
restart: always
networks:
- blade_net
blade-gateway1:
image: "${REGISTER}/blade-gateway:${TAG}"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.81
blade-gateway2:
image: "${REGISTER}/blade-gateway:${TAG}"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.82
blade-auth1:
image: "${REGISTER}/blade-auth:${TAG}"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.91
blade-auth2:
image: "${REGISTER}/blade-auth:${TAG}"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.92
blade-report:
image: "${REGISTER}/blade-report:${TAG}"
privileged: true
restart: always
networks:
blade_net:
ipv4_address: 172.30.0.98
blade-log:
image: "${REGISTER}/blade-log:${TAG}"
privileged: true
restart: always
networks:
- blade_net
blade-desk:
image: "${REGISTER}/blade-desk:${TAG}"
privileged: true
restart: always
networks:
- blade_net
blade-system:
image: "${REGISTER}/blade-system:${TAG}"
privileged: true
restart: always
networks:
- blade_net
blade-resource:
image: "${REGISTER}/blade-resource:${TAG}"
privileged: true
restart: always
networks:
- blade_net
blade-develop:
image: "${REGISTER}/blade-develop:${TAG}"
privileged: true
restart: always
networks:
- blade_net
networks:
blade_net:
driver: bridge
ipam:
config:
- subnet: 172.30.0.0/16