Установка не удаётся с портами 80, 443 на GCP

Привет,

Я создал виртуальную машину в GCP Compute Engine. Мое доменное имя — solarnauts.net (зарегистрировано в Namecheap).

Я создал DNS A-запись: для хоста указал поддомен discourse.solarnauts.net, а для значения — внешний IP-адрес моей виртуальной машины.

При запуске ./discourse-setup я получаю предупреждения о портах 80 и 443 (см. ниже).

Несмотря на то, что я добавил правило брандмауэра для открытия этих двух портов на виртуальной машине, ошибка сохраняется. Что вы посоветуете?

Спасибо.

Проверка доменного имени . . . ПРЕДУПРЕЖДЕНИЕ: Порт 443 компьютера, по-видимому, недоступен по имени хоста: discourse.solarnauts.net. ПРЕДУПРЕЖДЕНИЕ: Подключение к [http://discourse.solarnauts.net](http://discourse.solarnauts.net/) (порт 80) также не удаётся. Это означает, что discourse.solarnauts.net разрешается в некоторый IP-адрес, который не ведёт к этой машине, где вы устанавливаете Discourse. Первое, что нужно сделать, — убедиться, что discourse.solarnauts.net разрешается в IP-адрес этого сервера. Обычно это делается там же, где вы покупали домен. Если вы уверены, что IP-адрес разрешается правильно, проблема может быть в брандмауэре. Поиск в интернете по запросу «открыть порты ВАШЕ ОБЛАЧНОЕ ОБСЛУЖИВАНИЕ» может помочь.

Попробуйте выполнить команду
netstat -alpn | grep 80
на вашем GCP, чтобы проверить, запущен ли уже веб-сервер на порту 80.

Возможно, потребуется немного времени для распространения DNS-записи.

Вы открыли порты 80 и 443?

Сколько времени это обычно занимает? Я купил домен 2 дня назад и добавил A-запись вчера. Есть ли способ узнать, произошла ли репликация?

Например, я попробовал это:

$ nslookup solarnauts.net
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name:   solarnauts.net
Address: 192.64.119.14

$ nslookup discourse.solarnauts.net
Server:         8.8.8.8
Address:        8.8.8.8#53

** server can't find discourse.solarnauts.net: NXDOMAIN

По какой-то причине ваши DNS-записи могли быть созданы неправильно. Я всё ещё вижу DNS-записи для парковки имени от Namecheap и ничего больше на вашем домене solarnauts.net

Я создал правило брандмауэра в GCP, которое открывает оба порта, но я прочитал, что для операционной системы, оптимизированной для контейнеров, могут быть свои особенности, связанные с самим Docker.

Как вы это проверили?

через несколько онлайн-инструментов, например:
whatsmydns.net
dnschecker.org

Я пробовал использовать nslookup (см. мой предыдущий ответ @Benjamin_D). Выполняет ли он ту же проверку?

nslookup — это локальная проверка с вашей собственной системы, на которую могут влиять многие факторы, включая кэш DNS вашей системы и роутера, а также DNS-резолвер вашего провайдера. Вот почему я обратился к стороннему сервису, который выполняет проверку через несколько точек присутствия (PoPs), чтобы подтвердить существование DNS-записи и значение, которое она возвращает.

Хорошо, значит, проблема пока не связана с фаерволом, и мне стоит обратить внимание на Namecheap, где я создал A-запись? Возможно, нужно просто подождать немного дольше? Я создал её менее 24 часов назад. Обычно требуется больше времени?

Новые DNS-записи обычно начинают разрешаться примерно через 10 минут. Медленные резолверы могут работать от 2 до 6 часов, а в худших случаях максимальное время разрешения не должно превышать 48 часов. У меня нет предыдущего опыта работы с Namecheap, поэтому я не могу говорить за них, но у большинства регистраторов DNS-пропагаторы начинают разрешать записи довольно быстро.

Странно подозрительным в вашей настройке является то, что нигде не наблюдается изменений в DNS-записях, возможно, ваши записи были созданы некорректно.

@itsbhanusharma вы попали в точку.

В Namecheap в поле «хост» я ввёл полный адрес «discourse.solarnauts.net» вместо просто «discourse».

Поэтому я протестировал ваш DNS-чекер с:
«discourse.solarnauts.net.solarnauts.net», и этот вариант полностью распространился.

Получается, мне нужно просто заменить поле «хост» на «discourse»?..

Да, это должно помочь.