first commit
This commit is contained in:
157
docker-compose.yml
Normal file
157
docker-compose.yml
Normal file
@@ -0,0 +1,157 @@
|
||||
version: '3'
|
||||
services:
|
||||
etcd:
|
||||
image: bitnami/etcd
|
||||
container_name: etcd
|
||||
environment:
|
||||
- TZ=${TZ}
|
||||
- ALLOW_NONE_AUTHENTICATION=yes
|
||||
#- ETCD_ADVERTISE_CLIENT_URLS=http://etcd:2379
|
||||
- ETCD_ADVERTISE_CLIENT_URLS=http://127.0.0.1:2379
|
||||
ports:
|
||||
- "2379:2379" # 宿主机可以通过127.0.0.1:2379访问etcd服务
|
||||
restart: always
|
||||
|
||||
etcdManage:
|
||||
image: evildecay/etcdkeeper
|
||||
container_name: etcdManage
|
||||
environment:
|
||||
- TZ=${TZ}
|
||||
ports:
|
||||
- "7000:8080" # 将容器的8080端口映射到宿主机的7000端口,便于web访问
|
||||
depends_on:
|
||||
- etcd # 确保etcd容器先启动
|
||||
restart: always
|
||||
zookeeper:
|
||||
image: wurstmeister/zookeeper
|
||||
ports:
|
||||
- "2181:2181"
|
||||
|
||||
kafka:
|
||||
image: wurstmeister/kafka
|
||||
ports:
|
||||
- "9092:9092"
|
||||
environment:
|
||||
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
|
||||
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
|
||||
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
|
||||
redis:
|
||||
image: redis:7.4.0
|
||||
ports:
|
||||
- "6379:6379"
|
||||
restart: always
|
||||
|
||||
mysql:
|
||||
image: mysql:8.0.34
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=rootpassword
|
||||
- MYSQL_DATABASE=tianyuanapi
|
||||
- MYSQL_USER=tianyuanapi
|
||||
- MYSQL_PASSWORD=g3h98u0291j
|
||||
ports:
|
||||
- "3307:3306"
|
||||
volumes:
|
||||
- mysql_data:/var/lib/mysql
|
||||
restart: always
|
||||
|
||||
# Gateway service
|
||||
gateway:
|
||||
build:
|
||||
context: ./apps/gateway
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "10001:10001"
|
||||
environment:
|
||||
- ENV=production
|
||||
depends_on:
|
||||
- etcd
|
||||
- redis
|
||||
- mysql
|
||||
- user
|
||||
- sentinel
|
||||
|
||||
# Admin service
|
||||
admin:
|
||||
build:
|
||||
context: ./apps/admin
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "10002:10002"
|
||||
environment:
|
||||
- ENV=production
|
||||
depends_on:
|
||||
- etcd
|
||||
- redis
|
||||
- mysql
|
||||
- user
|
||||
- sentinel
|
||||
|
||||
# API service
|
||||
api:
|
||||
build:
|
||||
context: ./apps/api
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "10003:10003"
|
||||
environment:
|
||||
- ENV=production
|
||||
depends_on:
|
||||
- etcd
|
||||
- redis
|
||||
- mysql
|
||||
- user
|
||||
- sentinel
|
||||
- mqs
|
||||
- kafka
|
||||
|
||||
# MQS service
|
||||
mqs:
|
||||
build:
|
||||
context: ./apps/mqs
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "12001:12001"
|
||||
environment:
|
||||
- ENV=production
|
||||
depends_on:
|
||||
- kafka
|
||||
- etcd
|
||||
- redis
|
||||
- user
|
||||
- sentinel
|
||||
- kafka
|
||||
|
||||
# Sentinel service
|
||||
sentinel:
|
||||
build:
|
||||
context: ./apps/sentinel
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "11002:11002"
|
||||
environment:
|
||||
- ENV=production
|
||||
depends_on:
|
||||
- redis
|
||||
- mysql
|
||||
- etcd
|
||||
|
||||
# User service
|
||||
user:
|
||||
build:
|
||||
context: ./apps/user
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "11001:11001"
|
||||
environment:
|
||||
- ENV=production
|
||||
depends_on:
|
||||
- mysql
|
||||
- redis
|
||||
- etcd
|
||||
|
||||
volumes:
|
||||
mysql_data:
|
||||
driver: local
|
||||
Reference in New Issue
Block a user