При стандартной установке на этапе редактирования app.yml файла app.yml нет

Следую руководству по установке Docker для начинающих , но вместо использования Digital Ocean использую OSU OSL (преимущество того, что SWI-Prolog является проектом с открытым исходным кодом).

На шаге Электронная почта перешел к более подробным инструкциям в статье Переключение вашего Discourse с Mandrill на Mailgun.

Так как swi-prolog.org — это уже зарегистрированное доменное имя (проверьте whois) и ранее было настроено в Mailgun для другого использования, я пропускаю шаги и перехожу к шагу 4. Войдите через SSH и отредактируйте конфигурацию Discourse (ссылка). Я могу войти через SSH, но файла app.yml нет.

eric@swi-prolog:~$ ls -la /var/discourse/containers
total 8
drwxr-xr-x  2 root root 4096 May 26 13:41 .
drwxr-xr-x 11 root root 4096 May 23 11:02 ..
-rw-r--r--  1 root root    0 May 23 11:02 .gitkeep

Единственные выполненные на данный момент шаги, связанные с установкой Discourse:

sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse

Что нужно сделать?

Думаю, что нужно запустить ./discourse-setup, но не уверен, поэтому просто спрашиваю.


Примечание: У меня нет доступа к учетной записи Mailgun или подобным данным для доменного имени, но я работаю с тем, у кого он есть. Коротко: я пытаюсь сделать это с его помощью при необходимости, но так как я никогда не настраивал почтовый сервер и не имею доступа к Mailgun, я часто спотыкаюсь и учусь. Он предоставил значения, необходимые для app.yml.

Именно так. Это создаст файл app.yml на основе ваших ответов.

Спасибо за ответ, но я не совсем понимаю весь текст в целом, как он написан. Отдельные части имеют смысл, но вместе они, кажется, противоречат друг другу.

Подразумевается ли под этим «Это» запуск ./discourse-setup?

Но я ещё не давал никаких ответов. Единственное, что я сделал, связанное с установкой Discourse по инструкции, это:

sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse

Файл app.yml ещё не существует, чтобы в него можно было внести значения.

Я установил версию для разработки, и она работает. Поэтому для рассматриваемой сборки я ожидаю увидеть запуск скрипта, который выполняет большую часть процесса сборки, но этот шаг для данной сборки я ещё не выполнял.

Да, это означает запуск, после чего вы введёте данные, необходимые системе для создания app.yml.

Или, если вы не запускаете ./discourse-setup, вам нужно скопировать файл samples/standalone.yml в containers/app.yml и отредактировать его вручную.

Теперь, когда я перестал путаться и дошёл до этапа Building app при выполнении $ sudo ./discourse-setup, оба ответа стали понятны.

Для тех, кто идёт по тому же пути, что и в вопросе, вот что я сделал:

  1. Скопировал файл app.yml из каталога с образцами, как указано Джастин.
$ sudo cp /var/discourse/samples/standalone.yml /var/discourse/containers/app.yml
  1. Изменил три значения для SMTP-сервера исходя из этого блога.
$ sudo vim containers/app.yml
  1. Не смог выполнить пересборку, так как ранее я выбрал вариант, при котором Discourse build устанавливает Docker, поэтому ПРОПУСТИЛ этот шаг.
$ ./launcher rebuild app
  1. Выполняю настройку Discourse.
$ sudo ./discourse-setup

Именно здесь появляются запросы, о которых писал Роберт. Поскольку я никогда не выполнял установку для продакшена, я не встречал эти конкретные запросы.

Поскольку Docker не был установлен, первый запрос был об установке Docker:

Docker not installed. Enter to install from https://get.docker.com/ or Ctrl+C to exit

После установки Docker появился следующий запрос:

Hostname for your Discourse? [discourse.example.com]: ***

Checking your domain name . . .
Connection to *** succeeded.
Email address for admin account(s)? [me@example.com,you@example.com]: ***@gmail.com
SMTP server address? [***.mailgun.org]:  
SMTP port? [587]: 
SMTP user name? [***@***]: 
SMTP password? [55...]: 
Optional email address for Let's Encrypt warnings? (ENTER to skip) [me@example.com]: ***@gmail.com

Does this look right?

Hostname      : ***
Email         : ***@gmail.com
SMTP address  : ***.mailgun.org
SMTP port     : 587
SMTP username : ***@***
SMTP password : 55...
Let's Encrypt : ***@gmail.com

ENTER to continue, 'n' to try again, Ctrl+C to exit:
Enabling Let's Encrypt
web.ssl.template.yml enabled
letsencrypt.ssl.template.yml enabled

Configuration file at  updated successfully!

Updates successful. Rebuilding in 5 seconds.
Building app
...

Отлично — я пометил ваш ответ как решение для будущих обращений!