Все-таки bundle exec rake db:create упорно не хочет работать из-за ошибки permission denied to create database. Ok. Инструкция по ручному созданию базы данных была в статье про запуск в среде development. Теперь по ней имя создаваемой базы данных будет именно discourse. Далее, параметры доступа к базе данных production правим в discourse.conf, а не в database.yml. Это значения db_name, db_username, db_password (два крайних не имеют значений по умолчанию). Также в discourse.conf задаем значение hostname, предварительно создав этот файл с помощью cp config/discourse_defaults.conf config/discourse.conf
2. Затем делаем RAILS_ENV=production bundle exec rake db:migrate. В результате эта команда также у меня выдает `optipng` not found и т.д.
Ок, делаем sudo apt install optipng pngquant jhead jpegoptim gifsicle.
3. Теперь в ответ на RAILS_ENV=production bundle exec rake assets:precompile может быть ошибка Not such file or directory - brotli. Устанавливаем sudo apt install brotli и повторяем компиляцию ассетов.
4. Проверяем nginx, чтобы там для нашего домена был указан верный корневой каталог и чтобы nginx обрабатывал (serve) статические файлы в каталогах /assets/ и /images/. Перезапуск nginx в случае изменений его конфигурации.
5. Наконец, запуск сервера unicorn в среде production.