在linux上部署自己开发的web项目

前言:相信有很多做开发的小伙伴和我之前一样,只会在windows环境下,利用开发工具开发运行web项目,但是却不知道怎么把开发好的项目部署到linux服务器上去,并能够外网访问,这里是我自己摸索总结的过程,包括了linux的一些常用的命令,希望能帮助到更多的人;文章中还有很多不足的地方,我会慢慢的和大家一起学习进步,慢慢的完善知识技术体系。

实验环境:虚拟机上的centos7

web项目,首先是要在linux上搭建好web服务器运行环境,需要提前下载好tomcat和jdk,我下载的是如下版本的(mysql系统自带的有):(jdk有系统自带的,但是没有配环境变量,我在这里自己安装自己的版本)

apache-tomcat-8.5.35.tar.gz

jdk-8u191-linux-x64.gz

一.配置jdk环境

虽然系统自带的有jdk,但是我要安装自己下载的jdk,所以要先把之前的jdk卸载删除之后,在安装自己的jdk,安装完成之后要配置环境变量。

1.卸载之前的环境变量

查看系统现有的jdk

java -version

检测已经安装的jdk安装包:

rpm -qa | grep java

卸载:

yum remove *openjdk*

2.安装自己的jdk

把jdk从windows上传到linux(默认会上传到当前下),但是一般都不直接在root下安装,所以把jdk拷贝一份到/usr/java/下,所以

首先在/usr/下建立一个文件夹java:

mkdir /usr/java

然后把jdk拷贝到该目录下:

cp /root/jdk-8u191-linux-x64.gz /usr/java/

切换到java目录下进行解压:

tar -xvf jdk-8u191-linux-x64.gz

解压完成之后就是配置环境变量:

编辑文件:vim /etc/profile

在文件的最后增加如下内容:

export JAVA_HOME=/usr/java/jdk1.8.0_191

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib

export JAVA_HOME PATH CLASSPATH

:wq 保持退出

然后执行命令:source /etc/profile(目的是使修改的文件生效)

最后查看jdk版本:java -version

二.安装tomcat(需要jdk环境,所以要先安装jdk)

1.上传tomcat包,拷贝到/usr/tomcat/目录下,然后解压

2.配置环境变量:

编辑文件;

编辑文件:vim /etc/profile

和刚才的合并起来如下:

export JAVA_HOME=/usr/java/jdk1.8.0_191

export CATALINA_HOME=/usr/tomcat/apache-tomcat-8.5.35

export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib

export JAVA_HOME PATH CLASSPATH CATALINA_HOME

保存退出。

注:

/usr/tomcat/apache-tomcat-8.5.35/conf/server.xml可以配置tomcat的端口;

/usr/tomcat/apache-tomcat-8.5.35/logs/catalina.out是tomcat的启动日志;

3.启动tomcat

进入目录:cd /usr/tomcat/apache-tomcat-8.5.35/bin

直接执行:startup.sh脚本启动,

可以查看上述的启动日志,检查有没有报错,然后在浏览器中访问tomcat,若可以访问则没有问题,如果日志没报错,但是访问不了,要检查防火墙是否关闭等,可以使用命令iptables -F,然后检查selinux是否有影响,如果有则setenforce 0,暂时关闭。

三.安装mysql

这个系统自带的有,名字叫mariadb,其实就是MySQL的免费版

1.直接安装就可以了:

yum install -y mariadb-server mariadb

2.然后启动mysql服务:

systemctl start mariadb

3.启动之后设置数据库用户和密码:

mysqladmin -u root password  "密码"

4.然后就可以连接登录了:

mysql -u root -p密码

四.部署web项目

分为三个步骤;

1.项目打包

将开发好的web项目打包为war包

2.将war包上传到

/usr/tomcat/apache-tomcat-8.5.35/webapps目录下

注:只要把war包放到此目录下,tomcat会自动解压,不需要手动干涉。

3.执行mysql脚本

进入mysql,然后执行该web项目的建库建表等的脚本(我

本人是直接粘贴执行的 ^!^)。

上述做完之后就可以打开浏览器来访问了项目了,是不是很简单了。

在linux上部署自己开发的web项目的更多相关文章

  1. linux 上部署tomcat的java web项目,会出现post提交request.request.getParameter()的得不到值的情况

    有时候明明在windows上非常的正常,而在linux上就不正常了,在windows上post提交request.request.getParameter()有值,而在liunx上没有值. 我开始以为 ...

  2. 在英文Win7操作系统上部署C#开发的Web系统出现乱码的解决方法

    今天,迁移机器,把一个使用C#开发的Web系统部署到一台英文版Win7操作系统上,部署好以后,系统可以登录,只是网页上出现汉字乱码. 在这台电脑上,打开Word等文本编辑器,是可以正常输入.显示中文的 ...

  3. 在Linux上部署Web项目

    You believe it or not there is a feeling, lifetime all not lost to time. 在Linux上部署Web项目 这个是普通的web项目, ...

  4. Linux上部署web服务器并发布web项目-转

    Linux上部署web服务器并发布web项目   近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...

  5. Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务

    文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...

  6. Linux上部署SVN

    Linux上部署SVN author:headsen chen  2017-10-16  16:45:04 前提:通过yum来安装,必须是centos6.5的桌面版的.否则会出现某些的安装包不全而导致 ...

  7. 在linux上部署tomcat服务

    在linux上部署tomcat 1.安装JDK 2.下载tomcat http://tomcat.apache.org/download-70.cgi 3.上传到服务器,并解压 4.上传war包或者已 ...

  8. 一、netcore跨平台之 Linux上部署netcore和webapi

    这几天闲着的时候在linux上部署了一下netcore webapi,下面就纪要一下这个过程. 中间遇到不少的坑,心里都是泪啊. 话不多说,开始干活. ------------------------ ...

  9. Linux上部署多个tomcat端口设置

    在Linux上部署多个tomcat主要是防止端口冲突的问题, tomcat服务器需配置三个端口才能启动,安装时默认启用了这三个端口,当要运行多个tomcat服务时需要修改这三个端口,不能相同.端口一: ...

随机推荐

  1. Python设计模式(10)-模板模式

    class DbManager: def insert(self): pass def dele(self): pass class DbManager: def insert(self): pass ...

  2. 【python实现卷积神经网络】优化器的实现(SGD、Nesterov、Adagrad、Adadelta、RMSprop、Adam)

    代码来源:https://github.com/eriklindernoren/ML-From-Scratch 卷积神经网络中卷积层Conv2D(带stride.padding)的具体实现:https ...

  3. 3分钟掌握Quartz.net分布式定时任务的姿势

    引言 长话短说,今天聊一聊分布式定时任务,我的流水账笔记: ASP.NET Core+Quartz.Net实现web定时任务 AspNetCore结合Redis实践消息队列 细心朋友稍一分析,就知道还 ...

  4. Docker-Bridge Network 03 自定义网络

    本节介绍自定义bridge network的自定义网络. 1.前言2.创建自定义网络2.1 创建网络2.2 指定网段创建网络3.创建容器3.1 指定网络创建容器3.2 指定IP创建容器4.通信4.1 ...

  5. R - Cow and Message CodeForces - 1307C

    思路对了,但是不会写. 等差数列长度不是1就是2,所以不是一个字母就是俩字母,一开始写的时候直接枚举两个字母,然后让次数相乘.这样是不对的,比如abaabb,字母ab的个数应该是3+2+2,因该是每一 ...

  6. 一起了解 .Net Foundation 项目 No.24

    .Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. Xamarin.Mobil ...

  7. JAVA快速排序代码实现

    通过一趟排序将要排序的数据分割成独立的两部分:分割点左边都是比它小的数,右边都是比它大的数.然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列. 快速 ...

  8. [半翻] 设计面向DDD的微服务

    这篇文章行文结构对照微软博客, 结合本人意译和多年实践的回顾思考形成此次读书笔记. Domian-driven Design 领域-驱动-设计(DDD)提倡基于(用例相关的现实业务)进行建模. 1. ...

  9. C#获取文件夹内文件包括子文件(递归)实例

    这个在我工作上,写了一次工具项目,用上的. static ArrayList FileList = new ArrayList();//这个必须写在方法外, static ArrayList GetA ...

  10. fasttext 和pysparnn的安装