通过牛客网买了一年的华为云学生机,装的是ubuntu18.04的系统,用来学习一下服务器的操作。
连上之后第一个目标是安装rz和sz命令用于从上传和下载文件
一开始直接
apt-get install lrzsz
报错了,万幸百度了很快就找到解决方法
dalao博客,添加了几个apt源
正确方法
add-apt-repository main
add-apt-repository universe
add-apt-repository restricted
add-apt-repository multiverse
apt-get update
apt-get install lrzsz
然后装这个大神器,用来部署我的前端项目
本地到官网下载,然后把压缩包传到服务器上
照例还是找到大佬博客,写的很详细而且正确
安装三个依赖
apt-get install libpcre3 libpcre3-dev
apt-get install zlib1g-dev
apt-get install openssl libssl-dev
解压nginx
tar -zxvf nginx-1.14.2.tar.gz
cd nginx-1.14.2
配置makefile
./configure
--prefix=/usr/local/nginx
--pid-path=/var/run/nginx/nginx.pid
--lock-path=/var/lock/nginx.lock
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--with-http_gzip_static_module
--http-client-body-temp-path=/var/temp/nginx/client
--http-proxy-temp-path=/var/temp/nginx/proxy
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi
--http-scgi-temp-path=/var/temp/nginx/scgi
--without-http_rewrite_module=/var/temp/nginx/rewrite
--with-pcre=/var/temp/nginx/pcre
创建临时文件目录
mkdir -p /var/temp/nginx
然后就是make和make install
make
make install
然后就进入安装目录启动nginx
cd /usr/local/nginx/sbin
./nginx
这时候随便在哪里访问你的公网ip:80就能看到nginx的欢迎页面了 ○| ̄|_(逐渐兴奋
注:
重启
./nginx -s reload
先要打包
npm run build
然后把dist文件夹压缩成tar.gz上传到服务器上,解压把里面的所有东西移动到/usr/local/nginx/html/里
重启就ok了,不过只能看到个首页,是时候来部署个后台了
java后台必备的环境
mysql可以直接用命令行安装,参考这个博客
sudo apt-get install mysql-server
sudo apt install mysql-client
sudo apt install libmysqlclient-dev
配置可远程访问
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉 或者改成0.0.0.0
# bind-address = 127.0.0.1:
配置权限
root后面的%是代替ip地址,如果是所有ip地址都运行就是%,然后密码那个是登录mysql的密码,不是服务器的密码
grant all privileges on *.* to root@'%' identified by '你的密码' with grant option;
flush privileges;
然后本地就可以用navicat连上服务器的mysql了,很方便
java也本地装了很多次了,先是下载jdk然后上传到服务器上
然后解压移动到/usr/local/jdk/jdk1.8
然后配置一下环境变量
vi ~/.bashrc
添加
export JAVA_HOME=/usr/local/jdk/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
使生效
source ~/.bashrc
其实我还不太清楚docker是个啥,不过感觉很火,而且据说用来部署这些环境比较方便,
先要把springboot项目打包,参考这个博客
使用maven打包,先要在pom.xml里添加点东西
<plugin>
<groupId>org.apache.maven.pluginsgroupId>
<artifactId>maven-jar-pluginartifactId>
<version>2.6version>
<configuration>
<archive>
<manifest>
<addClasspath>trueaddClasspath>
<classpathPrefix>lib/classpathPrefix>
<mainClass>com.example.mall_api.MallApiApplicationmainClass>
manifest>
archive>
configuration>
plugin>
<plugin>
<groupId>org.apache.maven.pluginsgroupId>
<artifactId>maven-dependency-pluginartifactId>
<version>2.10version>
<executions>
<execution>
<id>copy-dependenciesid>
<phase>packagephase>
<goals>
<goal>copy-dependenciesgoal>
goals>
<configuration>
<outputDirectory>${project.build.directory}/liboutputDirectory>
configuration>
execution>
executions>
plugin>
<plugin>
<groupId>org.apache.maven.pluginsgroupId>
<artifactId>maven-surefire-pluginartifactId>
<version>2.17version>
<configuration>
<skip>trueskip>
configuration>
plugin>
然后直接通过idea的maven进行打包,右侧点开maven,项目名下的lifecycle,然后双击clean,再双击install即可,然后在target下找到jar包上传到服务器上
通过java命令即可直接运行jar包
java -jar xxxx.jar
然后再加个nohup命令,使得可以再后台运行
nohup java -jar xxxx.jar &
这样启动完可以直接ctrl+c关掉,jobs
命令可以查看后台运行,fg
命令可以把后台的任务调到前台,然后ctrl+c
关闭,然后默认在nohup.out
里可以查看启动日志,注意要在阿里云管理控制台里开放端口,然后主要要把数据库也给导进服务器,可以先用navicat导出成sql文件,然后上传到服务器
mysql> create database mall;
mysql> use mall;
mysql> source ~/mall.sql
还有一个是springboot配置多个环境,就不用本地开发的时候改下代码,打包的时候再改
再建两个配置文件application-dev.yml
和application-prod.yml
,然后把相同的不变的配置放在原来的application.yml
里,其他分别放在两个环境里,然后在服务器上启动的时候就是
nohup java -jar xxx.jar --spring.profile.active=prod
这东西我喜欢叫抓拍特,先装一下pip3,然后按官网的步骤安装即可
apt-get install python3 python-pip
python3 -m pip install --upgrade pip
python3 -m pip install jupyter