在这里插入图片描述

介绍

今年阿里云优惠特别巨大,同样的配置新老用户的价格能差到5倍左右,而且双11后活动结束,用来学习最好不过了,主要是真便宜,比在自己电脑上装虚拟机玩Linux爽多了。

在这里插入图片描述

但是很多小伙伴不知道如何配置,也不知道MySQL该安装哪个版本,就简单写个教程,搭建一下基础的环境。如果不是新用户可以用家里人的账号买。登录到Linux服务器,可以直接在web页面登录,也可以使用XShell登录,有社区版,个人用足够了,用不着到处破解。服务器的话选择CentOS7即可,国内的公司服务器基本上用的都是这个

安装JDK和Tomcat

如果不知道用户名和密码的可以到控制台去查看,可以直接修改密码,Linux版本的可以直接用wget命令下载文件,用rz命令将本地文件上传到服务器,用sz命令将服务器上的文件下载到本地,Windows版本的可以部署FTP或者直接通过远程连接传输文件,Win10的话还支持scp命令,看这篇文章

下载jdk

wget jdk地址(从官网找一个下载即可)
tar -xvf jdk-8u191-linux-x64.tar.gz

配置系统环境变量
小编配置的系统级别的,也可以配置用户级别的

# 系统级别的环境变量,对所有用户都生效
vim /etc/profile

# 或者用户级别的环境变量,只对当前用户生效
vim ~/.bash_profile

JAVA_HOME为安装目录,到能看到bin目录的文件夹即可,在/etc/profile(或者~/.bash_profile)文件的最后面追加即可

/etc/profile为所有用户都能使用的环境变量
~/.bash_profile为当前登陆的用户才能使用的环境变量

JAVA_HOME=/usr/lib/jdk1.8.0_191
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH

重新加载profile,显示版本号则安装成功

source /etc/profile
java -version

下载Tomcat

cd ~
wget tomcat地址(从官网找一个下载即可)
tar -xvf apache-tomcat-8.5.34.tar.gz

阿里云的端口需要到控制台开放,系统默认只开放3个端口
(这个真心要注意,很多人在这个上面踩坑,死活访问不了,防火墙各种搞)
在这里插入图片描述
开放8080端口,以后有端口需要开放都要到这里进行配置

访问外网ip:8080即可看到tomcat的主页,修改conf目录下的server.xml,将端口改为80,这样通过ip就能直接看到tomcat的主页,如果想显示自己的项目,可以配置,不再概述。也可以将自己的项目命名为ROOT,删除tomcat原有的ROOT项目即可

<Connector port="80" protocol="HTTP/1.1"
      connectionTimeout="20000"
      redirectPort="8443" />

常用命令下载

# 上传和下载文件
yum install lrzsz
# 查看端口占用
yum install lsof

安装Docker

centos7安装

yum install docker
卸载
yum list installed | grep docker
yum remove -y(-y不询问)

启动

service docker start
service docker stop
sudo chkconfig docker on(开机启动)
# 查看docker程序是否正常工作
docker info

测试

docker version
docker run hello-world
docker search hello-world

配置镜像

vi /etc/docker/daemon.json

官方针对中国市场的镜像

{
	"registry-mirrors":["https://registry.docker-cn.com"]
}

官方针对中国市场的镜像也很慢,最好配置一个阿里云的镜像,速度贼快

登陆阿里云官网,搜索容器镜像服务,复制自己的加速器地址到/etc/docker/daemon.json文件即可

在这里插入图片描述
当然Docker上各种软件nginx,mysql之类的都可以安装。鉴于有些小伙伴对docker不熟,就简单介绍一下在裸机上安装mysql nginx。

安装MySQL

查看是否安装了MySQL,显示没有安装

rpm -qa | grep mysql

如果你买的是1核2G的版本,首先建议你安装5.5的版本,5.6,5.7,8.0这点内存根本不够玩的,4g的内存的话可以考虑5.6,因为5.6和5.7差别不大,但是5.7更吃内存

下载MySQLrpm包

yum install https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

设置安装版本为5.5,打开如下配置文件

vim /etc/yum.repos.d/mysql-community.repo

将mysql55的enabled设置为1,将mysql57的enabled设置为0,安装哪个版本将哪个版本的enabled设置为1即可

[mysql55-community]
name=MySQL 5.5 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

看看是不是想要的版本

[root@iZ2zef7763ohogr3qilvctZ ~] yum repolist enabled | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community                  65
mysql-tools-community/x86_64      MySQL Tools Community                       69
mysql55-community/x86_64          MySQL 5.5 Community Server 

安装MySQL

yum install mysql

启动MySQL,必须先下载mariadb-server包

yum install mariadb-server -y
systemctl start mysqld

初始没有密码直接进入

mysql -u root

在mysql中修改密码

update mysql.user set password=PASSWORD('yourpassword') where user='root';

更新权限

flush privileges;

这样下次再登录时就得这样登录

回车后输入密码

mysql -u root -p

设置开机启动

systemctl enable mysqld
systemctl daemon-reload

添加远程账户,这样就能通过Navicat等进行访问了

GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

数据库访问工具可以用Navicat
在这里插入图片描述

配置nginx

准备环境

1.gcc 安装
安装nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装

# 查看是否安装gcc
rpm -qa|grep gcc
# 或者
gcc -v
# 没有输出则表示没安装,下面命令为安装
yum install gcc-c++

2.PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库

yum install -y pcre pcre-devel

3.zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。

yum install -y zlib zlib-devel

4. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。

yum install -y openssl openssl-devel

下载安装

1.下载压缩包,下载地址:https://nginx.org/en/download.html

wget -c https://nginx.org/download/nginx-1.10.1.tar.gz

2.解压

tar -zxvf nginx-1.10.1.tar.gz
cd nginx-1.10.1

3.配置

3.1使用默认配置(推荐使用)

./configure

3.2使用自定义配置,想支持https的可以使用如下配置,其余配置自定义即可

./configure --with-http_ssl_module

4.编译安装

make && make install

查找安装路径(默认在/usr/local下)

whereis nginx

启动和关闭

检查语法是否有错误,进入nginx的sbin目录下

./nginx -t 
# 停止
# 此方式停止步骤是待nginx进程处理任务完毕进行停止
./nginx -s quit

# 此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
./nginx -s stop

# 启动
./nginx

# 重启,nginx重新编译后(如加入新的模块)这个重启不管用,因为二进制文件还是用的原来的
./nginx -s reload

如果不想每次到nginx的sbin目录下,可以设置软链接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
ln -s /usr/local/nginx/conf/ /etc/nginx

这个在命令行中就直接支持nginx命令了

配置二级域名

如果还买了域名,配置域名还是很容易的,教程也很多,就不概述了,写一下配置二级域名的过程

www.erlie.cc这个是一级域名,book.erlie.cc这是二级域名,book可以随便换

首先在域名服务商添加解析,我用的是阿里云
在这里插入图片描述nginx.conf增加类似如下配置即可

http {

    server {
        listen       80;
        server_name  book.erlie.cc;
    }

    server {
        listen       80;
        server_name  www.erlie.cc;
    }

}

如果还想配置https,看如下文章

配置Maven镜像

我自己写的项目都是每次直接从git上面拉代码然后编译的,所以我会配一下Maven镜像,速度很快,不然偶尔会卡住

分享一个发布脚本

#!/bin/sh

PROJECT_NAME=new-blog
GIT_HOME=/opt/git-repository/
DEST_PATH=/opt/application/

cd $GIT_HOME$PROJECT_NAME

# git操作
echo -e "=====git checkout master====="
git checkout master

echo -e "=====git pull====="
git pull

echo -e "=====mvn package====="
mvn clean package -DskipTests=true


if [ -d "./target" ];
	then
	# backup dest
	echo -e "=====dest backup====="
	mv $DEST_PATH$PROJECT_NAME/lib/*.jar $DEST_PATH$PROJECT_NAME/lib/*.jar.bak
	
	# copy
	echo -e "=====copy====="
	cp ./target/*.jar $DEST_PATH$PROJECT_NAME/lib
	
	# echo result
	echo -e "=====Deploy Success====="
else
	echo -e "=====Deploy Error====="
fi

我们来详细说一下settings.xml这个文件,这个文件可以定制Maven的行为,settings.xml可以放在2个位置,~/.m2/setting.xml(默认没有,需要我们自己复制)和${maven.home}/conf/setting.xml

这2个配置文件的加载顺序为~/.m2/setting.xml>${maven.home}/conf/setting.xml,为了不影响他人,所以我们将conf下的settings.xml复制到家目录,在用户级别定制Maven的行为

在这里插入图片描述

在settings.xml文件中的mirrors下添加mirror标签即可

<mirror>
 <id>alimaven</id>
 <name>aliyun maven</name>
 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
 <mirrorOf>central</mirrorOf>
</mirror>

命令行工具

Window:XShell 或者 Securecrt
Mac: iTerm2 或者 Securecrt
在这里插入图片描述

立即购买

为了方便小伙伴,可扫如下链接购买(链接已拼团,直接享受优惠)
在这里插入图片描述

Logo

更多推荐