Как перенести содержимое блога Ghost между средой разработки и рабочей средой?

Я создал новый блог Ghost 0.4, создал множество сообщений, затем переключился в рабочий режим, прежде чем запускать сайт. К моему удивлению, сообщения, которые я создал, больше не появлялись. С момента установки Ghost 0.3.3 я забыл, что Ghost использует отдельные хранилища баз данных для рабочей среды и среды разработки, и мне не удалось переключиться в рабочий режим перед созданием контента.

Как я могу перенести содержимое из среды разработки Ghost в производственную среду?


person Steve HHH    schedule 16.01.2014    source источник


Ответы (2)


Ghost использует базы данных SQLite, которые хранят контент в одном файле для каждого контента, поэтому можно легко создавать резервные копии, перемещать или копировать всю базу данных за один раз.

Чтобы решить проблему наличия сообщений только в моей базе данных разработки, я просто закрыл Ghost и поменял местами файлы базы данных SQLite для производства и разработки. Файлы хранятся в подпапке Ghost content/data:

  • ghost-dev.db — база данных разработки
  • ghost.db — производственная база данных

Если вы находитесь в папке Ghost, следующие команды поменяют местами две базы данных среды:

$ mv content/data/ghost-dev.db content/data/ghost-dev.db-tmp
$ mv content/data/ghost.db content/data/ghost-dev.db
$ mv content/data/ghost-dev.db-tmp content/data/ghost.db

Перезапустите Ghost в любом режиме, чтобы увидеть изменения.

Еще проще просто скопировать все от разработки до производства:

$ cp content/data/ghost-dev.db content/data/ghost.db
person Steve HHH    schedule 16.01.2014

Простой способ изменить это поведение — просто выбрать использование одной и той же базы данных как для производства, так и для разработки.

Измените следующую строку в config.js в процессе разработки: база данных: подключение от

filename: path.join(__dirname, '/content/data/ghost-dev.db')

to

filename: path.join(__dirname, '/content/data/ghost.db')
person Subfuzion    schedule 31.12.2015