CentOS7.3 JavaWeb项目部署

关于微柳镜像使用


镜像名字:JAVA环境(CentOS7.3 Nginx Tomcat8 JDK)
镜像市场地址:点击这里进入
JAVA环境镜像使用手册:点击进入
视频教程:百度云在线播放与下载
镜像软件详细列表:

  • Nginx1.12.0
  • Tomcat7.0.77或8.0.43
  • JDK1.8.0_121、1.7.0_80、1.6.0_45
  • MySQL5.6.36
  • Redis3.2.8
  • Memcached1.4.36
  • Jemalloc4.5.0
  • Pure-FTPd1.0.45

源码安装目录:
Nginx:/usr/local/nginx
tomcat:/usr/local/tomcat
JDK:/usr/java
MySQL:/usr/local/mysql
Pureftpd:/usr/local/pureftpd
Redis: /usr/local/redis
Memcached:/usr/local/memcached
数据存储目录:
数据库(MySQL):/data/mysql
网站根目录:/data/wwwroot/www.example.com 【添加虚拟主机会自动创建这个目录】
Web访问日志:/data/wwwlogs
默认ip直接访问内容对应根目录:/data/wwwroot/default 【该目录包含首页demo等文件,目录里面文件可删除,目录不能删除】
首页demo:http://公网IP


参数优化

1. 初始化磁盘


新安装的系统可以省略此步,也就是恢复到镜像的初始状态。在后续使用过程中出现问题,均可以初始化磁盘之后再做后续步骤。

2. 启动优化系统 [这一步是根据自己的系统使用脚本自动优化,强烈建议操作一次]

cd /root/oneinstack     #必须进入oneinstack目录下执行
./optimize.sh         #请勿bash ./optimize.sh(或者sh)这样执行

注意:
可能需要等待1分钟,请勿中断
此脚本会根据系统配置,自动优化 Nginx、MySQL、JVM等参数
显示结果:

3. JDK版本切换


cd /root/oneinstack
./change_jdk_version.sh

图示:

4. MySQL数据库管理


  1. 显示数据库root默认密码:
cd /root/oneinstack
grep dbrootpwd options.conf #显示数据库root密码
  1. 数据库root密码重置
cd /root/oneinstack
./reset_db_root_password.sh
  1. 创建数据库用户
    为了安全我们通常给每一个网站程序建立唯一的数据库连接帐号(帐号名不能为root)。
    如:添加一个用户名为db_user,密码为db_pass,授权为本机localhost对db_name数据库所有权限,命令如下
    mysql -uroot –p
    Enter password: #输入数据库的root密码,默认不显示密码
MySQL [(none)]> grant all privileges on db_name.* to db_user@’localhost’ identified by ‘db_pass’;        #授权语句,特别注意有分号
MySQL [(none)]> flush privileges;        #权限立即生效
MySQL [(none)]> exit;        #退出数据库控制台,特别注意有分号.

图示:
  1. 配置MySQL远程连接

如果需要远程连接数据库,需要如下操作(缺一不可):
a. 打开iptables 3306端口

iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT        // 添加规则
service iptables save      // 保存iptables规则

图示:

b. 数据库授权
使用参考创建数据库用户的步骤。

5. 管理虚拟主机


  1. 添加虚拟主机
cd /root/oneinstack
./vhost.sh

图示:

说明:

  • 上图中directory为网站根目录,脚本执行后会自动创建,部署网站时请将代码上传到该目录。目录、子目录和文件权限都为:www
  • 对应Nginx配置文件路径:
/usr/local/nginx/conf/vhost/demo.oneinstack.com.conf 

demo.oneinstack.com为绑定的域名

  • 对应Tomcat配置文件路径:
/usr/local/tomcat/conf/vhost/demo.oneinstack.com.xml

(demo.oneinstack.com为绑定的域名)

  1. 删除虚拟主机:
cd  /root/oneinstack
./vhost.sh del

图示

6. 如何管理FTP账号


cd /root/oneinstack
./pureftpd_vhost.sh

图示:

7. 备份管理


设置备份参数

cd /root/oneinstack
./backup_setup.sh

图示:

立即备份

cd /root/oneinstack
./backup.sh

设置备份计划任务,自动定时备份
如:每天凌晨一点备份 [注:下面命令请勿重复执行]

echo '0 1 * * * cd ~/oneinstack;./backup.sh > /dev/null 2>&1 & ' >> /var/spool/cron/root

查看本地备份
ls -l /data/backup

图示:

查看阿里云OSS
登陆阿里云管理控制台,地址:点此查看

图示:

8. 如何管理服务


  • Nginx:
service nginx {start|stop|status|restart|reload|configtest}

注意:更改Nginx配置文件,强烈建议reloadTomcat:

service tomcat {start|stop|restart|status}
  • MySQL:
service mysqld {start|stop|restart|reload|status}
  • Pure-Ftpd:
service pureftpd {start|stop|restart|status}
  • Redis:
service redis-server {start|stop|status|restart|reload}

Memcached:

service memcached {start|stop|status|restart|reload}

9. 如何升级版本


cd /root/oneinstack
./upgrade.sh

图示:

10.其它管理

如何添加附加组件

cd /root/oneinstack
./addons.sh                #注:支持安装、卸载功能

图示:

如何卸载

⚠️可单独卸载某些项,如数据库用RDS,可单独卸载数据库

cd /root/oneinstack
./uninstall.sh           #特别注意备份数据

图示:

部署一个JavaWeb 网站到服务器

通过ftp上传代码不需要修改权限,默认已经是www;在服务器里面下载代码必须修改网站根目录及子、目录文件权限都为www;如网站权限出现问题,请参考下面[关于网站根目录权限]的步骤。

图示:


访问http://demo.oneinstack.com,输入数据库地址(localhost), 用户名(root),密码(数据库root密码),完成

Java应用部署说明
默认镜像是做了动静分离,即nginx处理静态资源(jss、ccc、图片等),其余的交给tomcat处理。
默认(未绑定域名)对应网站根目录/data/wwwroot/default(不是webapps),部署代码时建议将war包解压(比如example.war,解压命令:jar xf example.war ,注意权限必须为www),将其中代码放到对应网站根目录。
• 如果上传代码之后目录结构为:/data/wwwroot/default/WEB-INF,访问地址为:http://IP
• 如果上传代码之后目录结构为:/data/wwwroot/default/example/WEB-INF,访问网站地址为:http://IP/example

注意:

  • war包也可以不解压即上传到对应网站根目录,但必须注意访问路径和静态资源目录问题。如果访问网站时,静态资源加载不了,可能是原因是做了动静分离静态资源直接有nginx处理,请确认nginx是否能找到相关静态资源(nginx网站根目录:/data/wwwroot/default
  • 如果vhost.sh绑定了域名,如www.example.com,工具会自动生成对应根目录:/data/wwwroot/www.example.com ,请将代码放入此目录。
  • Tomcat参数请修改: /usr/local/tomcat/bin/setenv.sh

关于网站根目录权限

网站根目录权限遵循:
文件644
文件夹755
权限用户和用户组 www
如出现文件权限问题时,请执行下面3条命令:

chown -R www.www /data/wwwroot/
find /data/wwwroot/ -type d -exec chmod 755 {} \;
find /data/wwwroot/ -type f -exec chmod 644 {} \;

关于Redis、Memcached

Redis默认端口:6379
Memcached默认端口:11211
默认监听地址:127.0.0.1
如果增加Redis最大内存大小?

vi /usr/local/redis/etc/redis.conf
maxmemory 1024000000  #单位字节,默认1G,可调整
service redis-server restart   #重启生效

如何增加Memcached最大内存大小?

vi /etc/init.d/memcachedCACHESIZE=256      #单位M,默认256M,可调整
service memcached restart      #重启生效

更改Redis监听端口

vi /usr/local/redis/etc/redis.conf
bind 127.0.0.1      #改成bind 0.0.0.0,保存
service redis-server restart   #重启生效

更改Memcached监听端口

vi /etc/init.d/memcached
OPTIONS="-l 127.0.0.1" 改成OPTIONS="", 保存
service memcached restart        #重启生效

关于iptables防火墙

默认情况下开通22(ssh)80443(Nginx) 2120000:30000(FTP)
其它端口都拒绝,如下需要允许其它端口,请如下操作(如开启8080端口)

iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
service iptables save #保存iptables规则

图示:
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,384评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,845评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,148评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,640评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,731评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,712评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,703评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,473评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,915评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,227评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,384评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,063评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,706评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,302评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,531评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,321评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,248评论 2 352

推荐阅读更多精彩内容