Как обслуживать Gitbook на Heroku

У меня есть репозиторий Gitbook, и я хочу обслуживать его через Хероку. Как мне настроить приложение для этой цели? Как сказать команде Gitbook serve прослушивать порт Heroku?

Спасибо.


person Julien Christin    schedule 24.09.2015    source источник


Ответы (2)


Не запускайте gitbook-cli непосредственно на Heroku, gitbbok будет использовать много памяти и превысит ограничение в 512 МБ для бесплатного динамометра. Лучше всего сначала создать свою книгу на статическом веб-сайте, а затем обслуживать статический контент либо с помощью nodejs с помощью express static, либо с помощью sinatra.

Запустите следующее в папке gitbook.

gitbook build

Будет создана новая папка, _book и все ваши html файлы будут здесь. Теперь вы можете создать новое приложение на Heroku и обслуживать свой статический контент.

После того, как вы выполните gitbook build, вы можете обслуживать этот каталог с помощью Express, создав файл app.js следующим образом:

var express = require('express'); 
var app = express();
app.use(express.static(__dirname + '/_book'));

app.listen(process.env.PORT || 3000);

Мертвый легко. Для получения дополнительной информации: Статические файлы. обслуживается node.js на героку — это хорошая идея?

person Joseph    schedule 16.02.2016

1- Добавьте gitbook-cli в свой проект:

npm install --save gitbook-cli

2- Добавьте в свой проект Procfile:

web: ./node_modules/gitbook-cli/bin/gitbook.js serve --port $PORT
person Julien Christin    schedule 24.09.2015
comment
Этот способ будет потреблять много памяти, ваше приложение упадет с динамометром 512 МБ. Проверьте журналы на Heroku, как только ваше приложение запустится, вы заметите. - person Joseph; 16.02.2016