这是我第一次写博客,之前一直有写博客的想法,但是总觉得,得自己编写一个博客系统才合适。于是一直拖到现在。正好最近自己的博客系统第一个初步版本已经在阿里云上线了。因为系统还不稳定,所以暂时会在csdn平台上进行日志编写。最近把博客上线的经过总结了一下,希望大家少走一点弯路。 这个博客,源码大家可以在慕课网的spring boot企业级博客系统实战中找到,或者网上也应该可以直接搜到。有精力的同学可以去学习或者看一下源码,作为自己的第一个实战项目是很不错的经历。 第一次经历项目的上线工作,算是一次运维的经验,下面是我对项目上线的一些流程总结。大体可以分为这些步骤。
操作系统:win10 关系型数据库:mysql Ver 14.14 Distrib 5.7.17, for Win64 (x86_64) 非关系型数据库:mongodb-win32-x86_64-2008plus-ssl-3.4.4 注:mongodb,windows版本下载地址http://dl.mongodb.org/dl/win32/x86_64 搜索工具:elasticsearch-2.4.4 文件服务器:mongodb-file-server #github开源项目 注:文件服务器github地址 https://github.com/waylau/mongodb-file-server
1. 启动mysql数据库服务 创建blog数据库,编码格式为utf-8
2. 启动mongodb 1) 在mongodb安装路径下/bin编写配置文件:mongod.cfg
systemLog:
destination: file
path: d:\mongoData\log\mongod.log
storage:
dbPath: d:\mongoData\db
2) 启动mongodb:
mongod.exe --config=mongod.cfg
3. 启动文件服务器mongodb-file-server:
1) 进入mongodb-file-server目录下:
启动命令:gradlew bootRun
2) 验证是否成功 通过浏览器访问locahost:8081
4. 启动elasticsearch Windows下直接在elasticsearch安装路径下/bin下双击elasticsearch.bat启动
5. 运行程序,并进行功能测试 使用IDEA打开项目源码,运行源程序,成功后使用浏览器访问localhost:8080进行测试。
1. 安装pscp
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
2. 使用pscp将项目上传到服务器
命令格式:pscp 要上传的文件地址 centos用户名@ip地址:文件目标地址
如: pscp mongodb-file-server root@172.0.0.1:/usr/local/data
1. 安装mysql5.7+版本 因为需要本地联调,所以事先允许远程连接数据库,使用改表法开启mysql远程连接权限
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
注:防火墙需要对端口进行放行,放行方法见后续博文
2. 安装mongodb数据库 1) 下载安装 ① wget方式: wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.5.tgz ② 官网安装方式: https://www.mongodb.com/download-center#atlas 2) 编写配置文件
systemLog:
destination: file
path: [目标路径]/mongoData/log/mongod.log
storage:
dbPath: [目标路径]/mongoData/db
注:配置文件可以放置在任何路径下,为了方便,我放置在mongodb安装目录/bin下
3. 安装elasticsearch 下载地址:https://www.elastic.co/downloads/elasticsearch
4. 安装gradle 下载地址:https://gradle.org/releases/
创建blog数据库 注:数据库编码方式一定要改为utf-8,否则会出现中文乱码问题
./mongod --config=mongod.cfg
注:将程序放入后台执行并在当前账户登出之后依然执行,应执行以下命令
nohup ./mongod --config=mongod.cfg &
gradle bootRun
注:添加到后台执行并忽略登出hup指令nohup gradle bootRun &
./elasticsearch
注:添加到后台执行并忽略登出hup指令 nohup ./elasticsearch &
gradle bootRun
注:添加到后台执行并忽略登出hup指令 nohup gradle bootRun &
systemctl start firewalld
firewalld-cmd --zone=public --add-port=80/tcp –permanent
firewall-cmd --query-masquerade
firewall-cmd --add-masquerade --permanent
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 –permanent
1. 查看防火墙放行端口
firewall-cmd --list-ports
2. 添加防火墙放行端口
firewall-cmd –zone=public –add-port=8080/tcp –permanent
firewall-cmd –zone=public –add-port=3306/tcp --permanent
firewall-cmd –reload
阿里云控制台中选择自己的服务器,然后绑定域名 注:我的是轻量应用服务器,直接购买服务器的话,步骤可能会有些不同
推荐使用cdn进行加速,cdn绑定的具体方法可见阿里云帮助文档,这里不再赘述 注:如遇到访问不到页面问题,需要打开阿里云端口限制,在控制台中开放一些端口,如3306(如需要远程连接数据库的话)或8080