【发布时间】:2020-08-10 21:17:26
【问题描述】:
我已经在这个问题上苦苦挣扎了几个小时。 我有以下设置:
Dockerfile
FROM openjdk:8-jdk-alpine
ARG JAR_FILE=target/ROOT.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","app.jar","--spring.profiles.active=dev"]
EXPOSE 8080
docker-compose.yml
version: '3'
services:
app:
container_name: app
build:
context: .
dockerfile: Dockerfile
restart: always
links:
- mysql-db
depends_on:
- mysql-db
ports:
- 8080:8080
expose:
- 8080
networks:
- spring-network
mysql-db:
restart: always
container_name: mysql_db
image: "mysql:8.0.19"
ports:
- 3306:3306
networks:
- spring-network
environment:
MYSQL_ROOT_PASSWORD: 'password'
MYSQL_DATABASE: 'db'
MYSQL_USER: 'db-user'
MYSQL_PASSWORD: 'password'
volumes:
- mysql-db:/var/lib/mysql
command: --innodb-use-native-aio=0
security_opt:
- seccomp:unconfined
volumes:
mysql-db:
networks:
spring-network:
driver: bridge
当我使用docker-compose up 运行应用程序时,它在容器内运行良好,但是当我在浏览器上点击 localhost:8080 时,我得到了
localhost 意外关闭连接
编辑:
- spring boot 应用在 8080 端口上运行
- docker 版本 19.03.8
【问题讨论】:
-
你在使用 Docker 工具箱吗?如果您查看容器的启动日志,它是否说它正在侦听“localhost”或“127.0.0.1”或“0.0.0.0”?
-
不,先生,很遗憾,我没有使用它。
-
无需像“先生”一样称呼他 像@DavidMaze 一样称呼他
标签: spring-boot docker docker-compose