discourse_docker/image
Gary Pendergast e570a8c5c1
DEV: Force PNPM v9 to be installed. (#937)
Before upgrading PNPM to v10, we need to get Docker builds running again, so this change temporarily forces PNPM v9 to be installed.
2025-02-04 18:17:32 +11:00
..
base DEV: Force PNPM v9 to be installed. (#937) 2025-02-04 18:17:32 +11:00
discourse_dev FEATURE: Update base image and set default to postgresql 15 (#909) 2025-01-29 10:20:49 +03:00
discourse_test Clean up firefox tar file in `discourse/discourse_test` image (#904) 2024-12-27 12:51:33 +08:00
README.md FEATURE: Update base image and set default to postgresql 15 (#909) 2025-01-29 10:20:49 +03:00
auto_build.rb Build images with PG 15 installed (#917) 2025-01-21 09:59:32 +08:00

README.md

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.