Docker Java 例子

正如我们前面提到的,docker可以执行任何应用程序。

我们将创建一个Java应用程序,并使用docker运行它。

1. 创建项目目录

我们会把这个项目的相关文件,集中放到一个目录docker-java

[root@qikegu demo]# mkdir docker-java

2. 创建Java文件

docker-java目录下,创建一个Java文件:

Qikegu.java


class Qikegu{ public static void main(String[] args){ System.out.println("This is java docker app - qikegu.com \n"); } }

3. 创建Dockerfile

创建Java文件之后,我们需要创建一个Dockerfile,其中包含了Docker的指令。在docker-java目录下创建Dockerfile,文件名必须是Dockerfile

Dockerfile

FROM java:8
COPY . /var/www/java
WORKDIR /var/www/java
RUN javac Qikegu.java
CMD ["java", "Qikegu"]

所有指令都大写,这是惯例。

现在docker-java目录下有2个文件:

[root@qikegu docker-java]# ls
Dockerfile  Qikegu.java

4. 构建 Docker 镜像

切换到docker-java目录,运行docker build -t qikegu-java .命令,构建Docker镜像。Docker镜像可以任意取名,此处命名为qikegu-java


[root@qikegu docker-java]# docker build -t qikegu-java . Sending build context to Docker daemon 3.072kB Step 1/5 : FROM java:8 ---> d23bdf5b1b1b Step 2/5 : COPY . /var/www/java ---> Using cache ---> 7f24b5fc6fb6 Step 3/5 : WORKDIR /var/www/java ---> Using cache ---> 2eacd7222454 Step 4/5 : RUN javac Qikegu.java ---> Using cache ---> bf254a2eec11 Step 5/5 : CMD ["java", "Qikegu"] ---> Using cache ---> 1842ec92df2d Successfully built 1842ec92df2d Successfully tagged qikegu-java:latest [root@qikegu docker-java]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE qikegu-java latest 1842ec92df2d 13 minutes ago 643MB <none> <none> 327ab0702d14 14 minutes ago 643MB ...

这里,最后使用docker images查看镜像,可以看到构建镜像成功。接下来就可以运行镜像了。

5. 运行 Docker 镜像

执行docker run qikegu-java命令运行镜像:

[root@qikegu docker-java]# docker run qikegu-java
This is java docker app - qikegu.com

[root@qikegu docker-java]#

可以看到,qikegu-java镜像成功运行,输出了一条信息。



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载