Привет! Я настроил стандартный Discourse на машине с Linux, используя это руководство. Всё прошло очень гладко, и сайт запустился без проблем.
Я решил разрешить пользователям подключаться через Facebook, поэтому прошёл по инструкциям от Facebook, на которые есть ссылка в вышеупомянутом руководстве (снова ссылку дать не могу, так как новые пользователи, видимо, могут публиковать только две ссылки). В итоге это не сработало, но сам сайт продолжал работать (я не помню точную ошибку, возникшую при попытке входа через Facebook).
Изучая документацию Facebook, я заметил, что необходимо включить HTTPS, поэтому начал следовать этим инструкциям. Всё шло хорошо, пока не дошло до команды ./launcher rebuild app, где возникла ошибка PostgreSQL. Это меня удивило, так как я ничего не менял в конфигурации PostgreSQL (насколько мне известно). Первая ошибка выглядит так:
INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
PG::ConnectionBad: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
Я не останавливал службу PostgreSQL, но попытался запустить service start postgres, и система сообщила, что она не установлена. Предполагаю, что она устанавливается автоматически каким-то другим способом, к которому я не привык. Есть ли у кого-нибудь идеи, что я мог сделать неправильно? Спасибо.
Мой файл container/app.yml:
templates:
- "templates/web.template.yml"
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
expose:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
db_shared_buffers: "128MB"
env:
LANG: en_US.UTF-8
LETSENCRYPT_ACCOUNT_EMAIL: 'myotheremail@gmail.com'
UNICORN_WORKERS: 2
DISCOURSE_HOSTNAME: mysite.com
DISCOURSE_DEVELOPER_EMAILS: 'myemail@gmail.com'
DISCOURSE_SMTP_ADDRESS: smtp.gmail.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: myemail@gmail.com
DISCOURSE_SMTP_PASSWORD: "myPa$$word"
## The http or https CDN address for this Discourse instance (configured to pull)
## see https://meta.discourse.org/t/14857 for details
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
run:
- exec: echo "Beginning of custom commands"
- exec: echo "End of custom commands"
