tweaks required to get this to build... ruby now needs ruby to install ruby
[discourse_docker.git] / image / README.md
1 # Docker images
2
3 ## Building new images
4
5 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.
6
7 Images and tag names are defined [here](https://github.com/discourse/discourse_docker/blob/master/image/auto_build.rb#L6-L11).
8
9 > **A note about --squash**: By default we squash the images we serve on Docker Hub. You will need to [enable experimental features](https://github.com/docker/docker-ce/blob/master/components/cli/experimental/README.md) on your Docker daemon for that.
10
11
12 ## More about the images
13
14 See both `auto_build.rb` and the respective `Dockerfile`s for details on _how_ all of this happens.
15
16
17 ### base ([discourse/base](https://hub.docker.com/r/discourse/base/))
18
19 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.
20
21
22 ### discourse_dev ([discourse/discourse_dev](https://hub.docker.com/r/discourse/discourse_dev/))
23
24 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](https://github.com/discourse/discourse/tree/master/bin/docker/) for utilities that help with this.
25
26 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.
27
28
29 ### discourse_test ([discourse/discourse_test](https://hub.docker.com/r/discourse/discourse_test/))
30
31 Builds on the discourse image and adds testing tools and a default testing entrypoint.
32
33
34 ### discourse_bench ([discourse/discourse_bench](https://hub.docker.com/r/discourse/discourse_bench/))
35
36 Builds on the discourse_test image and adds benchmark testing.
37
38
39 ### discourse_fast_switch ([discourse/discourse_fast_switch](https://hub.docker.com/r/discourse/discourse_fast_switch/))
40
41 Builds on the discourse image and adds the ability to easily switch versions of Ruby.