Linux--部署J2EE应用到Linux(实践成功)

一、需要一个Linux服务器(阿里云、腾讯云等)(CentOS等)

二、Linux远程连接工具:SecureCRT

1、Hostname:服务器地址

2、Port:22(默认)

3、Username:root(默认)

连接

 

三、安装FTP

1、Linux命令:yum insatll vsftpd -y

启动服务:systemctl start vsftpd.service

关闭服务:systemctl stop vsftpd.service

查看服务状态:systemctl status vsftpd.service

检查端口是否在监听(运行):netstat -anp|grep 21

 

2、ftp创建用户

2.1、创建一个ftp用户目录(文件都上传到这个目录)

mkdir -p  /home/ftptest

2.2、为这个目录创建一个用户

useradd -d /home/ftptest -g ftp -s /sbin/nologin/ ftptest

(-g ftp 表示该用户属于ftp分组 (ftp分组是内置的,本来就存在,不需要自己创建)
-s /sbin/nologin 表示这个用户不能用来登录secureCRT这样的客户端。 这种不能登陆的用户又叫做虚拟用户
创建过程给出的警告信息是正常的,不用理会)

2.3、设置目录权限

chown -R ftptest /home/ftptest

chmod -R 775 /home/ftptest

(把目录/home/wwwroot/ftptest的拥有者设置为ftptest,使ftptest用户拥有这个目录的读写权限)

2.4、为这个用户设置密码

password ftptest

 

3、在vsftpd服务器中配置该用户

3.1、不允许匿名用户登录,打开配置文件 : vi  /etc/vsftpd/vsftpd.conf

将  anonymous_enable=YES   改为    anonymous_enable=NO

ESC退出编辑模式,Shift+;  进入命令模式,wq  保存并退出, q 不保存退出;

限制用户访问(防止切换到敏感目录):打开配置文件:  vi  /etc/vsftpd/vsftpd.conf

找到:

#chroot_list_enable=YES

# (default follows)

#chroot_list_file=/etc/vsftpd.chroot_list

并修改为:

chroot_list_enable=YES

# (default follows)

chroot_list_file=/etc/vsftpd/chroot_list

3.2、添加用户:打开chroot_list文件,vi /etc/vsftpd/chroot_list

添加一行:ftptest

打开vsftpd.conf

最后一行加:allow_writeable_chroot = YES

3.3、配置FTP服务器端口

vi /etc/vsftpd/vsftpd.conf

最后添加

pasv_enable = YES

pasv_min_port = 30000

pasv_max_port = 30010

3.4、用户鉴权

因为用户 ftptest 是 nologin的,所以存在鉴权的问题。 如果鉴权问题不解决,就是永不停息的 530错误

vi /etc/pam.d/vsftpd

注释掉  #auth required pam_shells.so

这样不去鉴权,从而允许 ftptest 这种 nologin用户登录 ftp 服务器.

 

4、重启FTP服务器

systemctl restart vsftpd.service

systemctl status vsftpd.service

到此:已开放端口:22,3389(22就是SecureCRT链接Linux服务器用的端口号;3389 是阿里云控制台链接用的端口,这里没有用到),再开放:21、30000~30010端口。

 

四、安装JAVA

yum -y install java-1.8.0-openjdk.x86_64

java -version

 

五、MySQL

1、安装:

yum上mysql的资源有问题,所以不能仅仅之用yum,在使用yum之前还需要用其他命令获取mysql社区版

cd /tmp

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装:

yum install mysql mysql-server mysql-devel -y

启动:

systemctl start mysql.service

验证:

netstat -anq|grep 3306

(处于监听说明在运行)

 

2、设置密码并登录

mysqladmin -u root password admin

登录

mysql -uroot -padmin

显示数据库

show databases

 

六、Tomcat

1、安装

(目前:下载tar.gz包用ftp传到服务器上解压使用)

2、运行

tomcat目录 : /tomcat/bin/startup.sh

3、验证

netstat -anp|grep 8080

4、查看启动日志

tail -300f /usr/local/tomcat7/logs/catalina.out

5、开放端口访问:8080

 

七、部署应用

1、传应用文件夹或war包和sql文件到ftp服务器

2、MySQL:

2.1、解决大小写敏感:

打开mysql配置文件:vi /etc/my.cnf

在[mysqld]后添加添加

lower_case_table_names=1

重启:systemctl restart mysqld.service

2.2、创建数据库

首先连接到数据库

mysql -uroot -padmin

然后创建数据库

CREATE DATABASE tmall DEFAULT CHARACTER SET utf8;

最后查看该数据库已经存在了

show databases;

ctrl+c退出控制台

导入数据:

mysql -u root -padmin --default-character-set=utf8 tmall < /home/wwwroot/ftptest/tmall.sql

重新登陆进mysql ,使用如下命令验证是否导入成功

mysql -uroot -padmin

use tmall;

show tables;

select count(*) from product;

 

3、Tomcat

使用vi打开server.xml

vi /usr/local/tomcat7/conf/server.xml

然后在<host 下面增加一行

<Context path="/tmall" docBase="/home/wwwroot/ftptest/tmall/web" debug="0" reloadable="false" />

修改完成之后,保存退出。

重启tomcat

/usr/local/tomcat7/bin/shutdown.sh

/usr/local/tomcat7/bin/startup.sh

 

最后访问页面检测吧。

 

另:自启动:

ftp:

systemctl enable vsftpd.service

mysql:

systemctl enable mysqld.service

(关闭方式:

systemctl disable vsftpd.service

systemctl disable mysqld.service

tomcat(使用脚本):

有个文件叫做 rc.local, 把脚本放进去就可以了。

不过这个脚本在 centos7里被降级了,不能被执行,所以要执行如下语句使得其可以被执行先

chmod +x /etc/rc.d/rc.local

然后修改 /etc/rc.d/rc.local, 放入 tomcat脚本即可

vi /etc/rc.d/rc.local

添加:

/usr/local/tomcat7/bin/startup.sh

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值