服务器部署项目小结
服务器配置
购买服务器
新用户的福利还是不错的,就是续费有点贵,也可以考虑腾讯云,华为云之类的。 我选择的是centos版的linux 更改下自己的密码 使用x_shell工具链接服务器
xshell下载地址
服务器就算链接好了
安装jdk
先下载linux版本的jdk,通过xftp上传到服务器 下面就是一些linux命令了,使用xshell
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 解压: tar -zxvf jdk-8u291-linux-x64.tar.gz 移动: mv jdk1.8.0_291 /usr/local/jdk1.8 修改配置文件: vim /etc/profile 添加配置: export JAVA_HOME=/usr/local/jdk1.8 export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin 刷新配置: source /etc/profile
安装docker
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 使用官方安装脚本自动安装 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 或者 curl -sSL https://get.daocloud.io/docker | sh 手动安装 1. 卸载旧版本依赖 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine 2. 设置仓库 安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。 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 3. 安装最新版本的 Docker Engine-Community 和 containerd sudo yum install docker-ce docker-ce-cli containerd.io 启动 Docker systemctl start docker 或 service docker start 5. 验证是否安装成功 docker version Docker 需要用户具有 sudo 权限,为了避免每次命令都输入sudo,可以把用户加入 Docker 用户组(官方文档)。 sudo usermod -aG docker $USER docker images:查看镜像文件 卸载docker sudo yum remove docker-ce docker-ce-cli containerd.io sudo rm -rf /var/lib/docker 开机自启 systemctl enable docker 阿里云镜像加速 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://3n4m4jry.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
docker安装mysql
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 安装mysql docker pull mysql:5.7 启动mysql docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7 docker run -p 3308:3306 --name mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7 docker run -p 3308:3306 --name mysql3308 \ -v /mydata/mysql3308/log:/var/log/mysql \ -v /mydata/mysql3308/data:/var/lib/mysql \ -v /mydata/mysql3308/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7 参数解释: --name 容器名字 -p 3308:3306 物理机端口:容器内部端口 -e 运行参数 初始化 root 用户的密码 -d 后台运行 mysq5.7 镜像名字加标签 -v 目录挂载,-v /mydata/mysql/log:/var/log/mysql 表示将 docker里面mysql容器的/var/log/mysql目录挂载到宿主linux系统的 /mydata/mysql/log 目录下,方便查看。 然后修改权限: // 进入mysql容器: docker exec -it 934e3c005153 /bin/bash // 登录mysql: mysql -uroot -proot // 修改权限: ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root'; 或者:ALTER USER 'root'@'%' IDENTIFIED BY '123456'; flush privileges; mysql配置文件: vim /mydata/mysql/conf/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 skip-name-resolve
安装nginx
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 1、安装依赖和相关库: [root@localhost ~]# yum -y install gcc-c++ zlib-devel openssl-devel libtool 2、下载nginx安装包并解压: [root@localhost ~]# cd /usr/local [root@localhost local]# wget http://nginx.org/download/nginx-1.14.0.tar.gz [root@localhost local]# tar -zxvf nginx-1.14.0.tar.gz 3、配置和安装 [root@localhost local]# cd nginx-1.14.0 [root@localhost nginx-1.14.0]# ./configure --prefix=/usr/local/nginx [root@localhost nginx-1.14.0]# make && make install 4、启动nginx: [root@localhost nginx-1.14.0]# cd ../nginx/sbin [root@localhost sbin]# ./nginx 5、查看nginx: [root@localhost nginx]# ps -ef | grep nginx root 13850 1 0 17:01 ? 00:00:00 nginx: master process ./nginx nobody 13851 13850 0 17:01 ? 00:00:00 nginx: worker process root 13879 1128 0 17:11 pts/0 00:00:00 grep --color=auto nginx 6、停止和重启nginx: ./nginx -s reload #重启 ./nginx -s stop #关闭
项目部署
项目打包
数据库新建连接,连接名是自己的服务器ip,将自己的数据导入到新的数据库中 后端项目使用mvean打包,命令 mvn clean package -DskipTests
(这是跳过了测试) 前端通过 npm run build
打包
打包之前需要将项目中的涉及ip地址相关的改成自己的服务器ip,比如文件上传
通过x-ftp将文件传到自己的服务器(从官网下载,再从其他网站下载一些工具,学习使用,支持正版)
xftp下载地址
项目部署
安装 anywhere前端静态资源服务器插件:
vue dist nginx配置:
1 2 3 4 5 6 7 vim /usr/local/nginx/conf //替换location location / { root /home/server/dist; index index.html index.htm; try_files $uri $uri/ /index.html; }
nginx重启:
启动jar包
1 nohup java -jar springboot-0.0.1-SNAPSHOT.jar &
关闭
查看进程