Я думаю, что проблема здесь в том, что теги неизвестны локально при выполнении checkout, как в следующем (не связанном с Discourse) вопросе:
Выполнение git fetch --all должно решить проблему, но я не знаю, насколько это увеличит размер образа (если только другая инструкция позже не очистит неиспользуемые ссылки).
Тем не менее, я считаю, что git clone --depth 1 https://github.com/discourse/discourse.git --branch=$version решит это, поскольку параметр branch поддерживает как ветки, так и теги, но я не тестировал это и не знаю, есть ли причина, по которой клонирование использует (в настоящее время) ветку master.
При выполнении git clone --depth 1 https://github.com/discourse/discourse.git --branch=v2.6.0 размер всей папки составляет 212 МБ, а папка .git внутри — 46 МБ, так что, думаю, это приемлемо.