linux7.3 docker 搭建 solo 出错

image.png

刚开始出现 latke 错误,我修改下 nginx 的配置文件好了,下来进入了刚开始的登陆账号页面,我点了一下登陆账号,就出现了上面的该网页无法正常运作,然后我进/admin,出现了 404 错误,郁闷

image.png

我贴上 solo 日志

[ERROR]-[2020-03-19 18:19:06]-[org.b3log.latke.http.renderer.AbstractFreeMarkerRenderer:108]: Renders template [index.ftl] failed [Request [
    method=GET,
    URI=/,
    contentType=null,
    remoteAddr=111.19.51.28,
    headers=[
        Host=20160916.xyz
        X-Real-IP=111.19.51.28
        Connection=close
        Cache-Control=max-age=0
        Upgrade-Insecure-Requests=1
        User-Agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
        Sec-Fetch-Dest=document
        Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
        Sec-Fetch-Site=cross-site
        Sec-Fetch-Mode=navigate
        Sec-Fetch-User=?1
        Accept-Encoding=gzip, deflate, br
        Accept-Language=zh-CN,zh;q=0.9
        Cookie=skin=Pinghsu; LATKE_SESSION_ID=G10JCG3c0Z2LMohy; solo=c3275596cf820af420171b1ca1199d30d557a0b8e05a85ce5e1e519ab2a3ff0cf32cf2cea559b151cba973c65f67c45cf5dc255c99496cc486ec47feb37ac15e
        content-length=0
    ]
]]
freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
==> statistic.statisticPublishedBlogCommentCount  [in template "skins/Pinghsu/footer.ftl" at line 65, column 15]
----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${statistic.statisticPublishedBlogCom...  [in template "skins/Pinghsu/footer.ftl" at line 65, column 13]
	- Reached through: #include "footer.ftl"  [in template "skins/Pinghsu/index.ftl" at line 37, column 1]
----
	at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.EvalUtil.coerceModelToTextualCommon(EvalUtil.java:479) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:401) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:370) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:100) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.DollarVariable.accept(DollarVariable.java:63) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Environment.visit(Environment.java:331) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Environment.visit(Environment.java:337) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Environment.include(Environment.java:2694) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Include.accept(Include.java:171) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Environment.visit(Environment.java:331) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Environment.visit(Environment.java:337) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.core.Environment.process(Environment.java:310) ~[freemarker-2.3.29.jar:2.3.29]
	at freemarker.template.Template.process(Template.java:383) ~[freemarker-2.3.29.jar:2.3.29]
	at org.b3log.latke.http.renderer.AbstractFreeMarkerRenderer.genHTML(AbstractFreeMarkerRenderer.java:126) ~[latke-core-3.2.13.jar:?]
	at org.b3log.solo.processor.SkinRenderer.genHTML(SkinRenderer.java:86) ~[solo/:?]
	at org.b3log.latke.http.renderer.AbstractFreeMarkerRenderer.render(AbstractFreeMarkerRenderer.java:102) [latke-core-3.2.13.jar:?]
	at org.b3log.latke.http.Dispatcher.renderResponse(Dispatcher.java:124) [latke-core-3.2.13.jar:?]
	at org.b3log.latke.http.Dispatcher.handle(Dispatcher.java:96) [latke-core-3.2.13.jar:?]
	at org.b3log.latke.http.ServerHandler.channelRead0(ServerHandler.java:82) [latke-core-3.2.13.jar:?]
	at org.b3log.latke.http.ServerHandler.channelRead0(ServerHandler.java:38) [latke-core-3.2.13.jar:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at org.b3log.latke.http.WebSocketHandler.handleHttpRequest(WebSocketHandler.java:94) [latke-core-3.2.13.jar:?]
	at org.b3log.latke.http.WebSocketHandler.channelRead0(WebSocketHandler.java:51) [latke-core-3.2.13.jar:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) [netty-codec-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:321) [netty-codec-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:295) [netty-codec-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:714) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:650) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:576) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) [netty-transport-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) [netty-common-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) [netty-common-4.1.46.Final.jar:4.1.46.Final]
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.46.Final.jar:4.1.46.Final]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]

求老哥们指点迷津

  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。

    Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!
    具体细节请浏览 B3log 构思

    1091 引用 • 8384 回帖 • 631 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    1582 引用 • 10372 回帖 • 574 关注
5 回帖
请输入回帖内容...
  • 88250

    不要使用外挂皮肤,用内置的。

    2 回复
  • bestxingkong

    我如果不把那些皮肤放进去,我的 solo 就启动不了,提示没有 Ping*什么那个皮肤,因此,我才下载的皮肤放进挂载目录了

    1 回复
  • bestxingkong

    老哥你那有没有一个完整的带证书的 nginx 配置代码,我想看我 nginx 配置文件代码好着没

  • 88250

    用最新镜像,去掉挂载的参数。nginx 配置参考用户指南就行。

    1 回复
  • bestxingkong

    行,我试试,感谢