Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.


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.

discourse_bench (discourse/discourse_bench)

Builds on the discourse_test image and adds benchmark testing.

discourse_fast_switch (discourse/discourse_fast_switch)

Builds on the discourse image and adds the ability to easily switch versions of Ruby.