Docker容器中安装Java环境,配置Redis环境

 

应用介绍

本应用为一个接口服务,旨在对外提供RestfullAPI,提供json格式数据。计划采用Docker形式发布到Linux服务器上。

Docker安装

见我前两篇文章

Java环境

一、在Docker容器中,采用tar zvxf jdk1.8XXX.gz的方法,再docker commit生成镜像,再run镜像,在新容器中,Java环境失效!

二、容器与宿主机共用Java,即采用宿主机的JDK

1、宿主机安装JDK。采用解压的方法即可,比如我的安装在/demo/jdk1.8.0_144下

2、维护配置文件/etc/profile,即将下述代码考到profile文件末尾。这里重点说明一下

export JAVA_HOME=/home/demo/jdk1.8.0_144
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

  • 由于我将要起动镜像时,要把容器中的Java路径映射到/home/demo,所以下面的路径就写/home/demo,注意:这里是指的容器中的目录
  • 另,由于我的镜像中没有vim,所以索性把配置文件profile全都在宿主机上写好。当然,我是提前把容器中的profile文件考到宿主机上,再用vim编辑的,配置好后,再考回容器

3、run镜像。这里要注意-v参数,需要与和宿主机的目录对应好。我的是

docker run -it -p 7020:7020 -v /demo:/home/demo 镜像ID 

三、通过Dockerfile安装JDK1.8.0_1.44

https://www.cnblogs.com/1124li/p/11661262.html

 

Redis配置

考虑到Redis数据库的属性,不应该把它也安装到Docker之上。所以修改应用的配置文件application.yml,将Redis部分,设置为某台安装了Redis的宿主机的IP,如下图:

Docker容器中安装Java环境,配置Redis环境_第1张图片

这样,将Javat和Redis环境准备好,就可以起动启动镜像,在容器中运行应用了

服务起动

1、run镜像。这里要注意-v参数,需要与和宿主机的目录对应好。我的是

docker run -it -p 7020:7020 -v /demo:/home/demo 镜像ID 

2、注意,刚起动时,java环境并没有起作用,所以这时输入java -version时,会提示command not found。原因这之前要运行:source /etc/profile

3、这样就可以运行Java了

 

 

 

你可能感兴趣的:(Docker,Linux,JDK)