最近因业务需要创建可以对外查询的API来供其他人使用,但是本人纯小白一枚,不会写相关代码,非常苦恼。而且处于项目初期,没有太多的经费购买服务器,之前了解过服务器的购买流程,对我这种个人来说,真的是很贵了。直到我遇到了LightHouse和LightDB:轻量应用服务器和轻量艺应用数据库。非常适合我这种小白个人开发者,不仅价格实惠,性能也不比服务器差,而且带宽也很高。所以本次教程就用LightHouse和LightDB来进行演示。
首先,登录你购买服务器厂商的控制台,我这里用的是腾讯云轻量应用服务器,系统选择的是Centos7.6。
找到你的服务器之后点击右上角的登录按钮(如果不喜欢这种方式登录可以选择自己喜欢的方式:putty,xshell,terminal 等等)当然如果选用其他方式记得先重置密码还在在购买的时候就创建密码,不然无法登录。
输入管理员指令:sudo -i
接下来输入命令安装宝塔
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
PS:如果没有宝塔账户先去注册一下
安装成功后会看到下面的界面:
接下来我们去防火墙开一下宝塔面板的8888端口:
然后访问外网链接访问宝塔面板并输入账户密码登录,第一次登录会让你阅读协议并登录宝塔账户(就是刚才注册的)
选择LNMP一键安装,PHP版本可以选高一点。
DBApi提供了本地和docker的两种安装方式,每种方式下又有单机版和集群版,因为我这里目前仅有一台轻量应用服务器,所以不做集群版演示,如果各位能赞助我一下,我可能就会出集群版的教程了狗头。
jdk8+
,并配置环境变量我们打开宝塔,点击网站,选Java项目,如未安装jdk会提示安装。
选择8版本点击安装。
conf/application.properties
文件中的以下配置# 失败告警邮件的发件人
# email sender
spring.mail.host=smtp.163.com
spring.mail.username=xxx@163.com
spring.mail.password=xxx
spring.mail.default-encoding=UTF-8
# 数据源密码加密存储的密钥,至少8位字符
# key used to encrypt the password of DataSource, at least 8 char
dbapi.secret.key=12345678
# api访问路径的统一根路径,example: http://192.168.xx.xx:8520/api/xxx
# api context
dbapi.api.context=api
# 如果不修改数据库地址将默认使用自带的内嵌元数据库sqlite
# meta database address
spring.datasource.driver-class-name=org.sqlite.JDBC
spring.datasource.url=jdbc:sqlite::resource:sqlite.db
spring.datasource.username=
spring.datasource.password=
sql/ddl_mysql.sql
我这里没有配置,一会会在服务端使用轻量应用数据库。
sh bin/dbapi-daemon.sh start standalone
sh bin/dbapi-daemon.sh stop standalone
bin/dbapi.ps1
文件,选择使用PowerShell运行注意windows系统只支持standalone模式运行,不支持集群模式
http://ip:8520
进入UI首先安装docker
docker部署相对简单,所以现在搭建基本都用docker
Docker 容器通过环境变量进行配置,附录-环境变量列出了
DBApi
的可配置环境变量及其默认值
docker run -it -p 8520:8520 --name dbapi freakchicken/db-api:3.1.0 standalone
我这里没有使用,一会会在服务端使用轻量应用数据库。
docker run -it \
-p 8520:8520 \
-e DB_URL="jdbc:mysql://192.168.xx.xx:3306/dbapi?useSSL=false&characterEncoding=UTF-8&serverTimezone=GMT%2B8" \
-e DB_USERNAME="root" \
-e DB_PASSWORD="root" \
-e DB_DRIVER="com.mysql.cj.jdbc.Driver" \
freakchicken/db-api:3.1.0 standalone
http://ip:8520
进入UI默认账号/密码:admin/admin
Docker部署的时候通过以下环境变量来传递参数
环境变量 | 默认值 | 说明 |
---|---|---|
MAIL_HOST | smtp.163.com | 失败告警的邮件发件人 |
MAIL_USERNAME | 失败告警的邮件发件人账户 | |
MAIL_PASSWORD | WGJQBFRIPUENHMUP | 失败告警的邮件发件人密码 |
SECRET_KEY | 12345678 | 数据源密码加密存储的密钥,至少8位字符 |
API_CONTEXT | api | 所有API的统一根路径 |
DB_URL | jdbc:sqlite::resource:sqlite.db | 元数据库地址 |
DB_USERNAME | 元数据库账户 | |
DB_PASSWORD | 元数据库密码 | |
DB_DRIVER | org.sqlite.JDBC | 元数据库地址jdbc驱动 |
NACOS_ADDRESS | 127.0.0.1:8848 | 集群模式使用的nacos地址 |
NACOS_USERNAME | nacos | 集群模式使用的nacos账户 |
NACOS_PASSWORD | nacos | 集群模式使用的nacos密码 |
NACOS_NAMESPACE | public | 集群模式使用的nacos namespace |
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。