Использование переменных среды в конфигурации Ghost v1

В Ghost 0.x конфигурация предоставлялась через один файл config.js с ключами для каждой среды.
В Ghost 1.0 конфигурация предоставлялась через несколько файлов config.json.

Как вы предоставляете переменные среды в Ghost 1.0?

Я хотел бы динамически устанавливать значение порта с помощью process.env.port в Cloud9 IDE, например.

config.development.json

{
  "url": "http://localhost",
  "server": {
    "port": process.env.port,
    "host": process.env.IP
  }
}

Когда я запускаю приложение с помощью ghost start со следующей конфигурацией, оно говорит: Вы можете получить доступ к своей публикации по адресу http://localhost:2368, но когда я перехожу на http://localhost:2368 в http://c9.io выдает сообщение об ошибке Похоже, здесь не запущено ни одно приложение!

{
  "url": "http://localhost:2368",
  "server": {
    "port": 2368,
    "host": "127.0.0.1"
  }
}

person Ishan    schedule 27.06.2018    source источник


Ответы (1)


Мне удалось выяснить, как это сделать.

Вот решение, если кто-то еще пытается понять, как сделать то же самое.

В файле config.development.json добавьте следующее.

{
  "url": "http://{workspace_name}-{username}.c9users.io:8080",
  "server": {
    "port": 8080,
    "host": "0.0.0.0"
  }
}

В качестве альтернативы выполните следующую команду в терминале. Это позволит динамически получить значение для переменной среды порта и хоста и добавить указанное выше содержимое в файл config.development.json.

ghost config url http://$C9_HOSTNAME:$PORT
ghost config server.port $PORT
ghost config server.host $IP
person Ishan    schedule 27.06.2018