From d637f070a9f50cef062e1b938678ce8972f003a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B05BEE13=2E=E5=8D=A2=E9=83=B4=E7=BE=A4?= Date: Thu, 19 Nov 2020 09:40:25 +0800 Subject: [PATCH] Update README.md --- README.md | 30 ++++++++++++++++++++++++------ nginx.conf | 4 ++-- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 3ba9dc7..fc1799e 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,7 @@ my-bookmark/ ├── development.js # 开发环境下的入口文件 ├── logs/ # 日志目录 +├── Dockerfile # Dockerfile 构建文件 ├── nginx.conf # nginx 配置文件 ├── package.json # 项目依赖包 ├── pm2.json # pm2 配置文件 @@ -96,9 +97,25 @@ my-bookmark/ └── README.md # 项目工程说明文件 ``` -6 安装部署指南 +6 Docker安装部署 ------------- -1、安装MySQL数据库。如果不会,请戳教程[MySQL 数据库安装教程](http://baidu.luchenqun.com/?mysql%20%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B "mysql 数据库安装教程")。有点需要注意的是,MySQL的版本至少要是5.6。否则执行schema.sql文件会出错。 +此部署方式适合新手。 + +如果你的Linux环境中没有安装Docker环境。那么请先执行如下命令安装Docker环境。 +``` +curl -fsSL get.docker.com -o get-docker.sh +sudo sh get-docker.sh --mirror Aliyun +``` + +安装好docker环境之后,执行命令 `docker run -dit -p 2000:2000 -p 3306:3306 luchenqun/mybookmark` 安装并启动应用即可。然后在浏览器输入: `http://你的IP:2000/` 即可访问书签应用。安装好的环境默认了一个账号`test`,密码为`123456`。 + +如果MySQL需要远程访问,那么你需要进入容器之后更新 `/etc/mysql/mysql.conf.d/mysqld.cnf`,将绑定地址 `127.0.0.1` 改为 `0.0.0.0`。然后执行命令`service mysql restart`重启数据库服务。安装后的 MySQL默认有两个账户,一个是root账户,无密码。一个是在文件`/etc/mysql/debian.cnf`有个账号密码。当然这些账号都是只能在本地访问的,你需要手动创建一个可供远程访问的账号。 + +7 安装部署指南 +------------- +这种适合动手能力比较强的人员。 + +1、安装MySQL数据库。如果不会,请戳教程[MySQL 数据库安装教程](http://baidu.lucq.fun/?q=TXlTUUwg5pWw5o2u5bqT5a6J6KOF5pWZ56iL "mysql 数据库安装教程")。有点需要注意的是,MySQL的版本至少要是5.6。否则执行schema.sql文件会出错。 2、新建一个数据库名,使用MySQL将根目录下面的schema.sql文件执行一遍,创建数据库表格。有个问题尤其要注意:**数据库一定要使用UTF-8的编码**,否则执行一些汉字的sql语句会出错!如果是Ubuntu,大概过程如下。 ``` mysql -u root -p // 使用root账号进入mysql数据库。按回车之后输入安装时候root的密码。 @@ -109,18 +126,19 @@ use mybookmarks; //选择刚创建的数据库。 source /home/lcq/schema.sql; // 执行schema.sql文件创建数据库表格。注意,将路径换为你schema.sql所在路径。 ``` 3、如果你是全新部署,你可忽略此步骤。如果之前部署过此应用,那么需要执行update.sql文件需要升级。注意:升级之前,请务必备份数据库!确认是否需要运行此升级sql文件也很简单,看一下你之前的数据库mybookmarks下面有没有`tags_bookmarks`这个数据表。如果有,那么需要执行。执行方法还是如上类似`source /home/lcq/update.sql;`。 -4、安装Node.js。Node.js版本至少要求12.0以上。不会的话,请按照上面步骤1、3提供的方法自行解决。 +4、安装Node.js。Node.js版本至少要求12.0以上。不会的话,请按照上面步骤1提供的方法自行解决。 5、克隆代码`git clone git@github.com:luchenqun/my-bookmark.git`,切换到项目根目录下面,执行`npm install`安装package。 6、在根目录,更新`pm2.json`文件,只需要更新`cwd`项即可。该项为你项目所在的路径。更新`src/config/adapter.js`下面`exports.model`关于你的MySQL的账号密码信息。注意,该账号必须要有写数据库的权限! 7、如果上面的都做好了,执行命令`npm install pm2 -g`安装pm2模块。再执行命令`pm2 startOrReload pm2.json`。以后如果项目代码有升级,更新代码之后,执行此命令即可重启该应用。 -8、在浏览器里面输入:127.0.0.1:2000。 +8、在浏览器里面输入:`http://你的IP:2000/`。 9、如果需要域名部署的话,推荐使用nginx作为HTTP和反向代理服务器,根目录有一份`nginx.conf`文件,你只需要更新`root`项即可使用。相关知识,请自行百度。 -7 其他说明 + +8 其他说明 --------- 1、我没有做浏览器兼容测试,只在Google Chrome下面进行了测试开发。 -8 开源许可证 +9 开源许可证 ----------- [MIT License](http://www.opensource.org/licenses/MIT) 你可以随意使用此项目,无需通知我,因为我可能很忙没时间。注意,手机版当前没开源 diff --git a/nginx.conf b/nginx.conf index 6521f82..fe8d87e 100644 --- a/nginx.conf +++ b/nginx.conf @@ -1,8 +1,8 @@ server { listen 80; - server_name book.mybookmark.cn; + server_name mybookmark.cn; root /var/www/my-bookmark; - set $node_port 8360; + set $node_port 2000; index index.js index.html index.htm; if ( -f $request_filename/index.html ){