1,182
社区成员




这个是我的dockerfile 包括jar包一共有5个这样的
version: '3.8'
services:
dc3-center-auth:
image: dc3-center-auth:2024.08.02
ports:
- "8082:8082"
container_name: dc3-center-auth
environment:
- JAVA_OPTS=-Xmx512m
networks:
- my-network
dc3-center-data:
image: dc3-center-data:2024.08.02
ports:
- "8083:8083"
container_name: dc3-center-data
environment:
- JAVA_OPTS=-Xmx512m
networks:
- my-network
dc3-center-manager:
image: dc3-center-manager:2024.08.02
ports:
- "8066:8066"
container_name: dc3-center-manager
environment:
- JAVA_OPTS=-Xmx512m
networks:
- my-network
dc3-driver-modbus-tcp:
image: dc3-driver-modbus-tcp:2024.08.02
ports:
- "8096:8096"
container_name: dc3-driver-modbus-tcp
environment:
- JAVA_OPTS=-Xmx512m
networks:
- my-network
dc3-gateway:
image: dc3-gateway:2024.08.02
ports:
- "8097:8097"
container_name: dc3-gateway
environment:
- JAVA_OPTS=-Xmx512m
networks:
- my-network
networks:
my-network:
driver: bridge
这个是我的yml文件配置,我是先打包镜像然后用
docker-compose -f dc3-docker-compose-dev.yml up -d dc3-gateway dc3-driver-modbus-tcp dc3-center-manager dc3-center-data dc3-center-auth
一次性打包。一般用bat方式启动的时候可以在docker部署的nacos查看服务。但是我从docker里启动后五个全部报错然后停止。日志主要是报RabbitMQ服务和MySQL服务无法建立连接,研究一天了不清楚怎么回事,bat正常在docker就会有问题
解决方案:因为在docker内部启动MySQL镜像担心端口冲突映射端口和端口设置为33306和3306;在jar里的设置的端口访问都是33306,但是进入内部后应该访问的3306.
其次可能是配置项问题,导致两个Docker Compose即使挂在了同一个networks也无法互相通信。目前没有好的方法解决问题只能无奈把所有的打包到一起