将Java应用程序部署到Docker镜像
我有一个正常执行的可执行JAR,如下所示:
java -jar myapp.jar
我想“ Dockerize ”这个应用程序,把它放在一个容器中,比如/~/myapp
,然后configuration容器,当容器启动时总是运行这个应用程序(使用上面的命令)。
使用这个示例Dockerfile
作为起点,我需要添加哪些条目才能让Docker将myapp.jar
正确定位到文件系统中,并在启动时运行它?
假设在我运行Docker构build镜像时,二进制文件将位于build/distributions
如下所示:
myapp/ src/ build.gradle Dockerfile build/distributions/ myapp.jar
这是你要求的一个简单的例子。 这假定你正在运行docker build .
from /myapp/src/
和应用程序正在容器的前台运行。
# Use Ububtu 14.04 as our base O/S FROM ubuntu:14.04 # Set our working directory WORKDIR / # Update the repositories and then install java RUN apt-get update && install -y default-jre # Copy the application from its folder to our image # Assumes docker build is run from /myapp/src ADD /build/distributions/myapp.jar /myapp.jar # Run the app when the container is executed. CMD ["java", "-jar myapp.jar"]
- 在redhat linux上安装docker – 用'container-selinux'和'selinux-policy'
- Docker推到谷歌registry的速度令人难以置信
- docker服务器更改存储驱动程序后失败
- 如何使用docker远程API连接到现有的dockernetworking(通过dockerode)
- java -jar lib / kvstore.jar ping – 使用IPAddress时的ConnectException
- Dockerfile ONBUILD指令
- 无法从主机连接到cassandra
- Dockernetworking没有暴露给Windows上的主机
- 将Heroku进程types部署到单个应用程序