你学会如何将项目部署到Linux系统上了吗?

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。

23.Linux的网络管理


  • Linux系统中,所有的配置文件存在于 etc目录下。
  • 使用vi命令来修改网络ip地址的配置文件:vi /etc/syscongig/network-scripts/ifcfg-ens33

修改这个配置文件中对应的信息

  • BOOTPROTO = "static"
  • ONBOOT= "yes"
  • IPADDR=192.168.11.128 (ip地址)
  • GATEWAY=192.168.11.2 (网关地址)
  • DNS=192.16.11.2 (域名解析系统)

只修将这个配置文件中的信息改变为:static、yes。其中IP地址、网关协议以及域名解析系统公司用给出,直接按着修改即可。


24.Linux中关于进程的管理


  • 线程的概念:一个程序的执行线路,一个程序可以有多个线程。
  • 进程的概念:一个程序的执行,一个进程会占用一个端口。

注意:一个进程可以有多个线程。只要是可执行的文件(.exe)或者命令就是一个进程,会占用一个端口。

在Windows中,SYSTEM对应的系统进程,Admin对应的用户进程。

微信截图_20220610095029.png

查看Linux中进程信息

  • ps : 这个命令只能查看Liunx系统中的用户应用的进程,不能查看系统的进程。
  • ps -e :查看Linux中的所有的进程(用户进程以及系统进程),简化显示进程信息。
  • ps -ef : 已全格式的形式显示Liunx中的所有的进程。
  • ps -ef|grep mysql : 查看指定执行的文件的全格式进程信息。(查看程序是否正常启动以及这个程序所对应的端口号。)

关闭Linux中的进程

  • 使用ps命令查看进程的PID。
  • 使用命令kill -9 PID 来关闭这个进程。


25.Linux中服务的管理


  • 服务是支持Linu运行的一些必要的程序,本质上也是进程,叫做守护进程。守护进程通常默默地运行在后台,为应用程序提供必要支撑,比如:sshd(接收和处理远程连接的)、防火墙等。
  • 新版操作服务:systemctl [start|stop|restart|reload|status|enable] 服务名称。
  • 旧版操作服务:service [start|stop|restart|reload|status|enable] 服务名称。

举列说明:

  • 查看防火墙状态:systemctl status firewalld
  • 关闭防火墙:systemctl stop firewalld
  • 开启防火墙:systemctl start firewalld


26. Linux中软件包的管理(软件的安装与卸载)


  • 这个主要是管理软件的安装包
  • RPM:一种Linux的软件包的打包和安装工具,它操作的软件包都是 .rpm结尾的安装包。

因为RPM已经称为Linux系统中重要的安装和解压工具,所以在Linux系统中内置了关于操作RPM的rpm命令。可以直接通过命令来操作这些.rpm安装包。

  • 查看当前系统中全部已经安装的rpm包:rpm -qa
  • 使用过滤的方式查找指定的rpm暗转包:rpm -qa|grep firefox
  • 卸载rpm安装包:rpm -e 指定包名(firefox)
  • 安装rpm包:rpm -ivh xxx.rpm

这种方式不需要连接网络。


27. YUM包管理(使用居多)


  • 这个YUM收集了全世界的rpm包,相当于Maven仓库,我们需要什么rmp安装包直接到这个YUM仓库中搜索下载即可,并且使用YUM这个仓库他会自动下载你需要的这个rpm安装包的依赖rpm包,先下载依赖的rpm包最后在下载这个需要的rpm包。是一种基于RPM的软件包管理工具,它能够从指定服务器上自动下载RPM包并且自动安装,可以自动处理软件包之间的依赖关系。
  • 查看当前系统中已经安装的rpm软件包:yum list installed
  • 使用过滤的方式查看指定的rpm安装包:yum list installed|grep firefox
  • 卸载rpm软件包:yum remove (指定软件)firefox.x86_64
  • 安装rpm软件包:yum install firefox

这种方式必须连接网络。


28.Linux中搭建JavaEE的开发环境


  • 我们是在windows系统中使用idea集成开发环境等工具来编写一个项目,之后进行打包,部署到Linux服务器上。在Linux不进行代码的编写。我们只需要在Liunx服务器配置好运行Java项目的环境即可。


28.1 在Linux系统中安装JDK(需要配置环境变量)


第一步:先将软件通过xftp5上传到/opt下

微信截图_20220610095122.png

第二步:解压到/opt目录下 (tar -zxvf 压缩包 -C(大写的C) 解压到的路径)

微信截图_20220610095131.png

第三步:配置环境变量的配置文件Vim /etc/profile

JAVA_HOME=/opt/jdk1.7.0_79
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/lib:.
export JAVA_HOME PATH CLASSPATH
复制代码

第四步:是配置文件生效

  • source profile

第五步:测试安装成功

  • java -version


28.2 安装Tomcat(不需要配置环境变量)


第一步:将Tomcat压缩包通过xftp5上传到/opt下

微信截图_20220610095210.png

第二步:解压到 /opt目录下

微信截图_20220610095221.png

第三步:启动Tomcat

微信截图_20220610095238.png

第四步:Linux上访问Tomcat

  • 在Windows系统上可执行文件叫做.exe,在Linux系统上执行文件叫.sh
  • 解压之后在tomcat软件的bin目录下找到 startup.bat 启动Tomcat。

如果想在windows系统上访问Linux系统上的Tomcat,首先需要将Linux系统的防火墙关闭,之后再Windos系统中输入:http://Linux的ip地址:8080 ,此时就可以再Winodws系统上访问Linux系统上的Tomcat。


28.3 安装MySQL


第一步:查看是否已经安装了mariadb

  • 检查Linux是否安装了mariadb数据库,mariadb数据库是mysql的分支。是免费开源的。mariadb数据库和mysql数据库会发生冲突。首先要检查是否安装了mariadb数据库,如果安装了需要将其卸载掉。
  • 检查是否存在mariadb数据库:yum list installed | grep mariadb
  • 卸载命令:yum -y remove xxx,如果卸载不成功,需要去掉参数-y,手动确认卸载。

微信截图_20220610095337.png

第二步:上传mysql安装包到 /opt目录下

微信截图_20220610095345.png

第三步:解压mysql安装包到 /opt 目录下

微信截图_20220610095357.png

第四步:修改解压后的根目录名

微信截图_20220610095412.png

第五步:创建数据文件夹data(可以创建任意名称的文件夹,建议创建data文件夹)

  • data文件夹是mysql用来存放数据库文件的,数据库的表数据都放在data目录下。默认是没有data文件夹的,我们需要手工创建data目录,在mysql-5.7.18文件夹目录下创建一个data文件夹。

微信截图_20220610095511.png

第六步:创建用来执行mysql命令的Linux用户

  • 创建mysql用户(建议,可以任意命名)。用来执行MySQL的命令mysqld(就是对mysql进行开启、关系以及其他的操作),此命令用来初始化mysql的基础信息。可以使用其他用户,例如:mysqldb等...但是不推荐使用。

微信截图_20220610095522.png

第七步:初始化mysql

  • 使用mysql的mysqlid命令初始化数据库的基本信息。切换到mysql-5.7.18/bin目录下执行。
  • 命令:mysqld -initialize -user = mysql-datadir=/opt/mysql-5.7.18/data -basedir=/opt/mysql-5.7.18

参数说明:

  • -initialize : 初始化mysql,创建的root,随机生成密码。记住密码,登录mysql使用。
  • -user :执行mysql命令的Liunx用户名
  • -datadir :mysql数据文件的存放位置,目录位置参照本机的设置。
  • -basedir :mysql安装程序的目录,目录位置参照本机的设置。

该命令执行后,会生成一个临时的mysql数据库root用户的密码,请先拷贝出来记住,后续第一次登录mysql需要使用。

微信截图_20220610095600.png

密码是:LTt+nCxrx0xM

第八步:启用安全功能

  • 在服务器与客户机之间来回传输的所有数据进行加密。通过证书提供了身份验证机制,mysql命令程序 mysql_ssl_rsa_setup提供了开启数据加密的功能,生成数字证书。
  • 在mysql-5,7,18/bin目录下执行命令: ./mysql_ssl_rsa_setup-datadir=/opt/mysql-5.7.18/data

微信截图_20220610095608.png

第九步:修改安装目录权限

  • mysql安装后,需要更改mysql-5.7.18整个文件夹目录权限,更改所属用户和组为之前创建的mysql用户及其所在组。在mysql安装目录的上级(/opt)位置,执行命令chown。

微信截图_20220610095615.png

第十步:启动mysql服务

  • 启动mysql服务,mysql-5.7.18/bin目录下执行命令: ./mysqld_safe &(其中&符号表示后台启动),输入命令后按Enter

微信截图_20220610095709.png

确认mysql是否启动成功,查看进程,使用 ps -ef | grep mysql

第十一步:关闭mysql

  • 在mysql-5.7.18目录下执行: ./mysqladmin -uroot -p shutdown 输入密码关闭

微信截图_20220610095725.png

  • 查看mysql进行,确认mysql服务是否关闭成功

微信截图_20220610095733.png

29.将项目部署到Liunx系统服务器上


第一步:需要将项目的数据库存储为sql文件,将这个sql文件导入到Linux系统中。

  • 具体操作:
  • 第一步:在windows的cmd中使用命令:mysqldump -u账号 -p密码 数据库名 > 文件存储的绝对路径。注意:执行mysqldump命令,直接在Windows控制台下执行,无需登录mysql。并且在mysql下执行这个命令是错误的。
  • 微信截图_20220610095825.png
  • 第二步:将这个sql文件用过xftp等工具传入到Linux中,一般传入到opt目录下。
  • 微信截图_20220610095835.png
  • 第三步:在Liunx中登录并创建一个数据库(这个数据路与windows中的数据库名字一致,这样做是保证war包中连接数据库的信息不用发生改变。)
  • 微信截图_20220610095847.png
  • 第四步:执行sql脚本文件(sourec + sql文件路径),此时是在Linux系统中进行的操作。
  • 微信截图_20220610095855.png
  • 第五步:导入成功。完成了Windows到Linux数据库的导入。

第二步:使用idea或者其他编辑器将项目导出为一个war包。(导出war包可以使用idea中Build导出war包,也可以使用Maven到处war包),这里需要修改项目中连接数据库的信息,将其修改为Linux系统中用户名、密码以及数据库的名称端口号等...

第三步:将生成的war包导入到Linux系统中的tomcat软件中的webapp下,此时Linux系统中的Tomcat会自动解压这个war包并运行。

第四步:启动Linux系统中的Tomcat,在Tomcat的bin目录下找到startup.sh启动Tomcat。使用命令:./startup.sh

第五步:此时就可以在Linux浏览器的网址栏输入此项目的url来访问这个项目。主机的ip地址此时就是Linux本机的。http://127.0.0.1:8080/crm/login.jsp

第六步:在Windows上访问Linux服务器上的这个项目。此时主机的iP地址就不是本机的了,需要使用部署项目的这台Linux系统的ip地址。http://192.168.11.128:8080/crm/login.jsp 。注意:需要关闭Linux系统中饿防火墙。

连接虚拟机的时候使用的虚拟网卡,不是实际的网卡。

我们此时使用的是虚拟的Linux系统,不是实际存在的电脑,所以使用虚拟网卡,在实际开发中,Linux会部署到一个Linxu服务器上,这个服务器是真是存在的,此时就需要使用实际网卡。

  • 虚拟网卡

微信截图_20220610100029.png

  • 实际网卡

微信截图_20220610100039.png



相关文章
|
6天前
|
IDE Linux 开发工具
Linux 系统上安装
在Linux和Mac上安装Lua 5.3.0只需下载源码,解压,编译和安装。Windows用户可选择SciTE IDE或通过LuaForWindows在Github或Google Code下载安装。创建 HelloWorld.lua,使用`lua HelloWorld.lua`运行显示"Hello World!"。另可参考LuaDist官方推荐方式安装。
|
1天前
|
关系型数据库 MySQL Linux
在Linux系统中安装MySQL数据库
在Linux系统中安装MySQL数据库
19 3
|
1天前
|
运维 关系型数据库 MySQL
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
|
1天前
|
运维 Linux Shell
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
|
1天前
|
运维 Linux Shell
day02-Linux运维-系统介绍与环境搭建_硬件 系统核心 解释器shell 外围操作系统
day02-Linux运维-系统介绍与环境搭建_硬件 系统核心 解释器shell 外围操作系统
|
1天前
|
运维 Linux 程序员
最全查看Linux系统状态脚本_linux查询所有服务器信息的脚本,墙都不扶就服你
最全查看Linux系统状态脚本_linux查询所有服务器信息的脚本,墙都不扶就服你
最全查看Linux系统状态脚本_linux查询所有服务器信息的脚本,墙都不扶就服你
|
4天前
|
运维 Linux
CentOS系统openssh-9,你会的还只有初级Linux运维工程师的技术吗
CentOS系统openssh-9,你会的还只有初级Linux运维工程师的技术吗
|
5天前
|
监控 JavaScript Linux
Linux系统之部署Homepage个人导航页
【5月更文挑战第13天】Linux系统之部署Homepage个人导航页
27 1
|
6天前
|
监控 JavaScript 网络协议
Linux系统之安装uptime-kuma服务器监控面板
【5月更文挑战第12天】Linux系统之安装uptime-kuma服务器监控面板
20 0
|
6天前
|
Linux Perl
Linux系统的文本处理
Linux系统的文本处理