Linux利用OneinStack搭建环境
OneinStack官方网站:https://oneinstack.com
介绍
OneinStack支持以下数种环境组合:
- LNMP(Linux + Nginx+ MySQL+ PHP) 
- LAMP(Linux + Apache+ MySQL+ PHP) 
- LNMPA(Linux + Nginx+ MySQL+ PHP+ Apache):Nginx处理静态,Apache(mod_php)处理动态PHP 
- LNMT(Linux + Nginx+ MySQL+ Tomcat):Nginx处理静态,Tomcat(JDK)处理JAVA 
- LNMH(Linux + Nginx+ MySQL+ HHVM) 
支持以下数种系统:
- CentOS 6~7(包括redhat) 
- Debian 6~9 
- Ubuntu 12~16 
- Aliyun Linux 15.1 
安装步骤
1.
yum -y install wget screen curl python #for CentOS/Redhat- 1
2.选择源(以下源选一即可)
wget http://aliyun-oss.linuxeye.com/oneinstack-full.tar.gz #阿里云内网下载
wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz #包含源码,国内外均可下载
wget http://mirrors.linuxeye.com/oneinstack.tar.gz #不包含源码,建议仅国外主机下载- 1
- 2
- 3
- 4
- 5
- 6
3.解压压缩包
tar -zxvf oneinstack-full.tar.gz- 1
4.进入文件夹
cd oneinstack #如果需要修改目录(安装、数据存储、Nginx日志),请修改options.conf文件- 1
5.
screen -S oneinstack #如果网路出现中断,可以执行命令`screen -R oneinstack`重新连接安装窗口- 1
环境配置
执行命令:
./install.sh #注:请勿sh install.sh或者bash install.sh这样执行- 1
添加附加组件
执行命令:
./addons.sh- 1
添加虚拟主机
执行命令:
./vhost.sh- 1
删除虚拟主机
执行命令:
./vhost.sh del- 1
管理ftp账号
执行命令:
./pureftpd_vhost.sh- 1
备份数据
执行命令:
./backup_setup.sh # Set backup options - 1
 ./backup.sh # Start backup, You can add cron jobs
# crontab -l # Examples
0 1 * * * cd ~/oneinstack;./backup.sh > /dev/null 2>&1 &- 1
- 2
- 3
更新版本
执行命令:
./upgrade.sh
- 1
- 2
卸载OneinStack
执行命令
./uninstall.sh- 1
管理服务
Nginx/Tengine/OpenResty:
service nginx {start|stop|status|restart|reload|configtest}- 1
MySQL/MariaDB/Percona:
service mysqld {start|stop|restart|reload|status}- 1
PHP:
service php-fpm {start|stop|restart|reload|status}- 1
HHVM(hhvm进程交给supervisord管理):
service supervisord {start|stop|status|restart|reload}- 1
Apache:
service httpd {start|restart|stop}- 1
Tomcat:
service tomcat {start|stop|status|restart}- 1
Pure-Ftpd:
service pureftpd {start|stop|restart|status}- 1
Redis:
service redis-server {start|stop|status|restart|reload}- 1
Memcached:
service memcached {start|stop|status|restart|reload}- 1
可能遇到的问题
1.ftp权限问题
问题描述:
创建ftp账户后,远程连接出现550错误,提示没有权限。
问题解决:
网站根目录权限遵循: 
文件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 {} \;- 1
- 2
- 3
2.LNMT模式部署JAVA应用
问题解决:
如果安装lnmt模式,即同时安装nginx、mysql、tomcat,默认是做了动静分离,即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 ,请将代码放入此目录。
3.切换php版本
问题解决:
./uninstall.sh php #卸载
./install.sh #php选择y,其余选择n,即可- 1
- 2
4.配置MySQL远程连接
问题解决: 
(1)开启iptables 3306端口 
如果您的操作系统为CentOS系列:
iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
service iptables save #保存iptables规则- 1
- 2
如下图:
如果您的操作系统为Ubuntu/Debian系列:
iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
iptables-save > /etc/iptables.up.rules #保存iptables规则- 1
- 2
如下图:
(2)授权数据库
远程连接新建一个帐号(帐号名不能为root)。 
如:添加一个用户名为db_user,密码为db_pass,授权为% (%表示所有外围IP能连接)对db_name数据库所有权限,命令如下
# mysql -uroot -p
MySQL [(none)]> grant all privileges on db_name.* to db_user@’%’ identified by ‘db_pass’; #授权语句,特别注意有分号
MySQL [(none)]> flush privileges;
MySQL [(none)]> exit; #退出数据库控制台,特别注意有分号- 1
- 2
- 3
- 4
如下图:
Linux利用OneinStack搭建环境的更多相关文章
- centos利用OneinStack搭建环境
		介绍 OneinStack支持以下数种环境组合: LNMP(Linux + Nginx+ MySQL+ PHP) LAMP(Linux + Apache+ MySQL+ PHP) LNMPA(Linu ... 
- 嵌入式Linux利用Wifi搭建无线服务器(物联网实践之无线网关)
		在 http://www.cnblogs.com/heat-man/p/4564539.html中,在嵌入式Linux开发板上我们从最底层实现了一个智能家居的远程控制系统,然而采取的是用网线连接到交换 ... 
- Linux下STM32开发环境的搭建
		目录 一.概述 1.目的 2.开发环境描述 3.Eclipse构建的STM32集成开发环境结构 4.GDB / GDB Server 调试模型 二.搭建步骤 三.详细的搭建过程 1.安装eclipse ... 
- [大数据学习研究]1.在Mac上利用VirtualBox搭建本地虚拟机环境
		1. 大数据和Hadoop 研究学习大数据,自然要从Hadoop开始. Hadoop不是一个简单的软件,而是有一些列软件形成的生态,其核心思想来自Google当初发布的三篇论文,后来做了开源的实现, ... 
- 利用Hexo搭建个人博客-环境搭建篇
		我是一个爱写博客进行总结分享的人.然而,有着热爱写博客并且深知写博客好处的我,却没有好好的把这个习惯坚持下来.如今毕业已经一年多了吧,每一次与师弟师妹们聊天,我总会意味深长的建议他们,一定要定期梳理总 ... 
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
		最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ... 
- Linux设备驱动开发环境的搭建(转)
		经过两周的摸索,终于对Linux设备驱动开发有了个初步的认识,下面对Linux设备驱动开发环境的搭建做个小结,以方便自己以后查询,同时也能给同道的初学者一点帮助. 刚接触Linux设备驱动时,初学者往 ... 
- Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
		1. openSUSE是一款优秀的linux. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRjYXN0Y3Bw/font/5a6L5L2T/font ... 
- Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
		1. openSUSE是一款优秀的linux. 2.选择默认虚拟机 3.选择稍后安装操作系统 4.选择linux opensuse 5. 选择默认虚拟机名称 6.设置处理器为双核. 7.内存设置为2 ... 
随机推荐
- JS判断手机横竖屏
			在移动端开发时,有时候需要判断手机的横竖屏,那么就需要用到window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态. 屏幕方向对应的window.orientat ... 
- Linux内存管理 —— 内核态和用户态的内存分配方式
			1. 使用buddy系统管理ZONE我的这两篇文章buddy系统和slab分配器已经分析过buddy和slab的原理和源码,因此一些细节不再赘述.所有zone都是通过buddy系统管理的,buddy ... 
- 3、SpringBoot+Mybatis整合------主键回填
			开发工具:STS 代码下载链接:https://github.com/theIndoorTrain/SpringBoot_Mybatis01/tree/d68efe51774fc4d96e5c6870 ... 
- Vim---配置实用的.vimrc文件
			配置自己电脑的vim,配置一个根据个人习惯使用的.vimrc文件.我的有以下功能等,读者可以根据自己的 个人喜好去配置自己的vim. 1.自动插入文件头 ,新建C.C++源文件时自动插入表头:包括文件 ... 
- NuGet管理和还原程序包
			在很多开源的程序下载下来不能使用,一般都是平台X86 和X64没有修改,还一个就是程序缺少资源包文件.用Nuget还原即可: 一般建议先修改好平台,然后用NuGet还原程序包. 
- scapy--初识
			常用的包结构: (1)OSI 5层模型 OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 传 ... 
- python的多继承C3(mro)算法
			多继承的继承顺序按照C3算法进行顺序继承 例一 按照深度A类从左往右有三条可继承的"路" 先按照深度优先的算法,将每一路的每一个节点加到列表中 B = [B,D,F,H] C = ... 
- MySQL 如何查看及修改数据库引擎
			MySQL 如何查看及修改数据库引擎 1.查看mysql支持的引擎有哪些 show engines 结果,如图所示: 由上图可以看出,只有InnoDB是支持事务的 2.查看当前默认的引擎 show v ... 
- Nginx 配置继承模型
			要了解nginx的继承模型,首先需要知道nginx使用多个配置块进行操作.在nginx中,这样的块被称为上下文,例如,放置在服务器上下文中的配置指令驻留在server { }块中,就像放置在http上 ... 
- 38.VUE学习之-全局组件和局部组件
			<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ... 
