Docker容器化Java程序
Docker:用于创建和管理容器的开源平台
Java运行环境:Java是一个跨平台的编程语言,因此在CentOS系统中需要安装Java运行环境才能运行Java代码
以下是在CentOS系统中容器化一个简单的Java代码"Hello, World!"的具体步骤:
- 安装Docker
使用以下命令安装Docker:
sudo yum install docker
- 安装Java运行环境
使用以下命令安装Java运行环境:
sudo yum install java-1.8.0-openjdk-devel
- 测试环境
echo $JAVA_HOME #查看当前系统中设置的 Java 环境变量 JAVA_HOME 的值
which javac # Java 编译器 javac 的路径
- 创建HelloWord.Java文件(内容如下:)
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }
- 编写Java代码
在CentOS系统中创建一个名为HelloWorld.java的文件,包含以下内容:(文件保持与dockerfile同一目录)
javaCopy codepublic class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }
- 编写Dockerfile
创建一个空的目录用于编写 Dockerfile,例如:
mkdir docker-demo cd docker-demo
在该目录下创建一个名为 Dockerfile 的文件,并使用文本编辑器打开它,例如:
vim Dockerfile
# 使用官方CentOS 7作为基础镜像 FROM centos:7 # 安装Java RUN yum update -y && \ yum install -y java-1.8.0-openjdk-devel && \ yum clean all # 配置java环境 ENV JAVA_HOME /usr/lib/jvm/java-1.8.0-openjdk ENV PATH $PATH:$JAVA_HOME/bin # 复制应用程序Java文件到容器中 COPY HelloWorld.java /app/HelloWorld.java # 设置工作目录 WORKDIR /app # 编译Java文件 RUN javac HelloWorld.java # 运行应用程序 CMD ["java", "HelloWorld"]
上述Dockerfile中使用了官方CentOS 7作为基础镜像,安装了Java运行环境,复制应用程序Java文件到容器中的/app目录下,并设置/app为工作目录,然后编译Java文件,并使用CMD指令启动应用程序
FROM
:从一个已有的镜像作为基础镜像
MAINTAINER
:指定镜像作者信息
RUN
:在容器内执行命令
COPY
:将文件从本地主机复制到容器内
EXPOSE
:声明镜像中的容器会监听哪些端口
CMD
:定义容器启动命令
ENV
:指令用于设置环境变量
- 构建Docker镜像
在Dockerfile所在目录下,执行以下命令构建Docker镜像:
sudo docker build -t hello-world .
其中
hello-world
为镜像名称,.
表示Dockerfile所在目录
- 运行Docker容器
构建Docker镜像后,可以使用以下命令运行Docker容器:
sudo docker run hello-world
其中
hello-world
为容器的名称或者镜像的名称。
- 查看输出结果
在容器启动后,控制台输出"Hello, World!"
以上是在CentOS系统中容器化一个简单的Java代码"Hello, World!"的具体步骤
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile
rpm -qa | grep java
rpm -e
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
🌼 结语:创作不易,如果觉得博主的文章赏心悦目,还请——
点赞
👍收藏
⭐️评论
📝