服务器环境搭建

服务器环境为centos6.8,目标为简单搭建基于nginx、jdk、maven、git、vsftpd、tomcat、mysql的线上环境;


1、使用root身份远程连接阿里云服务器:ssh root@xxx.xxx.xx.xxx(服务器地址)
2、配置阿里云源配置,依次执行如下命令:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum makecache
3、新建带有sudo权限的用户useradd -d /usr/zwq -m zwq,-d -m为新增的用户产生一个主目录,然后重置密码,输入
passwd zwq ,输入新的密码即可。然后进入/etc/sudoers,在root ALL=(ALL) ALL下新增zwq ALL=(ALL) ALL,:wq保存即可完成sudo权限的赋予;
4、安装jdk,先执行rpm -qa | grep jdk查看是否已经安装了jdk,如果安装了yum remove删除jdk文件
5、创建developer及子文件夹,使用 mkdir /developer,mkdir /developer/setup,进入到setup目录下 cd /developer/setup
6、通过wget命令下载jdk,将下载的文件赋予执行权限 chmod 777 jdk-xxx-xxx.rpm
7、安装jdk,执行 rpm -ivh jdk-xxx-xxx.rpm
8、cd 、usr/java/jdk-xxx-xxx/ 查看是否安装完成
9、配置环境变量,vi /etc/profile,在文件最下面添加如下内容:
export JAVA_HOME=/usr/java/jdk1.7.0_80
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export MAVEN_HOME=/developer/apache-maven-3.0.5
export CATALINA_HOME=/developer/apache-tomcat-7.0.73
export PATH=$PATH:$JAVA_HOME/bin:/usr/local/git/bin:$CATALINA_HOME/bin:$MAVEN_HOME/bin:$NODE_HOME/bin:/usr/local/bin:$RUBY_HOME/bin
export LC_ALL=en_US.UTF-8


注意:各工具安装需要与配置文件相符
10、使用命令source /etc/profile使配置生效;输入java-version查看是否配置成功
11、同样的使用wget命令下载Tomcat,使用tar -zxvf 解压文件,使用mv命令将解压后的tomcat文件移动到/developer/文件夹下
12、编辑解压后的tomcat文件夹下的/conf/server.xml,添加字符集
   <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>
:wq保存退出;
13、进入到解压后的tomcat文件夹下的/bin/目录下,执行./startup.sh 即可看见tomcat启动成功;
14、同样跟下载解压tomcat一样,下载并解压maven
15、因为之前已经在环境变量当中添加了maven,所有执行下mvn -version查看是否安装成功
16、安装vsftpd,执行yum -y install vsftpd,回到根目录,执行mkdir /product;mkdir /product/ftpfile 创建文件夹
17、添加ftp用户,该用户无登录环境的权限,执行useradd ftpuser -d /product/ftpfile -s /sbin/nologin,在/product/ftpfile文件下再创建一个img文件夹,
18、修改ftpuser的权限,执行chown -R ftpuser.ftpuser /product/ftpfile/img/,重置ftpuser密码,passwd ftpuser输入新密码即可
19、执行vi /etc/vsftpd/chroot_list 命令,输入ftpuser,:wq保存。
20、修改安全策略,执行vi /etc/selinux/config,将SELINUX节点值修改为disable,保存并退出。执行setsebool -P ftp_home_dir 1 命令;
21、修改vsftpd的配置文件(待定)
22、使用wget下载nginx文件,安装Nginx依赖,执行yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel 命令;解压ngixn文件;
23、进入到nginx解压后的文件夹下,执行./configure ,完成后输入make命令,接着执行make install;
24、输入whereis nginx查看安装完成后的目录,进入该目录下conf文件夹下,编辑nginx.conf ,在最下面添加include vhost/*.conf; ,保存并退出。
25、在conf文件夹下创建vhost文件夹。并编写相应的配置;
26、进入到nginx/sbin文件夹下,执行./nginx 启动nginx
27、安装MySQL,检查是否已安装有mysql,执行rpm -qa | grep jdk,如果没有,则执行yum -y install mysql-server命令做安装操作;
28、编辑mysql的字符集,vi /etc/my.cnf ,在mysqld节点下添加 
character-set-server=utf8
保存并退出;
29、配置mysql自启动。执行chkconfig mysqld on ,启动mysql,执行service mysqld restart
30、执行mysql -u root ,依次执行修改数据库密码,执行set password for root@localhost = password('新密码');执行完成后,删除多余的匿名用户,
执行delete from mysql.user where user = '';退出mysql,执行exit;
31、登录mysql,添加用户:执行insert into mysql.user(host,user,password) values("localhost","zhangsan",password('zhangsan123!@#'));执行flush privileges;
32、CREATE DATABASE `数据库名` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;;执行完成后,再执行show databases;查看数据库是否建立成功;
33、执行flush privileges;赋予操作新建立的数据库权限,执行grant all privileges on 数据库名.* to zhangsan.localhost identified by 'zhangsan123!@#';完成后执行exit退出mysql;
34、将表文件上传到服务器后执行mysql -u root -p xxx 登录mysql;执行use 数据库名;执行source 数据库表语句路径 完成数据库导入;exit退出nysql
35、使用wget下载git ,执行sudo yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils- MakeMaker 安装相应的依赖
同nginx一样,解压git安装包,进入git解压缩包,执行 make prefix=/usr/local/git all命令;继续执行 make prefix=/usr/local/git install命令;执行git --version查看是否安装成功;
36、配置用户名,执行git config --global user.name "git的用户名";执行git config --global user.email "git的邮箱";执行git config --global core.autocrlf false;
配置编码执行git config --global quotepath off;执行git config --global gui.encoding utf-8;执行ssh-keygen -t rsa -C "git邮箱";执行eval `ssh-agent`;继续执行


ssh-add ~/.ssh/id_rsa;查看添加的公钥,执行cat ~/.ssh/id_rsa.pub,拷贝内容,并复制到git SSH处;
37、防火墙配置:执行cd /etc/sysconfig/目录下,接着执行ll | grep iptables 查看是否也有防火墙文件,如果没有,则需要先进行初始化配置,执行 iptables -P OUTPUT ACCEPT
执行service iptables save,保存防火墙规则。编辑iptables文件,内容如下


# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT


#ssh port 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT


#vsftpd
-A INPUT -p TCP --dport 61001:62000 -j ACCEPT
-A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT


-A INPUT -p TCP --dport 20 -j ACCEPT
-A OUTPUT -p TCP --sport 20 -j ACCEPT
-A INPUT -p TCP --dport 21 -j ACCEPT
-A OUTPUT -p TCP --sport 21 -j ACCEPT
#nginx
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT


-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT


38、执行mkdir /developer/git-repository 建立文件夹;完成后cd 到该文件夹下,执行git clone git地址;如果用的是刚开始创建的sudo权限的用户,需要对/developer/文件夹赋予权限

执行sudo chown -R zwq /developer/ ,再执行sudo chown u+w -R /developer/ ,sudo chown u+r -R /developer/ ,sudo chown u+x -R /developer/ ;


39、执行发布脚本,如下:



echo "==================git pull======================"
git pull




echo "===========编译并跳过单元测试===================="
mvn clean package -Dmaven.test.skip=true




echo "============删除旧的ROOT.war==================="
rm /developer/apache-tomcat-7.0.73/webapps/ROOT.war




echo "======拷贝编译出来的war包到tomcat下-ROOT.war======="
cp /developer/git-repository/mmall/target/mmall.war  /developer/apache-tomcat-7.0.73/webapps/ROOT.war




echo "============删除tomcat下旧的ROOT文件夹============="
rm -rf /developer/apache-tomcat-7.0.73/webapps/ROOT






echo "====================关闭tomcat====================="
/developer/apache-tomcat-7.0.73/bin/shutdown.sh




echo "================sleep 10s========================="
for i in {1..10}
do
echo $i"s"
sleep 1s
done




echo "====================启动tomcat====================="
/developer/apache-tomcat-7.0.73/bin/startup.sh


补充:nginx参考配置如下:

根据自己需求,修改server_name地址及location处

图片服务器配置:server_name

server {
    listen 80;
    autoindex off;
    server_name 配置的域名;
    access_log /usr/local/nginx/logs/access.log combined;
    index index.html index.htm index.jsp index.php;
    #error_page 404 /404.html;
    if ( $query_string ~* ".*[\;'\<\>].*" ){
        return 404;
    }


    location ~ /(mmall_fe|mmall_admin_fe)/dist/view/* {
        deny all;
    }


    location / {
        root /product/ftpfile/img/;
        add_header Access-Control-Allow-Origin *;
    }
}

接口请求


server {
listen 80;
autoindex on;
server_name happymmall.com www.happymmall.com;
access_log /usr/local/nginx/logs/access.log combined;
index index.html index.htm index.jsp index.php;
if ( $query_string ~* ".*[\;'\<\>].*" ){
        return 404;
        }


location = / {
        root /product/front/mmall_fe/dist/view;
        index index.html;
}


location ~ .*\.html$ {
        root /product/front/mmall_fe/dist/view;
        index index.html;
}


location / {
        proxy_pass http://127.0.0.1:8080/;
        }


location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
        proxy_pass http://127.0.0.1:8080;
        expires 30d;
        }


location ~ .*\.(js|css)?$ {
        proxy_pass http://127.0.0.1:8080;
        expires 7d;
        }
}




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值