浅谈如何在linux上部署java环境

文章目录

  • 一、部署环境
    • 1.1、JDK
    • 1.2、Tomcat
    • 1.3、MySQL
  • 二、将自己写的的程序部署到云服务器上

一、部署环境

为了在linux上部署 Java web 程序,需要安装一下环境。

1.1、JDK

直接使用 yum 命令安装 openjdk。我们 windows系统上 下载的是 oracle 官方的 jdk。而 openjdk 是开源社区维护的开源版本,所以虽然 oracle 官方的 jdk 和开源社区的 jdk 不是同一个东西,但是他们相差不大,并且功能相互兼容。

linux 上当然可以直接安装官方提供的jdk,但是会比较麻烦。既然有简单的办法,那我们直接使用简单的方法即可。

1)、先明确你打算将 openjdk 安装在哪个目录下,就切换到哪个目录下进行安装。(但是其实jdk安装好后并不是放在这个目录下,linux上面安装软件会有专门的路径,不是我们指定目录下载,就下载到哪里的)
2)、yum list | grep jdk

在这里插入图片描述
3)、yum install jdk版本(或者 yum install -y jdk版本)
在这里插入图片描述
4)、javac 检验jdk是否安装成功
在这里插入图片描述

1.2、Tomcat

1)、yum list | grep tomcat

在这里插入图片描述
第一步是从源上获取所有软件包,然后再从这些软件包里筛选出包含 tomcat 关键字的软件包。但是由于我的云服务器使用的版本是 centos7,比较老版,所以没有tomcat8.x系列,一般新版的服务器都会有的。如果源上的软件包没有想要的tomcat版本,去tomcat官网下载压缩包,然后拖拽至云服务器即可。

怎么到tomcat官网下载tomcat压缩包,可以点击浅谈tomcat,到我这篇博课看看。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2)、unzip 压缩包名
使用 unzip 解压缩命令解压缩 tomcat 压缩包。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2)、chmod +x *.sh
该命令可将bin目录下的所有 .sh 文件变为可执行文件。
在这里插入图片描述
3)、sh startup.sh
在linux上启动tomcat。
在这里插入图片描述

4)、通过 ps 验证
验证tomcat是否启动成功
在这里插入图片描述
5)、也可以通过 netstat 验证tomcat是否启动成功
在这里插入图片描述
3)、也可以直接通过浏览器查看tomcat欢迎页面来验证tomcat在linux上启动成功

但是如果你的云服务器 防火墙(轻量服务器改防火墙)/安全组(ecs改安全组)没有开启8080端口,此时即使linux上启动tomcat成功了,也没办法在浏览器看到tomcat的欢迎页面。
在这里插入图片描述
开启云服务器的安全组的8080端口(我以阿里轻量服务器为示例,演示如何开启):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时就可以访问tomcat的欢迎页面了。
在这里插入图片描述

1.3、MySQL

选择最简单的安装方式,使用yum命令安装 mariadb 数据库,此数据库与 mysql 数据库功能相差不大,相互兼容。
安装流程

二、将自己写的的程序部署到云服务器上

1)、云服务器数据库得含有自己项目的库、表
当我们将自己的项目部署到云服务器上时,首先需要让云服务器上的数据库中含有自己项目对应的数据库、表。因为我们项目之前建的数据库、表是在本地的,项目部署到云服务器上就需要让项目访问的是云服务器上的数据库、表。

直接将本地的数据库、表脚本拷贝到云服务器上的数据库里执行即可。

2)、微调连接数据库的代码:主要改一下数据库名、数据库密码、以及数据库端口(端口号要和云服务器上mysql占用的端口一致)

3)、要是代码变化了,需要重新打包项目进行部署。

4)、有时候项目运行在本地是能够成功的,但是运行在云服务器上不一定能够成功。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

文件系统(操作系统实验)

实验内容 (1)在内存中开辟一个虚拟磁盘空间作为文件存储器, 在其上实现一个简单单用户文件系统。 在退出这个文件系统时,应将改虚拟文件系统保存到磁盘上, 以便下次可以将其恢复到内存的虚拟空间中。 (2&…

llama.cpp

https://github.com/echonoshy/cgft-llm 【大模型量化】- Llama.cpp轻量化模型部署及量化_哔哩哔哩_bilibili github.com/ggerganov/llama.cpp cd ~/code/llama.cpp/build_cuda/bin ./quantize --allow-requantize /root/autodl-tmp/models/Llama3-8B-Chinese-Chat-GGUF/Llama…

项目训练营第六天

项目训练营第六天 前端注册界面开发 1、基本布局 将登录界面文件夹复制一份,粘贴到上一层目录User目录下,改名为Register 在typings.d.ts文件中添加如下的登录前端接口函数标准参数 以及返回值类型 2、接口开发 在api.ts中修改原先接口如下&…

3.SQL注入-搜索型

SQL注入-搜索型 输入k字段进行搜索发现出用户信息 通过上图搜索可以猜测的sql语句为 select 字段1,字段2 from 表名 where username like %k%;在后台查询结果 select id,email from member where username like %k%;通过以上猜测进行构造payload语句 like %k% or 11 #%; …

mysql_config 命令, 可以查看mysqlclient库的位置在/usr/lib64/mysql下

好吧,其实我是从这里知道了 -l 后面加的库名和so文件这种名不一样,因为库文件实际叫下面这个名(前面有lib)。

零基础开始学习鸿蒙开发-页面导航栏布局设计

1.设定初始页(Idex.ets) import {find} from ../pages/find import {home} from ../pages/home import {setting} from ../pages/setting Entry Component struct Index {private controller: TabsController new TabsController()State gridMargin: number 10State gridGut…

【漏洞复现】致远互联FE协作办公平台——SQL注入

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 致远互联FE协作办公平台是一个专注于协同管理软件领域的数智化运…

论文学习——一种自适应提升的动态多目标优化进化算法

论文题目:A dynamic multi-objective optimization evolutionary algorithm with adaptive boosting 一种自适应提升的动态多目标优化进化算法(Hu Peng a,b,∗, Jianpeng Xiong a, Chen Pi a, Xinyu Zhou c, Zhijian Wu d)IEEE Swarm and Ev…

【Python游戏】猫和老鼠

本文收录于 《一起学Python趣味编程》专栏,从零基础开始,分享一些Python编程知识,欢迎关注,谢谢! 文章目录 一、前言二、代码示例三、知识点梳理四、总结一、前言 本文介绍如何使用Python的海龟画图工具turtle,开发猫和老鼠游戏。 什么是Python? Python是由荷兰人吉多范…

LeetCode热题100刷题2:283. 移动零、11. 盛最多水的容器、15. 三数之和、42. 接雨水

283. 移动零 挺简单的没啥说的 class Solution { public:void moveZeroes(vector<int>& nums) {//快慢指针 // 快指针负责往前遍历&#xff0c;慢指针记录快指针遍历过的把0撵走的最后一个元素的位置// 然后快指针遍历完之后&#xff0c;慢指针到结尾直接赋0就行in…

2-20 基于matlab的利用准二维发散喷嘴的特性法给出理想喷嘴的几何形状

基于matlab的利用准二维发散喷嘴的特性法给出理想喷嘴的几何形状。 假设气体从燃烧室排出&#xff0c;燃烧室内没有质量流量。 利用二维喷嘴流动关系&#xff0c;找到一个最佳喉管区域&#xff0c;该区域将在给定环境压力和燃烧室参数下产生最大推力。 该区域将自动设置并输入代…

Webpack: 7 款常用的性能分析工具

概述 Webpack 最大的优势在于它的功能非常强大、全面&#xff0c;加之繁荣活跃的组件生态&#xff0c;已经足够应对几乎所有 Web 构建需求&#xff0c;包括&#xff1a;SPA、MPA、SSR、桌面应用、Node 程序、WebAssemsbly、PWA、微前端等等&#xff0c;所以即使在近几年工程化…

网络io与select,poll,epoll

前言 网络 IO&#xff0c;会涉及到两个系统对象&#xff0c;一个是用户空间调用 IO 的进程或者线程&#xff0c;另一个是内核空间的内核系统&#xff0c;比如发生 IO 操作 read 时&#xff0c;它会经历两个阶段&#xff1a; 1. 等待数据准备就绪 2. 将数据从内核拷贝到进程或…

产品经理-对产品经理的认识(1)

今天跟大家聊一下产品经理这个岗位的,产品经理是互联网岗位当中比较火的一个岗位,也是最接近CEO的岗位 产品经理岗位&#xff0c;技术门槛低&#xff0c;薪水和前景都很不错&#xff0c;又处于团队的核心位置 产品经理岗位没有完全相关的专业设置和清晰的学习路径&#xff0c;绝…

HarmonyOS Next开发学习手册——选项卡 (Tabs)

当页面信息较多时&#xff0c;为了让用户能够聚焦于当前显示的内容&#xff0c;需要对页面内容进行分类&#xff0c;提高页面空间利用率。 Tabs 组件可以在一个页面内快速实现视图内容的切换&#xff0c;一方面提升查找信息的效率&#xff0c;另一方面精简用户单次获取到的信息…

第11章 规划过程组(11.5创建WBS)

第11章 规划过程组&#xff08;一&#xff09;11.5创建WBS&#xff0c;在第三版教材第380~383页&#xff1b; 文字图片音频方式 视频22 第一个知识点&#xff1a;主要输入 1、项目管理计划 范围管理计划 定义了如何根据项目范围说明书创建WBS2、项目文件 项目范围说明…

实验三 时序逻辑电路实验

仿真 链接&#xff1a;https://pan.baidu.com/s/1z9KFQANyNF5PvUPPYFQ9Ow 提取码&#xff1a;e3md 一、实验目的 1、通过实验&#xff0c;理解触发的概念&#xff0c;理解JK、D等常见触发器的功能&#xff1b; 2、通过实验&#xff0c;加深集成计数器功能的理解&#xff0c;掌…

Docker部署Dillinger个人文本编辑器

Docker部署Dillinger个人文本编辑器 一、Dillinger介绍1.1 Dillinger简介1.2 Dillinger使用场景 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、拉取Dillinger镜像五、部署Dill…

创建一个vue3+vite+ts项目

目录 创建项目 ​编辑 下载jsx 插件 在根目录在新建.env vue.config.js tsconfig.json tsconfig.node.json 下载ui组件库和路由&#xff08;组件库根据自己的项目需要选择&#xff09; 在根目录下新建views/index.tsx 在根目录下新建router/index.ts 修改App.vue 创建…

机器学习笔记 人脸识别技术全面回顾和小结(2)

一、现实条件 随着人脸识别研究的深入&#xff0c;研究者开始关注现实条件下的人脸识别问题&#xff0c;主要包括以下几个方面的研究。首先&#xff0c;我们分析和研究了影响人脸识别的因素。第二&#xff0c;新特征表示的使用研究。第三&#xff0c;使用新数据源的研究。如表1…