Привет
Недавно я выполнил несколько чистых установок.
Обратил внимание на формулировку первого сообщения в процессе проверки наличия Docker.
Не удалось найти Docker … и т.д.
Использование слова «не удалось» как первого сообщения при большинстве установок — не лучший способ обратной связи для тех, кто не знаком с командной строкой.
Вы копируете и вставляете:
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
и это приводит к ошибке, если Docker ещё не установлен, что в большинстве случаев вполне вероятно.
Можно ли изменить формулировку на менее негативную?
«Docker не найден …
«[КАК ОЖИДАЛОСЬ] … Docker не установлен …
«Следующий шаг — установить Docker, так как он сейчас не установлен …
«Успех! Следующий шаг — установить Docker, так как он сейчас не установлен …
@pfaffman, знаю, что вы часто выполняете установки, есть какие-то мысли по этому поводу?
Можно ли убрать слово Failed и использовать другую формулировку?
Или ещё лучше: может ли установка просто продолжить работу и не останавливаться здесь для ответа?
Если вы выполняете установку, последнее слово, которое вы хотите увидеть, — это Failed.
Особенно после того, как вы только что скопировали и вставили (правильно) инструкции по установке.
Это верное замечание. Есть также множество команд grep, которые выдают сообщения, которые сбивают с толку и выглядят как ошибки. Я уже думал о том, чтобы это исправить. Это, скорее всего, займёт один-два часа, и я не очень хочу делать это в своё свободное время, так как большинство людей способны пережить эти пугающие сообщения.
Однако в следующий раз, когда я буду вносить изменения (возможно, в следующем месяце, чтобы было проще отключить новые функции ember-cli), я постараюсь сделать эти сообщения менее пугающими.
Привет, Джей,
Да, я несколько раз проходил через установку, и с опытом паника действительно отступает.
Используемая формулировка отражает отрицательный результат условия в строке 131.
С точки зрения программирования это верно, но на практике отсутствие Docker — ожидаемое поведение, поскольку у большинства пользователей только что выполнена чистая установка.
Мне всегда казалось, что этот код, который я вставляю в командную строку, должен/должен был установить Docker без необходимости в диалоге?
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
Мне пришло в голову, что вместо того чтобы исправлять все то, что я считаю проблемным, запрошенное вами изменение состоит всего из нескольких строк, поэтому я отправил следующее:
Привет, Джей! Спасибо, что нашли время это сделать. Я знаю, что вы заняты своим собственным сайтом, который, кстати, выглядит отлично. С наилучшими пожеланиями.
Я считаю, что упоминание PATH в сообщении является важным индикатором того, что docker/docker.io может быть установлен или нет, то есть проблема может заключаться в том, что PATH не включает путь, где он был установлен.
Если цель состоит просто в том, чтобы избежать использования слова с сильным негативным оттенком, я думаю, что достаточно заменить «Failed to» на «Could not».
Скорее всего, лучше не тратить на это время.
Разногласия по поводу «текста» сложно разрешить, не кого-то не обидев.
Когда я сделаю следующую чистую установку… я смогу улыбнуться этой теме, перейти в своё «хорошее место» и, как мне говорят, Docker «не найден» на моей свежей установке. Когда я нажимаю «Y», чтобы установить Docker, я смогу сделать это, не ругаясь сквозь стиснутые зубы: «Я думал, что именно этим я и занимался — давай уже, делай».
Думаю, это происходит потому, что вы не устанавливаете Docker. В момент появления этого сообщения вы запускаете настройку Discourse, которая требует наличия Docker. Если система не находит Docker, она помогает вам его установить, но спрашивает, так как ничего не знает о вашей системе.
Возможно, Docker не найден, потому что он не установлен — в этом случае установка, очевидно, правильный вариант. А возможно, Docker установлен вами намеренно в другом месте по какой-то причине, и это место не входит в стандартный PATH системы — тогда установка будет неправильным решением. (Один из правильных вариантов — прервать настройку и запустить её снова с помощью команды PATH=/where/docker/is:$PATH ./discourse-setup)
Возможно, вы интерпретируете название репозитория discourse_docker как сам Docker? Это не так. Это внешний слой Discourse — компоненты, которые должны взаимодействовать с Docker, такие как скрипт настройки, скрипт запуска и т. д.