目录
一、服务器的购买和安装
二、所需软件的下载
2.1、FinalShell下载和安装
简介:FinalShell是一个shell工具,个人认为比xshell好用,xshell只支持win系统,而FinalShell支持多个操作系统,且支持账号登录保存等功能。
FinalSHell官网地址
2.1.1、下载及安装
大家可以自行到官网下载,安装过程同所有软件一样。
Windows版下载地址
http://www.hostbuf.com/downloads/finalshell_install.exe
macOS版下载地址
2.1.2、登录
安装完成以后,打开软件会提示需要登录,按照正常注册及登录流程即可。关于高级版,可以根据情况自己选择是否购买。
2.1.3、连接到 云服务 器
1、新建连接面板
2、在云 服务 器找到自己服务器的外网ip
3、同时配置安全组规则,打开22端口
4、接下来我们配置FinalShell
5、激动人心的时刻到啦,终于看到界面啦。
6、顺便我们在根目录下创建一个data文件夹,一会我们下载软件都放在这个里面。
2.2、Node.js
1、打开nodejs官网,选择全部安装包
nodejs官网
nodejs镜像源
2、选择linux版本的 .tar.gz 格式,我们右键复制链接地址
链接地址
https://npmmirror.com/mirrors/node/v14.16.0/node-v14.16.0-linux-x64.tar.gz
3、在FinalShell中切换到data目录,下载文件
# 切换到data目录
cd /data
# 下载文件
wget https://npmmirror.com/mirrors/node/v14.16.0/node-v14.16.0-linux-x64.tar.gz
4、下载成功,如图,底部文件夹可能不会刷新那么及时,可以点击【历史】右侧的刷新按钮,node下载完毕。
2.3、MySQL
1、打开MySQL官网,点击下载,之后选择最下面的选项,如图
MySQL官网
2、之后选择服务端,如图
3、之后选择linux版本,点击下载,如图
4、右键点击底部的直接开始下载,复制地址链接
链接地址
https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
5、到FinalShell中执行
# 切换到data目录
cd /data
# 下载MySQL
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
6、下载成功,如图,底部文件夹可能不会刷新那么及时,可以点击【历史】右侧的刷新按钮,MySQL下载完毕。
2.4、JDK
是不是好奇为什么突然多了JDK,原因就是Tomcat的运行是依赖于JDK的,所以我们要下载这两个。
1、打开oracle的官网(注册账号,并且登录),找到JDK,然后下划页面到Java SE 8,目前市场使用最多的还是JDK8,如图
JDK下载地址
https://www.oracle.com/java/technologies/javase-downloads.html
2、【由于oracle官网限制,务必先登录,否则下载的文件有问题】下划页面,然后按照顺序三个点击操作,如图
3、将下载到本地的文件直接拖拽到云服务器的/data目录下,JDK下载完毕。
2.5、Tomcat
1、打开Tomcat官网,按照下图操作复制链接
Tomcat官网
2、到FinalShell中执行
# 切换到data目录
cd /data
# 下载Tomcat
wget https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.65/bin/apache-tomcat-8.5.65.tar.gz
3、下载成功,如图,底部文件夹可能不会刷新那么及时,可以点击【历史】右侧的刷新按钮,Tomcat下载完毕。
2.6、Nginx
1、打开Nginx官网,按照下图操作复制链接
Nginx官网
2、到FinalShell中执行
# 切换到data目录
cd /data
# 下载Nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz
3、下载成功,如图,底部文件夹可能不会刷新那么及时,可以点击【历史】右侧的刷新按钮,Nginx下载完毕。
2.7、Git
git的下载,后面配置的时候一并处理。
三、Node.js的安装及配置
1、执行命令如下
# 切换到到 /data 目录
cd /data
# 解压node文件
tar -zvxf node-v14.16.0-linux-x64.tar.gz
# 将 node 移动到 /usr/local 目录下
mv /data/node-v14.16.0-linux-x64 /usr/local
# 切换到到 /usr/local 目录下,查看该目录下是否有我们之前的文件夹
cd /usr/local
ll
# 配置环境变量,执行下面命令
vim /etc/profile.d/node.sh
# 按 i 开始写入以下命令后按 esc 键,之后输入 :wq 退出编辑
export NODE_HOME=/usr/local/node-v14.16.0-linux-x64
export PATH=.:$NODE_HOME/bin:$PATH
# 编译环境变量
source /etc/profile
# 查看 node 是否配置成功
node -v
2、效果如下
至此,node 配置成功
四、Git和gitee的安装及配置
1、首先我们注册一个gitee账号,新建一个代码仓库,一会我们要验证git是否成功安装并使用
gitee官网地址
2、我们使用yum安装Git,所以我们执行操作即可
# 使用 yum 安装 git
yum install git -y
# 查看是否安装成功
git --version
3、配置Git
# 设置全局的用户名和邮箱,设置为自己的用户名和邮箱即可
git config --global user.name "username"
git config --global user.email "***@**.com"
# 生成公钥,请输入自己在 gitee 中注册的邮箱
ssh-keygen -trsa -C "***@**.com"
# 查看公钥信息,复制到 gitee 中
cat /root/.ssh/id_rsa.pub
4、配置gitee,添加公钥信息
5、我们就可以正常执行pull和push操作了,可能需要输入一次gitee的账号和密码,之后就没问题了,就可以正常使用了。
五、Tomcat的安装及配置
1、Tomcat的运行需要到JDK,所以我们先安装JDK
# 切换到到 /data 目录
cd /data
# 解压 jdk 文件
tar -zvxf jdk-8u141-linux-x64.tar.gz
# 将 jdk 移动到 /usr/local 目录下
mv /data/jdk1.8.0_141 /usr/local
# 切换到到 /usr/local 目录下,查看该目录下是否有我们之前的文件夹
cd /usr/local
ll
# 配置环境变量,执行下面命令
vim /etc/profile.d/jdk.sh
# 按 i 开始写入以下命令后按 esc 键,之后输入 :wq 退出编辑
export JAVA_HOME=/usr/local/jdk1.8.0_141
export JRE_HOME=/usr/local/jdk1.8.0_141/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin
# 编译环境变量
source /etc/profile
# 查看 jdk 是否配置成功
java -version
2、操作情况如下
3、安装Tomcat
# 切换到到 /data 目录
cd /data
# 解压 tomcat 文件
tar -zvxf apache-tomcat-8.5.65.tar.gz
# 将 tomcat 移动到 /home 目录下
mv /data/apache-tomcat-8.5.65 /home
# 切换到到 /home 目录下,查看该目录下是否有我们之前的文件夹
cd /home
ll
# 配置 tomcat 权限
groupadd tomcat
useradd -g tomcat -s /sbin/nologin tomcat
chown -R tomcat:tomcat /home/apache-tomcat-8.5.65
# 启动
cd /home/apache-tomcat-8.5.65/bin
./startup.sh
# 检查是否启动成功
ps -ef|grep 8080
4、安装效果如图
5、通过公网ip访问,看到如下界面则表示启动成功,如果无法访问,请检查云服务控制台,设置防火墙,打开8080端口。
6、设置Tomcat开机自启动
# 新建自启动文件
vim /etc/init.d/tomcat8
# 拷贝如下内容
#!/bin/bash
# tomcat8
# chkconfig: - 80 20
### BEGIN INIT INFO
# Provides: tomcat8
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Default-Start:
# Default-Stop:
# Description: Tomcat 8
# Short-Description: start and stop tomcat
### END INIT INFO
## Source function library.
#. /etc/rc.d/init.d/functions
export JAVA_OPTS="-Dfile.encoding=UTF-8 \
-Dnet.sf.ehcache.skipUpdateCheck=true \
-XX:+UseConcMarkSweepGC \
-XX:+CMSClassUnloadingEnabled \
-XX:+UseParNewGC \
-XX:MaxPermSize=128m \
-Xms512m -Xmx512m"
TOMCAT_HOME=/home/apache-tomcat-8.5.65
TOMCAT_USER=tomcat
SHUTDOWN_WAIT=20
tomcat_pid() {
echo `ps aux | grep org.apache.catalina.startup.Bootstrap | grep -v grep | awk '{ print $2 }'`
}
start() {
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Tomcat is already running (pid: $pid)"
else
# Start tomcat
echo "Starting tomcat"
ulimit -n 100000
umask 007
/bin/su -p -s /bin/sh $TOMCAT_USER $TOMCAT_HOME/bin/startup.sh
fi
return 0
}
stop() {
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Stoping Tomcat"
/bin/su -p -s /bin/sh $TOMCAT_USER $TOMCAT_HOME/bin/shutdown.sh
let kwait=$SHUTDOWN_WAIT
count=0;
until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ]
do
echo -n -e "\nwaiting for processes to exit";
sleep 1
let count=$count+1;
done
if [ $count -gt $kwait ]; then
echo -n -e "\nkilling processes which didn't stop after $SHUTDOWN_WAIT seconds"
kill -9 $pid
fi
else
echo "Tomcat is not running"
fi
return 0
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Tomcat is running with pid: $pid"
else
echo "Tomcat is not running"
fi
;;
esac
exit 0
# 授权
chmod +x /etc/init.d/tomcat8
# 设置快捷访问
chkconfig --add /etc/init.d/tomcat8
# 设置开机自启动
chkconfig tomcat8 on
六、Nginx的安装及配置
1、nginx安装所需依赖
#gcc安装,nginx源码编译需要
yum install gcc-c++
#PCRE pcre-devel 安装,nginx 的 http 模块使用 pcre 来解析正则表达式
yum install -y pcre pcre-devel
#zlib安装,nginx 使用zlib对http包的内容进行gzip
yum install -y zlib zlib-devel
#OpenSSL 安装,强大的安全套接字层密码库,nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http)
yum install -y openssl openssl-devel
2、安装nginx
# 切换到到 /data 目录
cd /data
# 解压 nginx 文件
tar -zvxf nginx-1.18.0
# 将 tomcat 移动到 /usr/local 目录下
mv /data/nginx-1.18.0 /usr/local
# 切换到到 /usr/local 目录下,查看该目录下是否有我们之前的文件夹
cd /usr/local
ll
# 切换到 nginx 目录
cd /usr/local/nginx-1.18.0/
# 依次执行
./configure
make
make install
3、以上步骤安装成功后会在原nginx-1.18.0目录下生成一个nginx目录
4、启动
# 切换目录
cd /usr/local/nginx/sbin
# 启动
./nginx
#停止,直接查找nginx进程id再使用kill命令强制杀掉进程
./nginx -s stop
# 退出停止,等待nginx进程处理完任务再进行停止
./nginx -s quit
# 重新加载配置文件,修改nginx.conf后使用该命令,新配置即可生效
./nginx -s reload
5、浏览器直接访问公网IP,无需添加端口号。访问到如下信息表示成功
6、配置开机自启动
# 创建自启动文件
vim /etc/init.d/nginx
# 输入一下内容,注意下面配置路径的地方更改为自己的实际路径
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig: - 85 15
# description: NGINX is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /etc/sysconfig/nginx
# pidfile: /var/run/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
make_dirs() {
# make required directories
user=`$nginx -V 2>&1 | grep "configure arguments:.*--user=" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
if [ -n "$user" ]; then
if [ -z "`grep $user /etc/passwd`" ]; then
useradd -M -s /bin/nologin $user
fi
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $options; do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
fi
fi
done
fi
}
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
sleep 1
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $prog -HUP
retval=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac
exit 0
# 授权
chmod a+x /etc/init.d/nginx
# 映射快捷访问方式
chkconfig --add /etc/init.d/nginx
# 设置开机自启动
chkconfig nginx on
# 手动启动
systemctl start nginx
七、MySQL的安装及配置
1、安装步骤如下
# 切换到 /data 目录
cd /data
# 解压 MySQL 文件
tar -xvf mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
# 移动到 /home 目录
mv mysql-8.0.23-linux-glibc2.12-x86_64 /home
# 进入到 MySQL 目录
cd /home/mysql-8.0.23-linux-glibc2.12-x86_64
# 新建 data 和 tmp 文件夹,用来存放数据
mkdir data
mkdir tmp
# 授权文件夹
chmod -R 777 tmp
# 创建用户组以及用户和密码
groupadd mysql
useradd -g mysql mysql
# 授权用户
chown -R mysql.mysql /home/mysql-8.0.23-linux-glibc2.12-x86_64
# 切换到bin目录下
cd /home/mysql-8.0.23-linux-glibc2.12-x86_64/bin
# 初始化基础信息-得到临时密码
./mysqld --user=mysql --basedir=/home/mysql-8.0.23-linux-glibc2.12-x86_64 --datadir=/home/mysql-8.0.23-linux-glibc2.12-x86_64/data/ --initialize
# 拷贝临时密码,找到自己的
2、安装如图
3、配置MySQL并启动
# 编辑 my.cnf 文件
vim /etc/my.cnf
# 按 i 输入以下命令,之后按 :wq 退出
[client]
default-character-set=utf8mb4
port=3306
socket = /home/mysql-8.0.23-linux-glibc2.12-x86_64/tmp/mysql.sock
[mysqld]
basedir = /home/mysql-8.0.23-linux-glibc2.12-x86_64
datadir = /home/mysql-8.0.23-linux-glibc2.12-x86_64/data
socket = /home/mysql-8.0.23-linux-glibc2.12-x86_64/mysql.sock
port = 3306
user=mysql
# sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
character-set-server = utf8mb4
# collation-server = utf8mb4_unicode_ci
# init_connect='SET NAMES utf8mb4'
# skip-character-set-client-handshake = true
[mysql]
default-character-set = utf8mb4
[mysqld_safe]
# log-error=/var/mysql/logger/mysqld.log
# pid-file=/var/mysql/pid/mysqld.pid
# 添加mysqld服务到系统
cp -a /home/mysql-8.0.23-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql
# 授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
# 启动 MySQL 服务
service mysql start
# 查看启动状态
service mysql status
# 将 MySQL 命令添加到服务
ln -s /home/mysql-8.0.23-linux-glibc2.12-x86_64/bin/mysql /usr/bin
# 登录 MySQL
mysql -u root -h 127.0.0.1 -p
# 密码使用之前随机生成的密码
# 修改root密码,***改成自己的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '******';
flush privileges;
# 选择mysql数据库
use mysql;
# 修改远程连接并生效
update user set host='%' where user='root';
flush privileges;
4、如图
八、域名解析及配置
域名在使用前均需提交工信部备案,否则不能正常使用。本案例使用域名在阿里云购买,并在腾讯云解析。
1、在阿里云域名菜单找到自己购买的域名,点击管理
2、在腾讯云找到 云解析DNS 之后添加域名,将鼠标放到 状态上就会提示让修改的dns信息
chapman.dnspod.net
artist.dnspod.net
3、在阿里云中修改DNS信息
4、添加如下记录,其中记录值就是公网ip,在自己的腾讯云 服务 器实例中查看
5、通过浏览器直接访问即可
6、配置nginx域名和代理地址
切换到nginx配置文件,配置如下
vim /usr/local/nginx/conf/nginx.conf
7、效果如下
九、其他待补充
设置淘宝镜像 npm config set registry https://registry.npmmirror.com/
node19及以上版本安装报错
https://blog.csdn.net/nilm61/article/details/134266633
安装redis