Ubuntu裸机部署springboot+web项目
简介
本文章环境是在Ubuntu 16.04裸机上进行的,没有使用apt或者rpm等工具。主要部署web应用,后端服务是用springboot项目,前端UI界面用了react应用。默认直接使用root账号进行操作。工作目录为/root目录。默认没有外网环境,可以将所需的安装包在有网络的环境中下载下来通过ftp等方式放置到根目录中。
安装java
- 下载jdk
在oracle官网下载安装包,本人用的是jdk8jdk-8u221-linux-x64.tar.gz
- 创建目录
mkdir /usr/java
- 进入java目录
cd /usr/java
- 将文件中的jdk-8u221-linux-x64.tar.gz拷贝到/usr/java目录中
cp ./jdk-8u221-linux-x64.tar.gz /usr/java/java8.tar.gz
- 解压
tar -zxvf java8.tar.gz
- 设置环境变量
vim /etc/profile
- 在 profile 文件中添加如下内容并保存
export JAVA_HOME=/usr/java/jdk1.8.0_221
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
- 查看Jdk版本
$java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
安装mysql
安装之前需要先安装所需的运行库
安装libaio-dev
- 下载
在libaio-dev官网下载,本人下载的安装文件为libaio-0.3.104.tar.gz
- 解压
tar -xzvf libaio-0.3.104.tar.gz
- 进入目录
cd libaio-0.3.104
- 执行命令
make make install
安装mysql
- 下载
在mysql官网下载,本人下载mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz - 创建mysql用户组和用户
sudo groupadd mysql sudo useradd -r -g mysql mysql
- 将工作目录中的mysql压缩文件放置在linux的/usr/local文件夹下
cp mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz /usr/local/mysql.tar.gz
- 进入
/usr/local
目录cd /usr/local
- 解压
tar -zxvf mysql.tar.gz
- 修改文件夹名
mv mysql-5.6.45-linux-glibc2.12-x86_64 mysql
- 进入安装mysql目录
cd /usr/local/mysql
- 创建文件夹
mkdir ./data/mysql
- 修改权限
chown -R mysql:mysql ./
- 拷贝文件
cp support-files/my-default.cnf /etc/my.cnf
- 修改文件
改成如下配置vi /etc/my.cnf
保存退出[mysqld] # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. basedir = /usr/local/mysql/ datadir = /usr/local/mysql/data port = 3306 log-error = /usr/local/mysql/data/error.log pid-file = /usr/local/mysql/data/mysql.pid user = mysql tmpdir = /tmp # server_id = ..... # socket = ..... # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
- 初始化数据库
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid --tmpdir=/tmp
- 复制命令文件
cp support-files/mysql.server /etc/init.d/mysqld
- 修改权限
chmod 755 /etc/init.d/mysqld
- 修改启动脚本
修改项vi /etc/init.d/mysqld
basedir=/usr/local/mysql/ datadir=/usr/local/mysql/data/mysql
- 启动服务
service mysqld start
- 测试链接
./mysql/bin/mysql -uroot
- 退出
exit
- 进入到工作目录
cd ~
- 执行sql脚本文件命令
/usr/local/mysql/bin/mysql source database.sql
- 设置开机自启
update-rc.d mysqld defaults
安装nginx
安装pcre运行库
- 官网下载,本人下载的为pcre-8.37.tar.gz
- 进入目录
cd pcre-8.37
- 运行命令
./configure make make install
- 创建软连接
ln -s /usr/local/lib/libpcre.so.1 /lib
安装zlib运行库
- 下载地址,本人下载的为 zlib-1.2.11.tar.gz
- 解压
tar -zxvf zlib-1.2.11.tar.gz
- 进入目录
cd zlib-1.2.11
- 运行命令
./configure make make install
安装nginx
- 下载
在nignx官网下载,本人下载的为nginx-1.16.1.tar.gz - 解压nginx
tar -xzvf nginx-1.16.1.tar.gz
- 复制目录
cp nginx-1.16.1 /usr/local/nginx-1.16.1
- 进入目录
cd /usr/local/nginx-1.16.1
- 运行命令
./configure make make install
- 进入目录
cd /usr/local/nginx
- 启动nginx
./sbin/nginx
部署springboot后端项目
- 运行命令
java -jar xxx.jar
部署前端项目
- 解压之前打包好的前端项目,如果为node项目就是build之后的文件夹内容
unzip xxx.zip
- 移动前端项目
mv -f xxx/* /usr/local/nginx/html
- 打开浏览器内网访问
http://192.168.*.*/