Веб-сервер Elixir Phoenix нельзя предварительно просмотреть на Nitrous.io

После установки Elixir 0.14.1 и веб-платформы Phoenix, а затем запуска веб-сервера я не могу предварительно просмотреть веб-сайт. Кто-нибудь знает, как заставить это работать?

1 ответ

Решение

В настоящее время Nitrous не имеет явной поддержки блоков Elixir, поэтому вам нужно создать блок, используя любой из поддерживаемых сервисов (например, Ruby on Rails). Затем вы можете использовать Autoparts:Uninstall для удаления ненужных частей и Autoparts:Install для добавления Elixir (в настоящее время есть часть Elixir 0.14.1, которая появляется при поиске).

После установки Elixir откройте консоль Nitrous и установите последнюю платформу Phoenix, клонировав ее с github, как описано в README.md на сайте gitub phoenixframework.

Создайте приложение Phoenix в консоли из корневого каталога phoenix, как описано в README.md. В обсуждении ниже мы предполагаем, что приложение Phoenix называется ws.

Функция предварительного просмотра Nitrous IDE требует, чтобы веб-сервер работал на 0.0.0.0 с использованием порта 3000 (также поддерживаются другие порты) с отключенным ssl. Для этого измените /lib/ws/config/prod.ex, чтобы он выглядел следующим образом:

defmodule Ws.Config.Prod do
  use Ws.Config

  config :router, port: 4000,
                  host: "0.0.0.0",
                  ip: {0, 0, 0, 0},
                  ssl: false,
                  # Full error reports are disabled
                  consider_all_requests_local: false

  config :plugs, code_reload: false

  config :logger, level: :error
end

Обратите внимание, что мы модифицируем производственную конфигурацию. Вы можете решить использовать конфигурацию dev.ex или config.ex / вместо этого. Чтобы запустить сервер из консоли Nitrous, убедитесь, что вы находитесь в корневом каталоге приложения, затем введите:

MIX_ENV = Prod Mix Phoenix.start

запустить сервер. Теперь вы сможете предварительно просмотреть получившийся сайт из Nitrous IDE, используя Preview:Port 3000.

Другие вопросы по тегам