How to recompile plugins and NOT to recompile Discourse?

Dear @Ed_Bobkov

You can accomplish the “essence” of what you want in an “unsupported way” by building Discourse with (1) your own base Discourse Docker image and (2) forked Discourse github code base, if you believe you absolutely must, by running a fork of the Discoures source code.

So, in that case you will need to:

See this line in the Discourse Dockerfile:

 git clone https://github.com/discourse/discourse.git &&\

and this line in the launcher script:

image="discourse/base:2.0.20200512-1735"

If you run a private Docker registry, you can push the Discourse base image (of your choice) to your private registry and so, for example:

image="localhost:5000/base:2.0.20200512-1735"

and likewise, if you fork Discourse, you can use that fork in the Dockerfile (above), for example:

 git clone https://github.com/your_git_account/discourse.git &&\

This will help you manage both the base Docker image and the build code.

Of course, this is not recommended because you will not benefit from all the bug fixes and security (and feature) updates from Discourse; and this method is both not supported nor recommended.

Hope this helps @Ed_Bobkov

Note: In this method, you are still rebuilding Discourse; but you are controlling (1) the version of the base Docker image and (2) the Discourse github repo code; and are “on your own” because this method is not supported, nor recommended, at all (to my knowledge).

See Also:

4 Likes