我拿了这个例子https://github.com/paulc4/microservices-demo并从中创建了 3 个 docker 镜像,其中包含以下 Dockerfile:
springdocker-注册:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD target/microservice-demo-1.1.0.RELEASE.jar app.jar
EXPOSE 1111
ENTRYPOINT exec java -jar /app.jar registration
Run Code Online (Sandbox Code Playgroud)
springdocker-帐户:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD target/microservice-demo-1.1.0.RELEASE.jar app.jar
EXPOSE 2222
ENTRYPOINT exec java -jar /app.jar accounts
Run Code Online (Sandbox Code Playgroud)
springdocker-web:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD target/microservice-demo-1.1.0.RELEASE.jar app.jar
EXPOSE 3333
ENTRYPOINT exec java -jar /app.jar web
Run Code Online (Sandbox Code Playgroud)
如果我跑了三张图片分别一切正常确定,web和accounts服务注册到registration服务(这是尤里卡注册表的实现),我可以用我的应用程序。但是,当docker-compose与以下docker-compose.yml文件一起使用时
version: "3.4"
services:
registration:
image: springdocker-registration
ports:
- "1111:1111"
accounts:
image: springdocker-accounts
ports: …Run Code Online (Sandbox Code Playgroud)