discourse_docker/image
2025-02-26 02:28:38 +01:00
..
base DEV: Re-add ghostscript to the base image () 2025-02-26 02:28:38 +01:00
discourse_dev FEATURE: Update base image and set default to postgresql 15 () 2025-01-29 10:20:49 +03:00
discourse_test Update firefox tar format () 2025-02-11 12:11:29 +00:00
auto_build.rb Build images with PG 15 installed () 2025-01-21 09:59:32 +08:00
README.md FEATURE: Update base image and set default to postgresql 15 () 2025-01-29 10:20:49 +03:00

Docker images

Building new images

To build a new image, just run ruby auto_build.rb image-name. The build process will build a local image with a predefined tag.

Images and tag names are defined here.

A note about --squash: By default we squash the images we serve on Docker Hub. You will need to enable experimental features on your Docker daemon for that.

More about the images

See both auto_build.rb and the respective Dockerfiles for details on how all of this happens.

base (discourse/base)

All of the dependencies for running Discourse. This includes runit, postgres, nginx, ruby, imagemagick, etc. It also includes the creation of the "discourse" user and /var/www directory.

discourse_dev (discourse/discourse_dev)

Adds redis and postgres just like the "standalone" template for Discourse in order to have an all-in-one container for development. Note that you are expected to mount your local discourse source directory to /src. See the README in GitHub's discourse/bin/docker for utilities that help with this.

Note that the discourse user is granted "sudo" permission without asking for a password in the discourse_dev image. This is to facilitate the command-line Docker tools in discourse proper that run commands as the discourse user.

discourse_test (discourse/discourse_test)

Builds on the discourse image and adds testing tools and a default testing entrypoint.