1、在本地电脑下载jdk-11.0.2,并解压。
2、在Centos 服务器新建/home/web/目录。
3、使用FileZilla工具将本地电脑解压的jdk-11.0.2目录上传到Centos 服务器的/home/web/目录下。
4、在Centos 服务器配置jdk-11.0.2环境变量,输入:
vi /etc/profile
在profile文件末尾加入:
export JAVA_HOME=/home/web/jdk-11.0.2
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
然后执行更新:source /etc/profile
执行下面命令自动安装:
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum localinstall mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server
提示的地方,全部输入y
成功安装之后重启mysql服务
service mysqld restart
初次安装mysql是root账户是没有密码的
设置密码的方法
mysql -uroot
mysql>use mysql;
mysql> UPDATE user SET Password = PASSWORD('123456') WHERE user = 'root';
mysql> flush privileges;
mysql> exit;
重新登陆
mysql -u root -p
查看MYSQL的编码:
show variables like 'character%';
修改编码为UTF-8:
mysql> exit;
# mysql配置文件位置:/etc/my.cnf
vi /etc/my.cnf
修改为这样:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
重启MySQL服务
systemctl restart mysql.service
设置MySQL开机启动
systemctl enable mysqld
systemctl daemon-reload
重新登陆
mysql -u root -p
查看MYSQL的编码:
show variables like 'character%';
创建数据库:
CREATE DATABASE ergou;
查看ergou数据库的编码:
show create database ergou;
查看数据表的编码:
show create table <表名>;
MySQL常用命令:
设置MySQL开机启动
systemctl enable mysqld
systemctl daemon-reload
查看MySQL的启动状态
systemctl status mysqld
启动MySQL服务
systemctl start mysqld
关闭mysql
service mysqld stop
拉取镜像:
docker pull nginx
在Centos 服务器的/home/web/目录下新建一个nginx文件夹
cd /home/web/nginx # 进入nginx文件夹
# 运行容器
docker run --restart=always -p 443:443 -p 80:80 --name mynginx -v $PWD/html:/usr/share/nginx/html -v $PWD/conf:/etc/nginx/conf.d -v $PWD/logs:/var/log/nginx -v $PWD/ssl:/ssl/ -d nginx
# 查看容器是否正常运行
docker ps
# 如果容器未正常运行,先查看容器id,再查看log日志
docker ps -a #查看容器的id
docker logs 容器ID #查看错误日志
运行容器成功后,会在/home/web/nginx目录下,自动生成html,conf,logs,ssl目录
html目录:存放网页文件
conf目录:存放配置文件
logs目录:存放日志文件,自动生成。
ssl目录:存放https证书和秘钥(该https证书和秘钥为域名下的nginx证书文件)
在本地电脑新建一个https配置文件,然后上传到Centos 服务器的/home/web/nginx/conf目录下
https配置文件如下(随便给配置文件取个名):
server {
listen 443 ssl;
server_name baidu.com;
# ssl on;
root /usr/share/nginx/html;
index index.html index.htm;
ssl_certificate /ssl/1832862_www.baidu.com.pem;
ssl_certificate_key /ssl/1832862_www.baidu.com.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
index index.html index.htm;
try_files $uri $uri/ /index.html last;
}
location /api {
proxy_pass https://baidu.com:8088;
}
}
server {
listen 80;
server_name baidu.com;
rewrite ^(.*)$ https://$host$1 permanent;
}
接着将生成的vue项目,上传到Centos 服务器的/home/web/nginx/html目录下
然后重启nginx容器
docker ps # 查看运行中的容器的id
docker restart 容器id #重启nginx容器
到此,浏览器输入baidu.com,即可访问页面了,https的。
1、下载baidu.com域名下的tomcat证书文件
2、在springboot项目的application.properties文件下添加:
server.ssl.key-store= 1832862_www.baidu.com.pfx
server.ssl.key-store-password= RTdeFLk3
完整的application.properties文件如下:
server.port=8088
server.ssl.key-store= 1832862_www.baidu.com.pfx
server.ssl.key-store-password= RTdeFLk3
spring.profiles.active=dev
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/ergou?characterEncoding=UTF-8&serverTimezone=GMT
spring.datasource.username=root
spring.datasource.password=123456
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
logging.level.org.springframework.web= INFO
# logging.level.org.springframework.web= DEBUG
3、在springboot项目的根目录下添加1832862_www.baidu.com.pfx
文件。
4、在idea的右侧工具栏maven那,展开Lifecycle,先点击clean,再点击package,进行打包,打包成功后会在项目根目录生成一个target目录,打开target目录,将里面的ergou-0.0.1-SNAPSHOT.jar文件上传到服务器的/home/web/ergou目录下(如果没有该目录,新建一个)
5、接着将1832862_www.baidu.com.pfx
文件也上传到服务器的/home/web/ergou目录下。
6、在本地电脑新建三个文件并上传到服务器的/home/web/ergou目录下,三个文件分别如下:
通过创建stop.sh , start.sh ,run.sh这三个脚本文件来实现后台长久运行springboot
run.sh
#!/usr/bin/env bash
echo stop application
source stop.sh
echo start application
source start.sh
start.sh
#!/usr/bin/env bash
nohup java -jar ergou-0.0.1-SNAPSHOT.jar --server.port=8088 &
注意jar的文件名要一致,运行端口也要一致。
stop.sh
#!/usr/bin/env bash
PID=$(ps -ef | grep ergou-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo Application is already stopped
else
echo kill $PID
kill $PID
fi
注意jar的文件名要一致
7、在服务器进入/home/web/ergou目录,执行:
./run.sh
如果没执行权限,分别为run.sh,start.sh,stop.sh赋予执行权限:
chmod u+x run.sh
chmod u+x start.sh
chmod u+x stop.sh
u代表所有者,x代表执行权限。 + 表示增加权限。
接着,再执行./run.sh
主要是vue.config.js文件配置,重点是路径问题
module.exports = {
//基本路径
publicPath: '/',
// 输出文件目录
outputDir: 'dist',
// webpack-dev-server 相关配置
devServer: {
// host: 'localhost',
// port: 8081,
disableHostCheck: true,
proxy: { // 设置代理
'/api': {
target: 'http://127.0.0.1:8088',
changeOrigin: true,
pathRewrite: {
'^/api': '/api'
}
}
},
}
};
在项目根目录,输入:npm run build
进行打包(打包前,如果dist目录存在,先删除该目录)。打包后在根目录生成一个dist目录,将里面的文件全部上传到服务器的/home/web/nginx/html目录下。