solo部署中的问题汇总
问题一:docker compose 方式部署,插件相关的静态文件无法加载
docker 方式
docker run --detach --rm --network=host b3log/lute-http
docker run --detach --name solo --network=host --volume /opt/solo/log4j2.xml:/opt/solo/log4j2.xml \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="123456" \
--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=8080 --server_scheme=https --server_host=soloblog.ccstudy.cc --server_port= --lute_http=http://localhost:8249 --static_server_scheme=https
环境变量 | 命令行参数 |
---|---|
RUNTIME_DB | listen_port |
JDBC_USERNAME | server_scheme |
JDBC_PASSWORD | server_host |
JDBC_DRIVER | server_port |
JDBC_URL | lute_http |
static_server_scheme |
docker compose 方式
有一个疑问:docker-compose.old.yaml 中原来的配置,看上去似乎只有 STATIC_SERVER_SCHEME 没有生效
docker-compose.yaml 中配置的 command 启动参数,实际只有 static_server_scheme 参数生效(因为现在的证书只是配给反向代理服务器 Nginx,而不是应用程序本身)。项目启动后,生成的页面中引入静态资源的协议现在是 https,而不是原来的 http。
[注] environment
字段用于设置容器的环境变量。这些环境变量可以在容器内部使用,供应用程序或服务读取。在 docker-compose.yaml
文件中,你可以列出一个或多个键值对来定义环境变量。command
字段用于指定容器启动时要执行的命令。这可以是容器执行的应用程序的启动命令,也可以是其他命令。
结束!