Docker容器化Java程序

简介: Docker容器化Java程序



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

🌼 结语:创作不易,如果觉得博主的文章赏心悦目,还请——点赞👍收藏⭐️评论📝


目录
打赏
0
0
0
0
7
分享
相关文章
容器技术实践:在Ubuntu上使用Docker安装MySQL的步骤。
通过以上的操作,你已经步入了Docker和MySQL的世界,享受了容器技术给你带来的便利。这个旅程中你可能会遇到各种挑战,但是只要你沿着我们划定的路线行进,你就一定可以达到目的地。这就是Ubuntu、Docker和MySQL的灵魂所在,它们为你开辟了一条通往新探索的道路,带你亲身感受到了技术的力量。欢迎在Ubuntu的广阔大海中探索,用Docker技术引领你的航行,随时准备感受新技术带来的震撼和乐趣。
39 16
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
96 30
揭秘 Microsoft.Docker.SDK:让容器开发更轻松的强大工具揭秘
随着云计算和容器技术的快速发展,`Docker` 已经成为容器化技术的事实标准。`Microsoft` 作为 `Docker` 的主要支持者和参与者,推出了 `Microsoft.Docker.SDK`,旨在帮助开发者更轻松地进行容器开发。本文将深入揭秘 Microsoft.Docker.SDK 的功能、使用方法以及它在容器开发中的应用。
45 12
docker容器为啥会开机自启动
通过配置适当的重启策略,Docker容器可以在主机系统重启后自动启动。这对于保持关键服务的高可用性和自动恢复能力非常有用。选择适合的重启策略(如 `always`或 `unless-stopped`),可以确保应用程序在各种情况下保持运行。理解并配置这些策略是确保Docker容器化应用可靠性的关键。
339 93
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
Java容器及其常用方法汇总
Java Collections框架提供了丰富的接口和实现类,用于管理和操作集合数据。
Java容器及其常用方法汇总
Docker+consul容器服务的更新与发现
通过本文的介绍,我们详细探讨了如何结合Docker和Consul来实现容器服务的更新与发现。通过Consul的服务注册和发现功能,可以高效地管理和监控容器化服务,确保系统的高可用性和可扩展性。希望本文能帮助您在实际项目中更好地应用Docker和Consul,提高系统的可靠性和管理效率。
79 23
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
437 15
8G的容器Java堆才4G怎么就OOM了?
本文记录最近一例Java应用OOM问题的排查过程,希望可以给遇到类似问题的同学提供参考。