购买阿里云服务器,从0开始部署项目

  • 购买服务器
  • 使用xshell连接服务器
  • 安装jdk1.8
  • 安装maven Maven >= 3.0
  • 配置git
  • 安装docker以及mysql
  • 项目部署
  • springboot的配置文件另外配置时。


购买服务器

服务器购买地址:阿里云云翼计划

找到实例:更多->密码->重置实例密码

云服务器 mysql 1698_云服务器 mysql 1698


找到安全组,添加端口通过阿里云服务器的防火墙

云服务器 mysql 1698_云服务器 mysql 1698_02

使用xshell连接服务器

开始配置环境
新建目录:
#tmp存放临时安装包
mkdir -p /home/tmp
#service存放软件环境
mkdir -p /home/service
#gitee存放代码版本控制库
mkdir -p /home/gitee

安装jdk1.8

#进入安装包目录,解压
cd /home/tmp
tar -zxvf jdk-8u261-linux-x64.tar.gz

#把解压出来的文件夹转移到统一的地方
mv /home/tmp/jdk1.8.0_261 /home/service/jdk1.8.0_261

#修改环境变量/etc/profile,JAVA_HOME修改为自己的jdk路径。
vim /etc/profile
export JAVA_HOME=/home/service/jdk1.8.0_261
export PATH=$PATH:$JAVA_HOME/bin

#使环境变量生效
source /etc/profile

#检查是否配置成功
java -version

安装maven Maven >= 3.0

#进入安装包目录,解压
tar -zxvf apache-maven-3.6.3-bin.tar.gz

#修改环境变量/etc/profile,MAVEN_HOME修改为自己的jdk路径。
export MAVEN_HOME=/home/service/maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

#使环境变量生效
source /etc/profile

#检查是否配置成功
mvn -v

配置git

#通过yum安装,本方法最简单。但是无法控制安装的版本
yum -y install git

#检查是否配置成功
git --version

ssh-keygen -t rsa -C "xx@"
cat ~/.ssh/id_rsa.pub

gitee地址:https://gitee.com/profile/sshkeys

云服务器 mysql 1698_git_03

配置sshKey参考:

安装docker以及mysql

Mysql >= 5.5.0 (推荐5.7版本)
使用docker的方式安装mysql,首先安装docker

#卸载旧版本
sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-latest-logrotate \
              docker-logrotate \
                docker-engine
                
#安装 Docker Engine-Community

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager \
  --add-repo \
  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  
sudo yum install docker-ce docker-ce-cli containerd.io

sudo systemctl start docker

yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
#查看可用的 MySQL 版本
docker search mysql
#拉取5.7版本
docker pull mysql:5.7
#创建配置文件目录
mkdir -p /home/docker/mysql/conf
#进入配置文件目录,添加一个配置文件
vim my.cnf
添加
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8

#启动镜像
docker run -p 3306:3306 --name mysql -v /home/docker/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

#进入docker容器设置env LANG=C.UTF-8
docker exec -it mysql env LANG=C.UTF-8 bash

项目部署

#创建git仓库目录,clone项目源代码
mkdir -p /data/gitee
cd /data/gitee
git clone git@gitee.com:y_project/RuoYi.git

#复制需要执行的sql文件到docker的映射目录中
cp /home/gitee/RuoYi/sql/quartz.sql /data/docker/mysql/conf/
cp /home/gitee/RuoYi/sql/ry_20200911.sql /data/docker/mysql/conf/

#进入docker容器中,执行sql文件
docker exec -it mysql env LANG=C.UTF-8 bash
#连接mysql
mysql -uroot -p
#创建数据库ruoyi
create database if not exists ruoyi character set='utf8';
#进入数据库,执行文件
use ruoyi;
source /etc/mysql/conf.d/quartz.sql;
source /etc/mysql/conf.d/ry_20200911.sql;


cd /home/gitee/RuoYi/ruoyi-admin/src/main/resources/
#修改application.yml的项目启动端口号
vim application.yml
#修改application-druid.yml的数据源
vim application.yml

# 打包项目
cd /data/gitee/RuoYi/
mvn install
如果打包报错,在在pom.xml中找到<build> 节点,在里面加上<defaultGoal>compile</defaultGoal>即可

mkdir -p /home/app/ruoyi-admin

cp /home/gitee/RuoYi/ruoyi-admin/target/ruoyi-admin.jar /home/app/ruoyi-admin/ruoyi-admin.jar

cd /home/app/ruoyi-admin/
nohup java -jar ruoyi-admin.jar &
nohup和&用来表示本命令需要在后台执行,这样退出命令行程序后,java程序也不会停止

springboot的配置文件另外配置时。

可以在jar的同级目录下放置springboot的配置文件,又或者在jar包同级目录下创建config文件夹把配置文件放在config目录下。
可以参考此篇博文:

常见的一些指令;
linux下退出mysql:quit或者exit
vim的一些操作:
a:进入到编制模式
\n:换行
esc:进入到命令模式
:跳到最后一行
:x 退出保存
:wq 退出保存
:q! 退出不保存

查看java进程:ps -ef|grep java
查看tomcat进程: ps -ef|grep tomcat
查看进程端口号: netstat -ntulp|grep 进程号
杀死进程:kill -9 进程号
查询日志:tail -f log
删除文件:rm -rf 文件名
部署jar包命令:
后台运行并打印日志:
nohup java -jar XXX.jar &
不需要输出日志文件命令:
nohup java -jar XXX.jar >dev/null&
linux服务器内存查看:free -m或者free -g
启动tomcat命令:./startup.sh
关闭tomcat: ./shutdown.sh
查看javaWeb项目的日志:cat catalina.out
查看当前哪一个进程占用某个端口:
lsof -i:端口号
根据进程id查看具体信息:
ps axu|grep 进程id
查看Linux服务器版本:lsb_release -a
查看当前iptables(防火墙规则):
iptables –L –n
添加指定端口到防火墙中:
iptables -I INPUT -p 协议 --dport 端口号 -j ACCEPT
例如:

iptables -I INPUT -p udp --dport 161 -j ACCEPT
iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

doker相关的命令

docker images 
docker ps -a 查询所有docker容器
docker start dcokerId 重启容器
如何删除本地docker images镜像
https://www.cnblogs.com/everfight/p/docker_images.html

安装微软雅黑字体:
cd /usr/share/fonts/
上传msyh.ttf文件
mkfontscale
mkfontdir
fc-cache
查看是否安装成功:
fc-list :lang=zh

ping 域名可以看得到ip地址
列如:ping virtual.yzq.org.cn/

通过域名找到部署包的位置。

cd nginx安装的路径
 例如:cd /usr/local/nginx/conf
 找到域名对应的conf文件
cat 域名.conf 
找到对应服务的端口号
netstat -lnp | grep 7002
 ls /proc/18878
ls -l /proc/18878