为 spring 云配置服务器创建 docker 文件
Create docker file for spring cloud config server
我正在尝试为我的配置服务器构建 docker 映像。
这些是我遵循的步骤:
- 打开 https://start.spring.io/ 并添加配置服务器作为依赖项。然后下载项目。
- 在中添加了
@EnableConfigServer
注释
demo\src\main\java\com\example\demo\DemoApplication.java
- 在
demo\src\main\resources\application.properties
中添加了以下代码
server.port=8888 spring.cloud.config.server.git.uri=https://github.com/mygitusername/configserverdata.git
当我在本地使用命令 mvn spring-boot:run
启动配置服务器时,它工作正常。
现在我想为我的配置服务器创建 docker 图像。为此,我从 here.
得到了这个 docker 文件
FROM maven:alpine
MAINTAINER hyness <hyness@freshlegacycode.org>
EXPOSE 8888
COPY . /Demo/
WORKDIR /Demo/
RUN mvn package
VOLUME /config
WORKDIR /
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar",\
"/Demo/target/Demo.jar",\
"--server.port=8888",\
"--spring.config.name=application"]
当我执行 docker build -t spring-cloud-config-server .
时它说 BUILD Failure with this reason
The goal you specified requires a project to execute but there is no
POM in this directory (/demo). Please verify you invoked Maven from
the correct directory.
请帮助我为我的配置服务器创建正确的 docker 文件。
这可能是个愚蠢的问题,但我还需要在 Dockerfile 中指定 mvn spring-boot:run
。
我刚开始学习docker。
我刚刚构建了应用程序,它可以很好地使用这个 Dockerfile 和 dirs 布局(查看 "COPY ./demo /demo/"):
FROM maven:alpine
MAINTAINER hyness <hyness@freshlegacycode.org>
EXPOSE 8888
COPY ./demo /demo/
WORKDIR /demo/
RUN mvn package
VOLUME /config
WORKDIR /
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar",\
"/demo/target/demo.jar",\
"--server.port=8888",\
"--spring.config.name=application"]
$ tree
.
├── demo
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── example
│ │ └── demo
│ │ └── DemoApplication.java
│ └── resources
│ └── application.properties
└── Dockerfile
我正在尝试为我的配置服务器构建 docker 映像。 这些是我遵循的步骤:
- 打开 https://start.spring.io/ 并添加配置服务器作为依赖项。然后下载项目。
- 在中添加了
@EnableConfigServer
注释demo\src\main\java\com\example\demo\DemoApplication.java
- 在
demo\src\main\resources\application.properties
中添加了以下代码
server.port=8888 spring.cloud.config.server.git.uri=https://github.com/mygitusername/configserverdata.git
当我在本地使用命令 mvn spring-boot:run
启动配置服务器时,它工作正常。
现在我想为我的配置服务器创建 docker 图像。为此,我从 here.
得到了这个 docker 文件FROM maven:alpine
MAINTAINER hyness <hyness@freshlegacycode.org>
EXPOSE 8888
COPY . /Demo/
WORKDIR /Demo/
RUN mvn package
VOLUME /config
WORKDIR /
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar",\
"/Demo/target/Demo.jar",\
"--server.port=8888",\
"--spring.config.name=application"]
当我执行 docker build -t spring-cloud-config-server .
时它说 BUILD Failure with this reason
The goal you specified requires a project to execute but there is no POM in this directory (/demo). Please verify you invoked Maven from the correct directory.
请帮助我为我的配置服务器创建正确的 docker 文件。
这可能是个愚蠢的问题,但我还需要在 Dockerfile 中指定 mvn spring-boot:run
。
我刚开始学习docker。
我刚刚构建了应用程序,它可以很好地使用这个 Dockerfile 和 dirs 布局(查看 "COPY ./demo /demo/"):
FROM maven:alpine
MAINTAINER hyness <hyness@freshlegacycode.org>
EXPOSE 8888
COPY ./demo /demo/
WORKDIR /demo/
RUN mvn package
VOLUME /config
WORKDIR /
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar",\
"/demo/target/demo.jar",\
"--server.port=8888",\
"--spring.config.name=application"]
$ tree
.
├── demo
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── example
│ │ └── demo
│ │ └── DemoApplication.java
│ └── resources
│ └── application.properties
└── Dockerfile