用docker容器启动不能完全按照官方的脚本
以下是我的脚本:
docker run -d --name solo --network=host --volume ~/solo_h2/:/opt/solo/h2/ --publish 1234:8080 \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="*" \
--env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
--env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true" \
b3log/solo --listen_port=1234 --server_scheme=https --server_host=solo.chinazach.com --server_port=443
注意加上docker容器挂载的数据卷位置
注意宿主机端口号、docker容器内部的端口号、以及solo的server port三个端口号的区别
注意最新的MySQL8要在最后加上allowPublicKeyRetrieval=true,否则会报错
最后solo的几个参数一定要写对,域名要和nginx里面配置的一致,端口号443可以填也可以不填
nginx的配置:

注意静态资源文件的处理