介绍
今年阿里云优惠特别巨大,同样的配置新老用户的价格能差到5倍左右,而且双11后活动结束,用来学习最好不过了,主要是真便宜,比在自己电脑上装虚拟机玩Linux爽多了。
但是很多小伙伴不知道如何配置,也不知道MySQL该安装哪个版本,就简单写个教程,搭建一下基础的环境。如果不是新用户可以用家里人的账号买。登录到Linux服务器,可以直接在web页面登录,也可以使用XShell登录,有社区版,个人用足够了,用不着到处破解。服务器的话选择CentOS7即可,国内的公司服务器基本上用的都是这个
安装JDK和Tomcat
如果不知道用户名和密码的可以到控制台去查看,可以直接修改密码,Linux版本的可以直接用wget命令下载文件,用rz命令将本地文件上传到服务器,用sz命令将服务器上的文件下载到本地,Windows版本的可以部署FTP或者直接通过远程连接传输文件,Win10的话还支持scp命令,看这篇文章
下载jdk
wget jdk地址(从官网找一个下载即可)
tar
配置系统环境变量
小编配置的系统级别的,也可以配置用户级别的
# 系统级别的环境变量,对所有用户都生效
vim /etc/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
重新加载profile,显示版本号则安装成功
source
下载Tomcat
cd ~
wget tomcat地址(从官网找一个下载即可)
tar
阿里云的端口需要到控制台开放,系统默认只开放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
启动
service docker start
service docker stop
sudo chkconfig docker on(开机启动)
# 查看docker程序是否正常工作
测试
docker version
docker run hello-world
docker search hello-world
配置镜像
vi
官方针对中国市场的镜像
{
"registry-mirrors":["https://registry.docker-cn.com"]
}
官方针对中国市场的镜像也很慢,最好配置一个阿里云的镜像,速度贼快
登陆阿里云官网,搜索容器镜像服务,复制自己的加速器地址到/etc/docker/daemon.json文件即可
当然Docker上各种软件nginx,mysql之类的都可以安装。鉴于有些小伙伴对docker不熟,就简单介绍一下在裸机上安装mysql nginx。
安装MySQL
查看是否安装了MySQL,显示没有安装
rpm -qa | grep
如果你买的是1核2G的版本,首先建议你安装5.5的版本,5.6,5.7,8.0这点内存根本不够玩的,4g的内存的话可以考虑5.6,因为5.6和5.7差别不大,但是5.7更吃内存
下载MySQLrpm包
yum install
设置安装版本为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
yum install
启动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
添加远程账户,这样就能通过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
2.PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库
yum install
3.zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install
4. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install
下载安装
1.下载压缩包,下载地址:https://nginx.org/en/download.html
wget
2.解压
tar -zxvf nginx-1.10.1.tar.gz
cd
3.配置
3.1使用默认配置(推荐使用)
./configure
3.2使用自定义配置,想支持https的可以使用如下配置,其余配置自定义即可
./configure --with-http_ssl_module
4.编译安装
make && make install
查找安装路径(默认在/usr/local下)
whereis
启动和关闭
检查语法是否有错误,进入nginx的sbin目录下
./nginx -t
# 停止
# 此方式停止步骤是待nginx进程处理任务完毕进行停止
./nginx -s quit
# 此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
./nginx -s stop
# 启动
./nginx
# 重启,nginx重新编译后(如加入新的模块)这个重启不管用,因为二进制文件还是用的原来的
如果不想每次到nginx的sbin目录下,可以设置软链接
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
ln
这个在命令行中就直接支持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
原文链接:https://blog.51cto.com/u_15651175/5558584