说明:这些版本都不是基于 Docker 的,下面会针对 7.x 的系统写一篇关于 docker 的安装方式。
首先 Xshell 连好 Linux,将软件源,改为阿里云的镜像https://developer.aliyun.com/mirror/centos
源配置能干嘛?它的作用是啥?
软件源默认会和系统走,默认的centos是国外的源,他的作用和功能就是,远程源会更新软件,我们本地源会更新索引,安装软件的时候直接从本地源指向远程源进行下载安装哈,方便我们的软件安装哟,因为里面把编译都做好了呢
由于直接使用 root 账户, 所以不需要使用 sudo
1. JDK 安装
java -version 可以看 jdk 版本
① 下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
② 运行 yum makecache 生成缓存
③ 查看已有的 jdk(默认装有 OpenJdk)
rpm -qa|grep jdk- 例如显示:
java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64
java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64
④ 将 OpenJdk删除掉
yum remove java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64yum remove java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64- 两次分别输入 y 确定
- 清理完就这个效果
-bash: /usr/bin/java: No such file or directory
⑤ 安装 JDK(7u80版)
- 创建 developer 目录
下载路径:https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.htmlmkdir developercd ./developer/
获取到链接 wget 下载,有什么问题可以 rm xxxxx,ll可以看删好了没
wget https://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.rpm?AuthParam=1586352638_eab7e0a152199cc16d8864fddf03a827
给个备用的
wget http://learning.happymmall.com/jdk/jdk-7u80-linux-x64.rpm
下载好以后,可以赋予权限 chmod 777 jdk-7u80-linux-x64.rpm
注:修改权限,是因为下载和使用Jdk的账号不确定,所以777把用户,用户组和其他人这三个都赋予读写执行的权限,我直接使用 root账号,所以没执行这一步
⑥ 解压安装 JDK(默认安装路径为 /usr/java)
rpm -ivh jdk-7u80-linux-x64.rpm
指向到 java目录,ll查询
[root@localhost developer]# cd /usr/java[root@localhost java]# lltotal 4lrwxrwxrwx. 1 root root 16 Apr 8 21:48 default -> /usr/java/latestdrwxr-xr-x. 8 root root 4096 Apr 8 21:48 jdk1.7.0_80lrwxrwxrwx. 1 root root 21 Apr 8 21:48 latest -> /usr/java/jdk1.7.0_80
指向到刚安装的 jdk文件夹下,查看一下
[root@localhost java]# cd jdk1.7.0_80/[root@localhost jdk1.7.0_80]# lltotal 19800drwxr-xr-x. 2 root root 4096 Apr 8 21:48 bin-rw-r--r--. 1 root root 3339 Apr 11 2015 COPYRIGHTdrwxr-xr-x. 4 root root 4096 Apr 8 21:48 dbdrwxr-xr-x. 3 root root 4096 Apr 8 21:48 includedrwxr-xr-x. 5 root root 4096 Apr 8 21:48 jredrwxr-xr-x. 5 root root 4096 Apr 8 21:48 lib-rw-r--r--. 1 root root 40 Apr 11 2015 LICENSEdrwxr-xr-x. 4 root root 4096 Apr 8 21:48 man-rw-r--r--. 1 root root 114 Apr 11 2015 README.html-rw-r--r--. 1 root root 499 Apr 11 2015 release-rw-r--r--. 1 root root 19947513 Apr 11 2015 src.zip-rw-r--r--. 1 root root 110114 Mar 17 2015 THIRDPARTYLICENSEREADME-JAVAFX.txt-rw-r--r--. 1 root root 173571 Apr 11 2015 THIRDPARTYLICENSEREADME.txt
⑦ 配置环境变量
vim /etc/profile 最底部添加环境变量
export JAVA_HOME=/usr/java/jdk1.7.0_80export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$JAVA_HOME/bin:$PATH
使配置生效
source /etc/profile
看一眼版本
[root@localhost jdk1.7.0_80]# java -versionjava version "1.7.0_80"Java(TM) SE Runtime Environment (build 1.7.0_80-b15)Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
2. Tomcat 安装
① 下载 Tomcat
可以去官网,仍然还有一个备用的
wget http://learning.happymmall.com/tomcat/apache-tomcat-7.0.73.tar.gz
② 解压安装
tar -zxvf apache-tomcat-7.0.73.tar.gz
③ 指向到Tomcat目录
cd apache-tomcat-7.0.73
[root@localhost developer]# cd apache-tomcat-7.0.73[root@localhost apache-tomcat-7.0.73]# lltotal 116drwxr-xr-x. 2 root root 4096 Apr 8 22:30 bindrwxr-xr-x. 2 root root 4096 Nov 8 2016 confdrwxr-xr-x. 2 root root 4096 Apr 8 22:30 lib-rw-r--r--. 1 root root 56846 Nov 8 2016 LICENSEdrwxr-xr-x. 2 root root 4096 Nov 8 2016 logs-rw-r--r--. 1 root root 1239 Nov 8 2016 NOTICE-rw-r--r--. 1 root root 8965 Nov 8 2016 RELEASE-NOTES-rw-r--r--. 1 root root 16195 Nov 8 2016 RUNNING.txtdrwxr-xr-x. 2 root root 4096 Apr 8 22:30 tempdrwxr-xr-x. 7 root root 4096 Nov 8 2016 webappsdrwxr-xr-x. 2 root root 4096 Nov 8 2016 work
④ 配置环境变量
vim /etc/profile
添加一条
export CATALINA_HOME=/developer/apache-tomcat-7.0.73
使配置生效
source /etc/profile
⑤ 修改配置文件
进入 tomcat 安装的 conf文件夹 编辑 server.xml
[root@localhost developer]# cd apache-tomcat-7.0.73
vim conf/server.xml 通过输入 /8080 快速找到下面的部分,当然自己找也是可以的,标签内添加URIEncoding=”UTF-8”,这样就解决了中文乱码的问题
<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" URIEncoding="UTF-8" />
⑥ 验证 Tomcat
进入tomcat目录,进入 bin目录,执行 .startup.sh,出现 下图样式,代表启动成功
[root@localhost bin]# ./startup.shUsing CATALINA_BASE: /root/developer/apache-tomcat-7.0.73Using CATALINA_HOME: /root/developer/apache-tomcat-7.0.73Using CATALINA_TMPDIR: /root/developer/apache-tomcat-7.0.73/tempUsing JRE_HOME: /usr/java/jdk1.7.0_80Using CLASSPATH: /root/developer/apache-tomcat-7.0.73/bin/bootstrap.jar:/root/developer/apache-tomcat-7.0.73/bin/tomcat-juli.jarTomcat started.
ifconfig 查看自身ip
[root@localhost bin]# ifconfigeth0 Link encap:Ethernet HWaddr 00:0C:29:61:3B:BFinet addr:192.168.3.144 Bcast:192.168.3.255 Mask:255.255.255.0inet6 addr: fe80::20c:29ff:fe61:3bbf/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:126843 errors:0 dropped:0 overruns:0 frame:0TX packets:52855 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:170511060 (162.6 MiB) TX bytes:4582398 (4.3 MiB)lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:1886 errors:0 dropped:0 overruns:0 frame:0TX packets:1886 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX bytes:129996 (126.9 KiB) TX bytes:129996 (126.9 KiB)
浏览器 192.168.3.144:8080,若访问成功就完成了
⑦ 若显示无法访问
就需要在防火墙中开放 8080 端口
打开配置文件
sudo vim /etc/sysconfig/iptables
按下a,进入编辑
加入这一行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
按下esc 退出编辑模式,输入 :wq 保存并退出
重启防火墙
sudo service iptables restart
再次启动 Tomcat 去浏览器访问,则可以成功
3. Maven 安装
① 下载 Maven(3.0.5)
可以去官网,或者备用的
wget http://learning.happymmall.com/maven/apache-maven-3.0.5-bin.tar.gz
② 通过tar或unzip进行解压缩
tar -zxvf apache-maven-3.0.5-bin.tar.gz
③ 配置环境变量
增加MAVEN_HOME
有一个坑提醒自己:之前配置一直没加 /root/ 注意看清自己安装的目录
export MAVEN_HOME=/root/developer/apache-maven-3.0.5
添加到 Path
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
④ 配置生效
source /etc/profile
⑤ 测试一下
mvn -version
4. vsftpd 安装
vsftpd 是 “very secure FTP daemon 的缩写,是一个完全免费的,开放源代码的ftp服务器软件”
由于其小巧轻快,安全易用,支持虚拟用户,支持带宽限制等功能所以在Linux中非常受推崇
2.2.2-21版本
① 安装 vsftpd
执行 yum -y install vsftpd
注:可通过 rpm -qa| grep vsftpd 检查是否已经安装vsftpd,默认的配置文件在 /etc/vsftpd/vsftpd.conf
② 创建虚拟用户
- 选择在根或者用户目录下创建ftp文件夹:
mkdir ftpfile - 添加匿名用户:
useradd ftpuser -d /ftpfile/ -s/sbin/nologin- 一个没有登录权限的账户
- 修改 ftpfile 权限:
chown -R ftpuser.ftpuser /ftpfile- 查看一下权限
[root@localhost /]# ll | grep ftp- 结果:
drwxr-xr-x. 2 ftpuser ftpuser 4096 Apr 9 14:10 ftpfile
- 重新设置 ftpuser 密码:
passwd ftpuser(例如 123456) - 在ftpfile文件夹下创个首页 index.html:
vim index.html- 内容:here is ftpfile
- /ftpfile
③ 配置
vim /etc/vsftpd/vsftpd.conf- 找到 banner进行修改:
ftpd_banner=Welcome to happymmall FTP service.(这一行删掉原来前面的#)
local_root=/ftpfile
anno_root=/ftpfile
use_localtimr=YES - 找到 chroot_list 将这两行前面的 #删掉
- 找到 banner进行修改:
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
- 匿名访问设置为 NO 但是学习阶段建议设置为 YES(
anonymous_enable=YES)NO需要登录 - 最下面添加防火墙白名单,最好设置不然就会用默认的,如果防火墙配置比较严格 就会有问题
pasv_min_port=61001(被动模式使用端口范围最小值)
pasv_max_port=62000(被动模式使用端口范围最大值)cd /etc/vsftpdvim chroot_list- 把刚才新增的虚拟用户添加到此配置文件中,后续要引用 (ftpuser)
vim /etc/selinux/config修改SELINUX=disabled
- 若一会验证的时候,碰到550拒绝访问 请执行:
setsebool -P ftp_home_dir 1 - 然后重启linux服务器,执行reboot命令
④ 配置防火墙
vim /etc/sysconfig/iptables
#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
- 将以上配置添加到防火墙中
- 重启服务器 :
service iptables restart
显示OK就可以了
[root@localhost vsftpd]# service iptables restartiptables: Setting chains to policy ACCEPT: filter [ OK ]iptables: Flushing firewall rules: [ OK ]iptables: Unloading modules: [ OK ]iptables: Applying firewall rules: [ OK ]
⑤ 验证
service vsftpd restart- 注:第一次启动时 Shutting down vsftpd是failed不用管,因为这是重启命令,保证Starting vsftpd 是OK即代表vsftpd服务成功
[root@localhost vsftpd]# service vsftpd restartShutting down vsftpd: [FAILED]Starting vsftpd for vsftpd: [ OK ]
ftp://ip地址
5. Ngnix 安装
Nninx 是一款轻量级 Web 服务器,也是一款方向代理服务器
作用:
- 直接支持 Rails 和 PHP 的程序
- 作为 HTTP 反向代理服务器
- 作为负载均衡服务器
- 作为邮件代理服务器
- 帮助实现前端动静分离
特点:
- 高稳定,高性能,占用资源少,功能丰富,模块化结构,支持热部署
① 安装依赖
- 安装 gcc(命令:yum install gcc)
- 安装 pcre(命令:yum install pcre-devel)
- 安装 zlib(命令:yum install zlib zlib-devel)
- 安装 openssl(命令:yum install openssl openssl-devel)
- 如需支持ssl,才需要安装openssl
综合:yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
② 下载源码包
- 官网:
wget http://nginx.org/download/nginx-1.1.0.2.tar.gz - 备用:
wget http://learning.happymmall.com/nginx/linux-nginx-1.10.2.tar.gz
③ 解压
tar -zxvf linux-nginx-1.10.2.tar.gz
④ 安装
进入nginx目录之后执行 ./configure
- 可以指定安装目录,只需要增加参数
--prefix=/usr/nginx - 如果不指定路径,可以通过 whereis nginx进行查询
- 默认安装在 /usr/local/nginx
执行 make
继续执行 make install
⑤ 测试
启动: ./nginx
查看进程: ps aux|grep **nginx**
[root@localhost sbin]# ps aux|grep nginxroot 7987 0.0 0.0 23968 824 ? Ss 20:10 0:00 nginx: master process ./nginxnobody 7988 0.0 0.0 24388 1404 ? S 20:10 0:00 nginx: worker processroot 8031 0.0 0.0 103316 848 pts/0 S+ 20:13 0:00 grep nginx
没法访问就需要开放下 80端口
#nginx-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
别忘记重启服务器 :service iptables restart
6. Nginx 反向代理服务器域名解析配置
① 在 nginx conf 下创建新文件夹 vhost 然后编辑 nginx.conf 将 include vhost/*.conf; 写入
cd /usr/local/nginx/conf
由于不是外网,只能在本地测试,所以修改一下 hosts
注意注意!!!:浏览器在哪里就改哪里的,下面改了 Linux的只能在 Linux浏览器访问有效,想要Windows下访问就需要修改 Windows下的hosts
vim /etc/hosts
#centos192.168.3.144 www.idealmall.com192.168.3.144 image.idealmall.com192.168.3.144 s.idealmall.com
② 进入 vhost 创建 vim www.ideal-mall.com.conf
③ 添加端口转发的配置,也就是转发到tomcat
server {listen 80;autoindex on;server_name www.idealmall.comaccess_log /usr/local/nginx/logs/access.log combined;index index.html index.htm index.jsp index.php;#root /devsoft/apache-tomcat-7.0.73/webapps/mmall;#error_page 404 /404.html;if ( $query_string ~* ".*[\;'\<\>].*" ){return 404;}location / {proxy_pass http://127.0.0.1:8080/;add_header Access-Control-Allow-Origin '*';}}
重启一下
../../sbin/nginx -s reload
7. 文件服务器搭建
之前已经创建好了 www.idealmall.com.conf 接着创建
vim image.idealmall.com.conf
server {listen 80;autoindex off;server_name image.idealmall.com;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 /ftpfile/;add_header Access-Control-Allow-Origin *;}}
重启一下
[root@localhost sbin]# ./nginx -s reload
8. MySQL 安装
① 下载安装
yum -y install mysql-server
注:rpm -qa|grep mysql-server 可以通过这个检查是否已经安装
② 字符集配置
默认配置:vim /etc/my.cnf
添加配置:在[mysqld]节点下添加
default-character-set=utf8character-set-server=utf8
补充:关于中文乱码问题
- 在 5.1版本的时候,为了解决中文乱码问题,my.ini 内 [mysql] 和 [mysqld] 都会写
default-character-set=utf8 - 在5.5版本的时候,[mysql] 内可以这么写,[mysqld] 内就不能这么写了,而是写character-set-server=utf8
③ 设置自启动
chkconfig mysqld on
chkconfig --list mysqld 查看,如果 2-5位 都是启用 on 状态就可以了
④ 防火墙配置
vim /etc/sysconfig/iptables
开放 3306 端口
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
重启服务器
service iptables restart
启动失败:MySQL Daemon failed to start.
可以看一下日志 /var/log/mysqld.log
Fatal error: Can’t open and lock privilege tables: Table ‘mysql.host’ doesn’t exist
原因是重装的时候数据目录不一致导致
解决方法:
[root@Oracle mysqld]# /usr/bin/mysql_install_db —user=mysql —datadir=/var/lib/mysql/
⑤ 登录
第一次反正也没密码,就不用 -p了 :mysql -u root
select user,host from mysql.user;+------+-------------------+| user | host |+------+-------------------+| root | 127.0.0.1 || | localhost || root | localhost || | www.idealmall.com || root | www.idealmall.com |+------+-------------------+5 rows in set (0.01 sec)
把匿名用户删了
delete from mysql.user where user='';
再查一次
+------+-------------------+| user | host |+------+-------------------+| root | 127.0.0.1 || root | localhost || root | www.idealmall.com |+------+-------------------+3 rows in set (0.00 sec)
查下数据库
show databases;
+--------------------+| Database |+--------------------+| information_schema || mysql || test |+--------------------+
⑥ 创建新用户
insert into mysql.user(Host,User,Password) values("localhost","imall",password("gzah."));
mysql> select user,host from mysql.user;+-------+-------------------+| user | host |+-------+-------------------+| root | 127.0.0.1 || imall | localhost || root | localhost || root | www.idealmall.com |+-------+-------------------+4 rows in set (0.00 sec)
创建一个数据库
create databaseimalldefault character set utf8 collate utf8_general_ci;
看一下用户的权限 \G 代表显示格式化
select * from mysql.user \G
⑦ 增加权限
新增的用户权限都是N,增加下权限
GRANT ALL PRIVILEGES ON *.* TO 用户名@'%' IDENTIFIED BY '数据库密码' WITH GRANT OPTION;GRANT ALL PRIVILEGES ON *.* TO imall@'%' IDENTIFIED BY 'gzah.' WITH GRANT OPTION;
刷新一下
flush privileges;
⑧ 设置root密码
mysql> set password for root@localhost=password('gzah.');Query OK, 0 rows affected (0.00 sec)mysql> set password for root@127.0.0.1=password('gzah.');Query OK, 0 rows affected (0.00 sec)
9. git 安装
① 下载
- 从github官网下载
- 或者直接在 linux执行安装
wget https://gihub.com/git/git/archive/v2.8.0.tar.gz
- 备用
wget http://learning.happymmall.com/git/git-v2.8.0.tar.gz
② 安装依赖
-y 代表确认,就不用每一个都输入 y 确认了
sudo yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils- MakeMaker
③ 解压
tar -zxvf git-v2.8.0.tar.gz
④ 执行编译
进入解压好的文件夹
make prefix=/usr/local all 这里指定了路径
接着执行
make prefix=/usr/local install
⑤ 测试
git --version
