第四节 docker基础之---dockerfile部署JDK

本地宿主机配置jdk

创建test目录:

[root@docker ~]# mkdir test
压缩包tomcat和jdk上传到root/test目录下:

本机部署Jdk

解压jdk:

[root@docker test]# tar -xf jdk-8u211-linux-x64.tar.gz
[root@docker test]# tar -xf apache-tomcat-8.5.35.tar.gz
[root@docker test]# ll
总用量 199844
drwxr-xr-x 9 root root       220 2月   4 14:25 apache-tomcat-8.5.35
-rw-r--r-- 1 root root   9642757 2月   4 14:23 apache-tomcat-8.5.35.tar.gz
drwxr-xr-x 7   10  143       245 4月   2 2019 jdk1.8.0_211
-rw-r--r-- 1 root root 194990602 2月   4 14:23 jdk-8u211-linux-x64.tar.gz
[root@docker test]#
移动到/user/local/jdk目录下:

[root@docker test]# mv jdk1.8.0_211 /usr/local/jdk
修改配置文件:

[root@docker local]# vi /etc/profile
#进入之后到达最低行进行粘贴下面配置
export JAVA_HOME=/usr/local/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
加载环境变量:

[root@docker local]# source /etc/profile
执行java:

[root@docker local]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
[root@docker local]#出现1.8.8——211说明java环境已经配置完成
配置tomcat:
移动到/user/local/tomcat目录下:

[root@docker test]# mv apache-tomcat-8.5.35 /usr/local/tomcat
进入tomcat目录下:

[root@docker ~]# cd /usr/local/tomcat/
[root@docker tomcat]# ll
总用量 124
drwxr-x--- 2 root root  4096 2月   4 14:25 bin
-rw-r----- 1 root root 19539 11月  4 2018 BUILDING.txt
drwx------ 2 root root   238 11月  4 2018 conf
-rw-r----- 1 root root  6090 11月  4 2018 CONTRIBUTING.md
drwxr-x--- 2 root root  4096 2月   4 14:25 lib
-rw-r----- 1 root root 57092 11月  4 2018 LICENSE
drwxr-x--- 2 root root     6 11月  4 2018 logs
-rw-r----- 1 root root  1726 11月  4 2018 NOTICE
-rw-r----- 1 root root  3255 11月  4 2018 README.md
-rw-r----- 1 root root  7142 11月  4 2018 RELEASE-NOTES
-rw-r----- 1 root root 16262 11月  4 2018 RUNNING.txt
drwxr-x--- 2 root root    30 2月   4 14:25 temp
drwxr-x--- 7 root root    81 11月  4 2018 webapps
drwxr-x--- 2 root root     6 11月  4 2018 work
[root@docker tomcat]#
启动tomcat:

[root@docker local]# cd bin/
[root@docker bin]# ./startup.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk/jre
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
查看进程:

[root@docker bin]# ps -ef | grep tomcat
root       1699      1  3 14:46 pts/0    00:00:02 /usr/local/jdk/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root       1747   1479  0 14:47 pts/0    00:00:00 grep --color=auto tomcat
[root@docker bin]#
浏览器访问tomcat网页默认8080端口:

dockerfile部署JDK

FROM centos:7
ADD jdk-8u211-linux-x64.tar.gz /usr/local
RUN mv /usr/local/jdk1.8.0_211 /usr/local/jdk
ENV JAVA_HOME=/usr/local/jdk
ENV JRE_HOME=$JAVA_HOME/jre
ENV CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
ENV PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
ADD apache-tomcat-8.5.35.tar.gz /usr/local
RUN mv /usr/local/apache-tomcat-8.5.35 /usr/local/tomcat
EXPOSE 8080
ENTRYPOINT ["/usr/local/tomcat/bin/catalina.sh","run"]
创建dockerfile文档在压缩包目录下创建:

[root@docker test]# cat dockerfile
FROM centos:7
ADD jdk-8u211-linux-x64.tar.gz /usr/local
RUN mv /usr/local/jdk1.8.0_211 /usr/local/jdk
ENV JAVA_HOME=/usr/local/jdk
ENV JRE_HOME=$JAVA_HOME/jre
ENV CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
ENV PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
ADD apache-tomcat-8.5.35.tar.gz /usr/local
RUN mv /usr/local/apache-tomcat-8.5.35 /usr/local/tomcat
EXPOSE 8080
ENTRYPOINT ["/usr/local/tomcat/bin/catalina.sh","run"]
[root@docker test]#
进行执行:

[root@docker test]# docker build -t mycentos:jdk .
开启防火墙映射80端口:

[root@docker test]# systemctl restart firewalld
[root@docker test]# docker run -itd -p 80:8080 mycentos:jdk /bin/bash
6220d56db4101a1a64094dee1fd8dde1aa9c728134a0f969c5424b1d970b0376
[root@docker test]#
进行访问80端口:

配置挂载

创建一个目录:

[root@docker test]# mkdir ROOT
[root@docker test]# cd ROOT/
[root@docker ROOT]# pwd
/root/test/ROOT
执行:

[root@docker ROOT]# docker run -itd -p 8080:8080 -v /root/test/ROOT:/usr/local/tomcat/webapps/ROOT mycentos:jdk /bin/bash                df61af407921dee07f06a66c1a517822c55c9f4e7609412d95d961412c097366
创建一个网页文件:

[root@docker ROOT]# cat index.html
hello world
[root@docker ROOT]#
进行访问8080端口:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/70745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】深入理解linux权限

🌟🌟作者主页:ephemerals__ 🌟🌟所属专栏:Linux 目录 前言 一、权限是什么 二、用户和身份角色 三、文件属性 1. 文件属性表示 2. 文件类型 3. 文件的权限属性 四、修改文件的权限属性和角色 1. …

网络分析工具—WireShark的安装及使用

Wireshark 是一个广泛使用的网络协议分析工具,常被网络管理员、开发人员和安全专家用来捕获和分析网络数据包。它支持多种网络协议,能够帮助用户深入理解网络流量、诊断网络问题以及进行安全分析。 Wireshark 的主要功能 数据包捕获与分析: …

头条百度批量采集软件说明文档

旧版说明文档《头条号文章批量采集软件4.0版本说明文档!头条/微头条文章批量采集》 头条的采集软件已经更新了好多个版本了,一直没有做详细的介绍文档,最近更新了一些功能进去,一块来写一下说明文档。 1、主界面 2、头条作者采集…

echarts 3d中国地图飞行线

一、3D中国地图 1. 一定要使用 echarts 5.0及以上的版本; 2. echarts 5.0没有内置中国地图了。点击下载 china.json; 3. 一共使用了四层地图。 (1)第一层是中国地图各省细边框和展示南海诸岛; (2)第二层是…

Unity游戏(Assault空对地打击)开发(7) 爆炸效果

效果 准备 首先请手搓一个敌军基地。 然后添加一个火焰特效插件或者自建。 爆炸脚本编写 新建一个脚本命名为Explode。 无需挂载到对象上。 首先是全部代码。 using System.Collections; using System.Collections.Generic; using System.Linq; using TMPro; using UnityEngine…

NLP面试之-激活函数

一、动机篇 1.1 为什么要有激活函数? 数据角度:由于数据是线性不可分的,如果采用线性化,那么需要复杂的线性组合去逼近问题,因此需要非线性变换对数据分布进行重新映射;线性模型的表达力问题:由于线性模型…

windows server独立部署Qwen2.5-vl-7B

服务器配置信息 CPU:64G GPU:48G(RTX 4090) 一、使用conda下载模型 Qwen2.5-VL-7B-Instruct conda下载 conda create --name qwen python3.11 conda activate qwen 魔塔社区下载模型 pip install modelscope modelscope downl…

2025影视泛目录站群程序设计_源码二次开发新版本无缓存刷新不变实现原理

1. 引言 本设站群程序计书旨在详细阐述苹果CMS泛目录的创新设计与实现,介绍无缓存刷新技术、数据统一化、局部URL控制及性能优化等核心功能,以提升网站访问速度和用户体验。 2. 技术概述 2.1 无缓存刷新技术 功能特点: 内容不变性&#x…

在大型语言模型(LLM)框架内Transformer架构与混合专家(MoE)策略的概念整合

文章目录 传统的神经网络框架存在的问题一. Transformer架构综述1.1 transformer的输入1.1.1 词向量1.1.2 位置编码(Positional Encoding)1.1.3 编码器与解码器结构1.1.4 多头自注意力机制 二.Transformer分步详解2.1 传统词向量存在的问题2.2 详解编解码…

win10 llamafactory模型微调相关②

微调 使用微调神器LLaMA-Factory轻松改变大语言模型的自我认知_llamafactory 自我认知-CSDN博客 【大模型微调】使用Llama Factory实现中文llama3微调_哔哩哔哩_bilibili 样本数据集 (数据集管理脚本处需更改,见报错解决参考1) 自我认知微…

从基础到人脸识别与目标检测

前言 从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。 颜…

06排序 + 查找(D2_查找(D2_刷题练习))

目录 1. 二分查找-I 1.1 题目描述 1.2 解题思路 方法:二分法(推荐使用) 2. 二维数组中的查找 2.1 题目描述 2.2 解题思路 方法一:二分查找(推荐使用) 3. 寻找峰值 3.1 题目描述 3.2 解题思路 方…

防火墙综合练习2

准备阶段 实验拓扑图如下: 试验要求如下: 需求一:完成相关配置 需求二:配置DHCP协议 需求三:防火墙安全区域配置 需求四:防火墙地址组信息 需求五:管理员 需求六:用户认证…

Word中Ctrl+V粘贴报错问题

Word中CtrlV粘贴时显示“文件未找到:MathPage.WLL”的问题 Word的功能栏中有MathType,但无法使用,显示灰色。 解决方法如下: 首先找到MathType安装目录下MathPage.wll文件以及MathType Commands 2016.dotm文件,分别复…

什么是FPGA?

目录 一、什么是 FPGA 二、FPGA 的发展历史 三、FPGA 的基本结构 可编程逻辑单元(CLB) 输入输出块(IOB) 块随机访问存储器模块(BRAM) 时钟管理模块(CMM) 四、FPGA 的工作原理…

ESP8266配置为TCP客户端,连接电脑和手机(使用Arduino配置)

一、简介 基于 ESP8266 的 Arduino 代码,其主要功能是将 ESP8266 连接到指定的 Wi-Fi 网络,并与指定 IP 地址和端口号的服务器建立 TCP 连接。在连接成功后,实现了串口和网络数据的双向传输,也就是将从串口接收到的数据通过 Wi-Fi…

【深度学习】多目标融合算法(四):多门混合专家网络MMOE(Multi-gate Mixture-of-Experts)

目录 一、引言 二、MMoE(Multi-gate Mixture-of-Experts,多门混合专家网络) 2.1 技术原理 2.2 技术优缺点 2.3 业务代码实践 2.3.1 业务场景与建模 2.3.2 模型代码实现 2.3.3 模型训练与推理测试 2.3.4 打印模型结构 三、总结 一、…

9 数据流图

9 数据流图 9.1数据平衡原则 子图缺少处理后的数据操作结果返回前端应用以及后端数据库返回操作结果到数据管理中间件。 9.2解题技巧 实件名 存储名 加工名 数据流

Hdoop之MapReduce的原理

简单版本 AppMaster: 整个Job任务的核心协调工具 MapTask: 主要用于Map任务的执行 ReduceTask: 主要用于Reduce任务的执行 一个任务提交Job --> AppMaster(项目经理)--> 根据切片的数量统计出需要多少个MapTask任务 --> 向ResourceManager(Yarn平台的老大)索要资源 --…

Linux云计算SRE-第六周

1. 总结openssh服务安全加固和总结openssh免密认证原理,及免认证实现过程。 1、 openssh服务安全加固 OpenSSH(Open Secure Shell)服务安全加固是确保远程登录会话和其他网络服务安全性的关键步骤。以下是一些常见的OpenSSH服务安全加固措施…