准备
- Azure 账号一枚(学生版也可)
- Windows/Linux/macOS/(BSD)/... 等支持 python 的命令行环境
- FTP 客户端工具
安装 Azure 命令行工具
可以参考官方文档 Install Azure CLI
安装后打开命令行。
Azure 账号初始配置
登录 Azure 账号
az login
查看所有订阅
az account list --all
选择一个默认订阅进行操作(如果有不止一个订阅的话)
az account set -s 所选的订阅ID
创建部署用户(之后要用到!)
az webapp deployment user set --user-name 用户名 --password 密码
查看所有部署用户
az webapp deployment user show
创建应用服务
查看所有可用区域
az account list-locations
创建资源组,如果已创建可跳过,这里选择 East Asia(即香港区)
az group create -l eastasia -n 资源组名称
创建免费的应用服务计划,如果已创建可跳过
az appservice plan create -n 服务计划名称 -g 资源组名称 --sku FREE
查看所有运行时
az webapp list-runtimes
创建应用服务,这里选择 java|1.8|Jetty|9.3
运行时。
az webapp create -g 资源组名称 -p 服务计划名称 -n 应用服务名称 -r "java|1.8|Jetty|9.3"
部署 Solo
下载 Solo .war 包,我这里为大家提供了直链下载地址,请尽情地随意地放肆地使用(因为没有流量费),或者从百度盘的官方分享上自行下载
wget https://b2.actom.cc/file/ynq65v/b3log/solo/solo-2.9.6.war
上传 .war 包并部署
curl -X POST -u 部署用户名 \
--data-binary @"./solo-2.9.6.war" \
https://应用服务名称.scm.azurewebsites.net/api/wardeploy
配置 Solo
在 Azure 面板上,选择你的应用服务,开启 In-App MySQL 服务,等待一分钟。
此时访问一次 URL 首次启动应用以激活 MySQL 服务。开启页面可以直接关掉,不用等到加载完成。
打开 FTP 工具,使用面板上显示的 FTP 地址和 应用服务名称/部署用户名
及部署用户密码登录。
打开 data/mysql/MYSQLCONNSTR_localdb.txt
查看数据库密码及端口。如果不存在此文件,请继续等待或尝试重启。
用户名为 azure
;数据库名为 localdb
;服务器地址为 127.0.0.1
。
点击中间偏上方的 Manage 可以打开 phpMyAdmin。
然后选择 localdb
数据库,在 Operations 修改 Collation 为 utf8mb4_general_ci
。
打开 site/wwwroot/webapps/ROOT/WEB-INF
修改相关配置并通过 FTP 上传。请参考用户指南。
数据库配置在 local.properties
。下方为使用 In-App MySQL 的配置。
#### H2 runtime ####
#runtimeDatabase=H2
#jdbc.username=root
#jdbc.password=
#jdbc.driver=org.h2.Driver
#jdbc.URL=jdbc:h2:~/solo_h2/db
#### MySQL runtime ####
runtimeDatabase=MYSQL
jdbc.username=azure
jdbc.password=<YOUR_PASSWORD>
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.URL=jdbc:mysql://127.0.0.1:<YOUR_PORT>/localdb?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC
回到 Azure 面板,Stop 停止应用,一分钟后打开 URL,应出现蓝色 403 应用已停止提示界面。再 Start 启动。等待一分钟。
此时,打开 应用服务名称.azurewebsites.net
,等待一会,应该就能看到初始化界面了。
后期折腾
使用 Azure 面板上的应用 console 功能,通过 tail
命令可以查看 solo.log
,查找问题所在。
免费计划没有自定义域名功能。
正确的重启方式:应对配置不生效等奇葩问题
先确定配置已经正确上传 FTP,然后 Stop 停止应用,一分钟后打开 URL,应出现蓝色 403 应用已停止提示界面。
再 Start 启动,等一分钟,打开 URL,等待几十秒打开第一个页面,即完全启动。
此文来自一名从没学过 Java 的第一次部署 Solo 的学生党。还请多多指教。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于