7.4【微信小程序全栈开发课程】小程序上线--基于Ubuntu搭建小程序运行环境

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 上一节我们安装了nginx和SSL证书,这一节继续来搭建小程序运行环境

1、配置nodeJs环境


(1)安装node、npm


我们云服务器是Ubuntu系统,通过apt-get安装即可


//下载nodejs安装文件node-v10.13.0-linux-x64.tar.xz
~$ wget https://npm.taobao.org/mirrors/node/v10.13.0/node-v10.13.0-linux-x64.tar.xz
//解压下载的文件
~$ tar -xvf node-v10.13.0-linux-x64.tar.xz
//测试是否安装成功
~$ cd node-v10.13.0-linux-x64/bin && ls
node  npm  npx
//符号./的意思是当前文件夹下,现在 node 和 npm 还不能全局使用
~/node-v10.13.0-linux-x64/bin$ ./node -v
v10.13.0


(2)查看当前目录


输入pwd查看当前目录,记住这个目录,我们下面要用


~/node-v10.13.0-linux-x64/bin$ pwd
//查到的目录如下
/root/node-v10.13.0-linux-x64/bin


(3)全局使用node、npm


现在npm、node只能在我们刚刚安装的node-v10.13.0-linux-x64/bin文件夹下面使用,我们在Ubuntu中设置环境变量,从而可以全局使用node、npm


//回到~目录
~/node-v10.13.0-linux-x64/bin$ cd ~
//打开.bashrc文件夹
~$ vim .bashrc


(4)编辑.bashrc文件


vim是一个文本编辑器,输入i,进入编辑状态,添加下面语句


其中/root/node-v10.13.0-linux-x64/bin/是【(2)查看当前目录】中查出来的目录,替换成你自己查到的目录


export PATH=/root/node-v10.13.0-linux-x64/bin/:$PATH


编辑完成后,按esc键退出编辑状态,再输入:wq保存并退出文件

(5)使环境变量生效


~$ source .bashrc


(6)检查是否可以全局使用node、npm


~$ node -v
v10.13.0
~$ npm -v
6.4.1


(7)将npm的源换成国内的


由于npm的源在国外,国内用户下载软件包会比较慢,所以我们将npm的源换成国内的。


#运行成功,不会返回任何信息
~$ npm set registry https://registry.npm.taobao.org/


2、安装mysql


安装mysql数据库以及依赖插件,安装过程需要设置mysql密码,该密码一定要记住,之后登录数据库会用到


~$ sudo apt-get install mysql-server mysql-client libmysqlclient-dev


3、修改配置文件


(1)编辑src/config.js文件,将本地域名修改成自己已经备过案的域名


//原代码
const host = 'http://localhost:5757'
//修改为自己的域名
const host = 'https://***.com'


(2)编辑server/config,js文件,修改下面三项信息,保存文件


//修改成自己的域名
serverHost: 'https://***.com',
//项目在云服务器上面的路径,我们会将server文件夹放在这个路径
rootPathname: '/mnt/truth_hold/server',
//是否使用腾讯云代理登录小程序,改成true
useQcloudLogin: true,


(3)继续编辑server/config,js文件,修改数据库密码


也就是pass字段,改成在云服务器上面安装mysql时设置的密码


mysql: {
  host: 'localhost',
  port: 3306,
  user: 'root',
  db: 'cAuth',
  pass: '199507@.',
  char: 'utf8mb4'
},


4、云服务器放上server文件

(1)在根目录mnt文件夹下面创建truth_hold文件夹(云服务器端操作)


//进入/mnt文件夹
~$ cd /mnt/
//创建truth_hold文件夹
~/mnt$ mkdir truth_hold


(2)用scp将server文件夹传输到云服务器(电脑本地终端操作)


//进入truth_hold项目文件夹目录
~$ cd ~/WeChatProjects/truth_hold/
//用scp将server文件夹传输到云服务器
~/WeChatProjects/truth_hold$ scp -r server root@47.10.17.231:/mnt/truth_hold
//输入云服务器的密码,文件比较多,需要10分钟左右才能传输完成
root@47.10.17.231's password:


(3)检查是否传送成功(云服务器端操作)


//打开/mnt/truth_hold目录
~$ cd /mnt/truth_hold
//输入ls查看里面的文件
~/mnt/truth_hold$ ls
server


5、pm2安装并启动


pm2 是Node应用的进程管理器,我们用他来启动后端(也就是云服务器端),就像在本地电脑server文件夹下运行npm run dev差不多


//安装pm2
~$ npm install pm2 --global
//检查是否安装成功
~$ pm2 -v
//进入项目目录
~$ cd /mnt/truth_hold/server/
//启动项目
/mnt/truth_hold/server$ pm2 start app.js
//启动成功返回的信息
[PM2] Starting /mnt/truth_hold/server/app.js in fork_mode (1 instance)
[PM2] Done.
┌────┬────────────────────┬──────────┬──────┬──────────┬──────────┬──────────┐
│ id │ name               │ mode     │ ↺    │ status   │ cpu      │ memory   │
├────┼────────────────────┼──────────┼──────┼──────────┼──────────┼──────────┤
│ 0  │ app                │ fork     │ 0    │ online   │ 0%       │ 25.8mb   │
└────┴────────────────────┴──────────┴──────┴──────────┴──────────┴──────────┘


现在服务端的环境已经完全搭建好了~

目录
相关文章
|
1天前
|
存储 传感器 小程序
跳绳计数小程序开发系统
首先,我们需要明确跳绳计数小程序的核心功能:为用户提供跳绳计数的便捷方式。这意味着小程序需要能够准确地记录用户的跳绳次数,并为用户提供清晰、直观的计数展示。
|
1天前
|
人工智能 编解码 小程序
【一步步开发AI运动小程序】四、小程序如何抽帧
随着AI技术的发展,阿里体育等公司推出的“乐动力”、“天天跳绳”等APP使云上运动会、线上健身等概念备受关注。本文将引导您从零开始开发一个AI运动小程序,利用“云智AI运动识别小程序插件”。文中详细介绍了微信小程序抽帧的相关API、设置及注意事项,帮助开发者更好地实现AI运动功能。下篇将介绍人体识别技术,敬请期待。
|
2天前
|
传感器 存储 小程序
跳绳计数小程序开发
跳绳计数小程序旨在通过智能设备(如手机或智能手表)记录用户在跳绳过程中的次数、时间、速度等关键数据,为用户提供便捷的运动记录和数据分析服务
|
1天前
|
小程序 搜索推荐 前端开发
小剧场短剧影视小程序开发
小剧场短剧影视小程序旨在为用户提供一个便捷、互动的平台,让用户能够随时随地观看、分享和评论各类小剧场短剧。通过小程序,用户可以浏览热门短剧、搜索感兴趣的内容、参与社区互动,以及享受个性化的推荐服务。
|
2天前
|
小程序 搜索推荐 前端开发
短剧小程序开发案例
首先,明确你的短剧平台的目标用户群体和他们的需求。比如,年轻用户可能更倾向于轻松、幽默的短剧内容,而家庭用户则可能更偏爱教育、亲子类的短剧。了解用户需求有助于你设计更符合他们口味的功能和界面
|
5天前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
78 7
|
5天前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
59 1
|
19天前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
68 7
ly~
|
1月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
67 6
|
9天前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
51 1