Произошла ошибка при попытке записи в `/src/Gemfile.lock`. Скорее всего, вам нужно предоставить права на запись для этого пути

При попытке выполнить инструкции Docker по ссылке https://meta.discourse.org/t/install-discourse-for-development-using-docker/102009 возникает следующая ошибка:

$ d/boot_dev --init;
Using source in: /local/discourse
Using data in:   /local/discourse/data/postgres
release: Pulling from discourse/discourse_dev
Digest: sha256:30890360c3f02aab4369665be3db637c0b847a8a714b3518fecc49406a0d7f72
Status: Image is up to date for discourse/discourse_dev:release
docker.io/discourse/discourse_dev:release
c47ea0052a293b05b2880d43bf139aced31664e1c5a5a136a189bb30038bf4b5
Installing gems...
There was an error while trying to write to `/src/Gemfile.lock`. It is likely that you need to grant write permissions for that path.

Мне нужно быстро развернуть среду разработки Discourse для цикла «изменение кода Discourse / применение изменений».

Спасибо!

У меня тоже возникает эта проблема. В моём случае, похоже, это связано с использованием Docker без прав root и отсутствием у контейнера прав на запись в смонтированную директорию src. На данный момент мне не удалось найти обходного решения.

Мой пользователь запускает контейнер как и ожидалось (UID 1000), но внутри контейнера все смонтированные файлы в src принадлежат root (UID 0), и нет возможности смонтировать эти файлы от имени другого пользователя.

Смежные обсуждения (ссылки удалены из-за ограничений на публикацию ссылок новыми пользователями):

  • github dot com/mamba-org/micromamba-docker/issues/407
  • joeeey dot com/blog/rootless-docker-avoiding-common-caveats/#storage-fixes

ОС: Ubuntu 24.04.1 LTS
Docker: v27.3.1, сборка ce12230 (rootless)
Коммит репозитория Discourse: cc01555fce59e116b76c912b4c5195e111a652b2

Войдите в контейнер discourse_dev docker

cd src
chmod 777 Gemfile.lock