discourse_docker 中的浅层 git fetch 回归

这会让仓库体积翻倍:slightly_frowning_face:

问题在于,在构建镜像时,我并不知道你未来想要哪个分支。

当前的设置是为了减小镜像体积而更改的,它使镜像的压缩体积减少了 250MB(25%),这是一个巨大的胜利。在使用 stable、beta 或 tests-passed 等常规分支时,它运行良好。

作为一种变通方法,如果你想切换到某个标签,可以将以下内容应用到你的 app.yml 文件中:

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
+    - exec:
+        cd: $home
+        cmd:
+          - git fetch --depth=1 origin tag v2.5.0 --no-tags
+          - git checkout v2.5.0

另一种变通方法是在 app.yml 的顶层添加一个 base_image 键,其值为较旧的基础镜像。由于我们甚至不尝试保持新镜像能够运行旧版 Discourse 的兼容性,如果你要回退到很旧的版本,这可能是必要的。

9 个赞