solo 使用 docker 部署的时候怎么使用社区皮肤呢

本贴最后更新于 411 天前,其中的信息可能已经事过境迁

如题,比较小白,不知道使用 docker 部署 solo 的时候,怎么使用社区皮肤呢

  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1156 引用 • 8857 回帖 • 633 关注
  • 皮肤
    37 引用 • 372 回帖
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    328 引用 • 783 回帖 • 491 关注
  • Q&A

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

    1663 引用 • 10979 回帖 • 580 关注
10 回帖
请输入回帖内容...
  • 88250

    挂载卷到 /opt/solo/skins

    1 回复
  • denghui1010

    明白了,我觉得要是能有皮肤和插件上传的功能就方便多了 😄

    1 回复
  • 88250

    之前考虑过,但是担心不是所有用户都熟悉 docker(不挂卷容器持久化丢失,或者操作步骤太多);不用 docker 的用户迁移又麻烦,所以暂时放弃类似的运行时操作了。目前我感觉使用方面还行,算是一个技术方面的权衡折中。

  • marshalby2

    您好,我先创建了文件夹~skins,将所有的皮肤下载到该文件里面了,然后按照下面的命令启动后,在 solo 管理页面还是没有看到社区皮肤,请问是为什么?

    docker run --detach --name solo --network=host \
        --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" \
        --volume ~/skins/:/opt/solo/skins/ \
        b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost--server_port=8080
    
    1 回复
  • 88250

    寄主机的 skins 目录是在 home(~)下吗?挂载卷的时候需要用绝对路径。

    1 回复
  • marshalby2

    D 大,skins 是在 home 目录下的,我是不是启动的时候需要将皮肤名作为参数吗?

    1 回复
  • 88250

    不需要的,启动的时候挂载皮肤目录,然后后台皮肤管理里面就可以选择使用的皮肤了。

    1 回复
  • marshalby2

    D 大,再请教你一个问题,在 --volume ~/skins/:/opt/solo/skins/ \ 这条命令中,我将所有下载的皮肤放在 ~/skins 目录下的,而 /opt/solo/skins/ 这个目录下没有放任何文件,这样正确吗

    1 回复
  • 88250

    : 后面的 /opt/solo/skins/ 是容器里的路径,如果你没有进入容器修改过的话里面应该是默认的皮肤目录。容器启动后可以用 docker exec -it 进入容器看看里面到底是啥,这样方便诊断问题。

    1 回复
  • marshalby2

    好的,非常感谢 🙏

请输入回帖内容 ...