- Якія дадзеныя могуць быць імпартаваныя?
- 1.1. ўстаноўка дыскурс
- 1.2. Падрыхтоўка кантэйнера Докер
- 1.3. Настройка імпарцёра
- 1.3.1. Падключэнне да выдаленай базе дадзеных
- 1.3.2. Падключэнне да ўнутранай базе дадзеных
- 1.3.3. іншыя налады
- 1,5. Выкананне сцэнара імпарту
- 1.6. пачынаючы дыскурс
- 1.7. Прыбіраць
- 1,8. Канец
- 4.1. У мяне моцна мадыфікаванага форум. Ці будзе скрыпт імпарту па-ранейшаму працаваць?
- 4.2. Чаму працэс імпарту так павольна?
- 4,3. У мяне ёсць вялікі форум з вялікай колькасцю карыстальнікаў і паведамленняў. Як можна мінімізаваць...
- 4.4. Ці магу я працаваць на аснове імпарту Docker на маім настольным кампутары або прамежкавы сервер?
- 4,5. Перадае Ці скрыпт электронныя лісты падчас імпарту?
- 4,6. Якая версія дыскурсе я павінен выкарыстоўваць для імпарту?
- 4,7. Я ўключыў імпарт пароляў. Чаму мае карыстальнікі не могуць увайсці ў сістэму са сваімі старымі...
- 4.8. Імпарт быў паспяховым, але спіс карыстальнікаў пусты. Што не так?
- 4.9. У мяне ёсць уласныя смайлікі ў маім форуме. Завозяць яны?
Такім чынам, вы выявілі Дыскурс і хочаце ведаць, як перайсці ад існуючага phpBB3 форуму?
Выдатна! Тады працягвайце чытаць. Гэта кіраўніцтва пакажа вам, як выкарыстоўваць Сцэнар імпарту phpBB3 для імпарту з PhpBB 3.0.x і 3.1.x.
Імпарт з PHPBB 3.2 у цяперашні час не падтрымліваецца.
Гэтая тэма будзе мець змест
Якія дадзеныя могуць быць імпартаваныя?
- карыстальнікаў
- Аватары (неабавязкова)
- Ананімныя карыстальнікі (альбо як «сістэма» карыстальніка ці прыпыненых карыстальнікаў)
- Пароль хэшы, якія могуць быць выкарыстаны з migratepassword убудова ( Па жаданні)
- Катэгорыі і падзелы
- Тэмы і паведамленні
- Апытанні і галасавання ( па жаданні)
- смайлы
- BBCodes
- Унутраныя спасылкі на тэмы і пасты
- Прымацаваныя тэмы і (глабальныя) аб'явы
- Асабістыя паведамленні (неабавязкова)
- Абсталяванне (неабавязкова)
- Закладкі (неабавязкова)
- Permalinks для імпартуемых катэгорый, тым і паведамленняў (неабавязкова)
Гэта рэкамендуемы спосаб для імпарту кантэнту з phpBB3 форуму ў дыскурс.
1.1. ўстаноўка дыскурс
Ўсталяваць Развага, вынікаючы афіцыйнае кіраўніцтва па ўстаноўцы ,
Пасля гэта добрая ідэя, каб перайсці ў раздзел адміністратара і наладзіць некалькі параметраў:
- Ўключыць login_required, калі імпартуемыя тэмы не павінны быць бачныя публіцы
- Ўключыць hide_user_profiles_from_public, калі профілі карыстальнікаў не павінны быць бачныя публіцы.
- Адключыць download_remote_images_to_local, калі вы не хочаце Дыскурс для загрузкі малюнка, укладзеныя ў паведамленні.
- Ўключыць disable_edit_notifications, калі ўключана download_remote_images_to_local і не хоча, каб карыстальнікі, каб атрымаць шмат апавяшчэнняў пра пасты адрэдагаваць карыстальніка сістэмы.
- Зменіце значэнне slug_generation_method калі большасць назваў тэмы выкарыстоўваюць сімвалы, якія не павінны быць ператвораныя ў ASCII (напрыклад, арабская). глядзець гэты пост для атрымання дадатковай інфармацыі.
Наступныя крокі мяркуюць , што вы ўсталявалі Развага на Ubuntu , і што вы падлучаныя да апарата праз SSH або мець прамы доступ да тэрмінала машыны.
1.2. Падрыхтоўка кантэйнера Докер
Скапіруйце файл кантэйнер канфігурацыі app.yml ў import.yml і рэдагаваць яго з вашым любімым рэдактарам.
кд / вар / Дыскурс CP кантэйнеры / app.yml кантэйнеры / import.yml нана кантэйнеры / import.yml
Дадаць - «Шаблоны / імпарт / phpbb3.template.yml» ў спісе шаблонаў. Пасля гэтага ён павінен выглядаць наступным чынам:
Шаблоны: - "шаблоны / postgres.template.yml" - "шаблоны / redis.template.yml" - "шаблоны / web.template.yml" - "шаблоны / web.ratelimited.template.yml" ## раскаментаваць гэтыя дзве лініі калі вы хочаце дадаць Дазваляе зашыфраваць (HTTPS) # - "шаблоны / web.ssl.template.yml" # - "шаблоны / web.letsencrypt.ssl.template.yml" - "шаблоны / імпарт / phpbb3.template.yml"
Вось і ўсё. Вы можаце захаваць файл, зачыніце рэдактар і стварыць кантэйнер.
/ Вар / дыскурс / пускавая прыпынак дадатак / вар / дыскурс / пускавое аднаўленне імпарту
Стварэнне кантэйнера стварае каталог імпарту ў агульным каталогу кантэйнера. Гэта выглядае наступным чынам:
/ Вар / дыскурс / агульны / аўтаномны / імпарт дадзеных ├── ├── MySQL └── settings.yml
1.3. Настройка імпарцёра
Вы можаце наладзіць імпарт шляхам рэдагавання settings.yml файла, які быў скапіяваны ў дырэкторыю імпарту.
нана /var/discourse/shared/standalone/import/settings.yml
параметры файла добра дакументаваны і пастаўляецца з прымальнымі значэннямі па змаўчанні, але вось некалькі саветаў, якія так ці інакш:
1.3.1. Падключэнне да выдаленай базе дадзеных
Змена хаста базы дадзеных, порт, імя карыстальніка, пароль і схему, калі вы хочаце падключыцца да выдаленай базе дадзеных. Пераканайцеся, што ваш Сервер MySQL дазваляе аддаленыя злучэнні ,
1.3.2. Падключэнне да ўнутранай базе дадзеных
Кантэйнер Docker пастаўляецца з серверам MariaDB, які сумяшчальны з MySQL. Вам не трэба змяняць налады базы дадзеных, калі вы збіраецеся яго выкарыстоўваць. Усё, што вам трэба, гэта база дадзеных дампа, які можна стварыць некалькімі спосабамі. Вось два з іх:
Стварэнне рэзервовай копіі базы дадзеных у панэлі кіравання кіраванне PHPBB ў
Падключэнне да хасту базы дадзеных і стварэнне дампа базы дадзеных:
# Замяніць апошні параметр «PHPBB» з імем схемы базы дадзеных туздЫшпр кораня --user --password --result-файл phpbb_mysql.sql PhpBB
Капіраванне базы дадзеных дампа в / вар / дыскурсе / агульны / аўтаномны / імпарт / дадзеных / каталог. Вам трэба атрымаць файл , калі вы стварылі GZIP або bzip2 сціснутых рэзервовае капіяванне і пераканайцеся , што файл з імем phpbb_mysql.sql
1.3.3. іншыя налады
- Змена table_prefix ў выпадку, калі ваш форум PHPBB не выкарыстоўваючы па змаўчанні для наймення табліц базы дадзеных.
- Пераканайцеся, што phpbb_base_dir паказвае / Shared / імпарту / дадзеных
1.4. Капіяванне ўкладанні і выявы
Вы можаце прапусціць гэты крок, калі вы не хочаце імпартаваць ўкладанні, аватары або смайлікі.
Падключэнне да phpBB3 хаста з дапамогай FTP або SCP і загрузіць наступныя каталогі в / вар / дыскурс / агульны / аўтаномны / імпарту каталога / дадзеных:
Прыкладання, як правіла, захоўваюцца ў каталогу файлаў. Вы можаце пераканацца, праверыўшы шлях у панэлі кіравання адміністравання.
Аватары звычайна захоўваюцца ў каталогу малюнкаў / аватараў. Вы можаце пераканацца, праверыўшы шлях у панэлі кіравання адміністравання.
Смайлікі захоўваюцца ў каталогу малюнкаў / смайлікаў.
Каталог імпарту павінен выглядаць наступным чынам, калі вы загрузілі ўсе з гэтых каталогаў:
/ Вар / дыскурс / агульны / аўтаномны / імпарт ├── │ дадзеныя ├── файлы │ ├── малюнка │ │ ├── аватары │ │ │ ├── галерэя │ │ │ └── загрузкі │ │ └── смайлікі ├── MySQL └── settings.yml
1,5. Выкананне сцэнара імпарту
Падказка: Гэта добрая ідэя , каб пачаць імпарт ўнутры tmux або экран сесіі, так што вы можаце падлучыцца да сесіі ў выпадку страты злучэння SSH.
Давайце пачнем імпарт, увёўшы кантэйнер Докер і запуск сцэнара імпарту ўнутры кантэйнера Докер.
/ Вар / дыскурс / пускавая ўвесці імпартную import_phpbb3.sh # ўнутры кантэйнера Докер
У залежнасці ад памеру вашага форуму настаў час для некаторых або
Сцэнар імпарту пакажа вам паведамленне , як гэта , калі ён скончыў: Done (00h 26min 52sec)
І ў той час як вы чакаеце імпарту, каб скончыць вам можа зірнуць на часта задаюць пытанні ,
Савет: Вы можаце адмяніць імпарт у любы час вы хочаце, націснуўшы Ctrl + C
Пры перазапуску імпарту будзе працягваць, дзе яна была перапыненая.
Вы можаце выйсці і спыніць кантэйнер Docker пасля імпарту завершаны.
выхад # ўнутры кантэйнера Docker / вар / дыскурсу / імпарту пускавы прыпынку
1.6. пачынаючы дыскурс
Давайце пачнем кантэйнер прыкладанне і паглядзіце на імпартуемыя дадзеныя.
пачатак дадатак / вар / дыскурс / пускавая
Разважанне пачнецца і Sidekiq пачнецца пасля апрацоўкі ўсіх імпартаваных паведамленняў. Гэта можа заняць зберагалае колькасць часу. Вы можаце назіраць за ходам, увайшоўшы ў сістэму як адміністратар і наведванне http://discourse.example.com/sidekiq
1.7. Прыбіраць
Такім чынам, вы задаволены вынікам імпарту і хочаце, каб вызваліць месца на дыску? Наступныя каманды будуць выдаленыя кантэйнер Docker, які выкарыстоўваецца для імпарту, а таксама ўсе файлы, якія выкарыстоўваюцца ў працэсе імпарту.
/ Вар / дыскурс / пускавы знішчыць імпарт ет /var/discourse/containers/import.yml ет -R / уаг / дыскурс / агульны / аўтаномны / імпарт
1,8. Канец
Цяпер прыйшоў час святкаваць і атрымліваць асалоду ад сваім новым дыскурсу асобнікам!
Наступныя інструкцыі прызначаны для карыстальнікаў, якія хочуць імпартаваць з дапамогай асяроддзя распрацоўкі.
Настройка асяроддзя распрацоўкі вынікаючы кіраўніцтва для Ubuntu або Mac OS X ,
Наступныя інструкцыі мяркуюць, што вы выкарыстоўваеце Ubuntu.Пераканайцеся, што ні Дыскурс, ні Sidekiq працуюць.
Ўстаноўка некаторых залежнасцяў:
Sudo APT-атрымаць абнаўленне Sudo APT-атрымаць ўстаноўку libmysqlclient-DEV кд ~ / дыскурс рэха "каштоўны камень" mysql2 ">> Gemfile рэха« каштоўны камень 'рубінавы для ўстаўкі ў блог да МДУ' ,: GitHub => «nlalonde / Рубінавым для ўстаўкі ў блог -у-мда »>> Gemfile пачкі ўстаноўка гнюса афармленне заказ Gemfile Gemfile.lock
Настройка імпарту. там у Прыклад наладжвання файла у ~ / дыскурс / скрыпт / import_scripts / phpbb3 / settings.yml
Пачніце імпарт (змяніць шлях да файла налад, калі вы паставіце прыстасаваныя наладкі дзесьці яшчэ):
кд ~ / дыскурс / скрыпт / import_scripts лал phpbb3.rb phpbb3 / settings.yml
Пачакайце, пакуль імпарт не будзе зроблена. Вы можаце перазапусціць яго, калі ён запавольвае да поўзання.
Пачніце свой дыскурс асобніка: расслаенне EXEC рэйкі сервер
Пачатак Sidekiq і хай гэта робяць сваю працу: расслаенне EXEC sidekiq
У залежнасці ад памеру вашага форуму гэта можа заняць шмат часу. Вы можаце сачыць за прагрэсам па адрасе: // лакальны: 3000 / sidekiq
Вось спіс рэчаў, якія прапалі без вестак ад імпарцёра (у адвольным парадку):
- Дадаць падтрымку для PHPBB 3.2
- Дадаць падтрымку для cakeday убудова
- Імпартны тэкст, які выглядае, як Markdown павінен быць экранаваны
- Зачыніць тэмы, якія зачыненыя ў phpBB3
- Імпарт нямоцныя паведамленняў як схаваныя паведамленні
- Імпарт чытання статусу для кожнага паста і асабістага паведамлення
- Імпарт карыстацкіх палёў профілю
- імпарт груп
- Паляпшэнне BBCode для Markdown пераўтваральніка ( лалава-ўстаўкі ў блог-к-мд )
- Падтрымка карыстацкіх шаблонаў для ўнутраных спасылак на тэмы і пасты (SEO аптымізаваных URL)
- Дададзеная падтрымка некалькіх крыніц базы дадзеных: MS SQL Server, Oracle, PostgreSQL
Не саромейцеся, каб пачаць свой любімы Ruby-IDE і дапаможаце зрабіць імпарцёр яшчэ лепш.
4.1. У мяне моцна мадыфікаванага форум. Ці будзе скрыпт імпарту па-ранейшаму працаваць?
Можа быць. Гэта залежыць ад таго, якіх зменаў гэтых модов, унесеных у базу дадзеных. Вы павінны даць яму паспрабаваць.
4.2. Чаму працэс імпарту так павольна?
Імпартавання CPU-грань. Вы павінны выкарыстоўваць працэсары з хуткай хуткасцю аднаядзерны, калі вы знаходзіцеся ў спешцы. Вы атрымліваеце хуткасць імпартнай каля 400-600 паведамленняў / хвіліны на звычайным DigitalOcean сервера. Голыя серверы металаў, і, верагодна, таксама на працоўным стале кампутара, як правіла, прыкладна ў два разы хутчэй.
4,3. У мяне ёсць вялікі форум з вялікай колькасцю карыстальнікаў і паведамленняў. Як можна мінімізаваць час прастою падчас імпарту?
Вы можаце зрабіць інкрыментны імпарт для таго, каб скараціць час прастою.
Але майце ў выглядзе: Там невялікі рызыка страты дадзеных, калі вы робіце дадатковы імпарт, паколькі існуючыя паведамленні і карыстальнікі не абнаўляюцца падчас дадатковага імпарту. Вы страціце пост змен, якія адбыліся паміж імпартам, а таксама змены, унесеныя ў профілі карыстальнікаў.
4.4. Ці магу я працаваць на аснове імпарту Docker на маім настольным кампутары або прамежкавы сервер?
Канешне. Вы можаце перамясціць дыскурс асобнік на іншы сервер пасля завяршэння імпарту. паглядзець на гэта How-To для атрымання інструкцый.
4,5. Перадае Ці скрыпт электронныя лісты падчас імпарту?
Адпраўка паведамленняў электроннай пошты адключана падчас імпарту і дыскурс займае ад адпраўкі на кароткія лісты імпартных карыстальнікаў на працягу некаторага часу. Гэта можа быць сканфігуравана з захаджалым default_email_digest_frequency сайта, які па змаўчанні 7 дзён.
4,6. Якая версія дыскурсе я павінен выкарыстоўваць для імпарту?
Рэкамендуецца заўсёды выкарыстоўваць тэсты абыдзены ці бэта-канал дыскурсе для імпарту, так як скрыпт імпарту з'яўляецца пастаянна ўдасканальваюцца , Такім чынам, пераканайцеся, што значэнне версіі устанаўліваецца адпаведным чынам у канфігурацыйных файлах app.yml і import.yml. Усё павінна быць добра, калі вы вынікалі афіцыйнае кіраўніцтва па ўстаноўцы ,
4,7. Я ўключыў імпарт пароляў. Чаму мае карыстальнікі не могуць увайсці ў сістэму са сваімі старымі паролямі?
Пераканайцеся, што вы ўключылі migratepassword убудова у app.yml, вынікаючы How-To для ўстаноўкі убудоў , Акрамя таго, карыстальнікі не змогуць увайсці ў сістэму са сваім старым паролем, калі гэта лічыцца небяспечным. Па змаўчанні Дыскурс патрабуе мінімальную даўжыню пароля 10 сімвалаў (для адмінаў гэта 15) і пароль не павінен быць на спіс распаўсюджаных пароляў , Але карыстальнікі заўсёды могуць аднавіць свой пароль, націснуўшы на «Я забыў свой пароль» спасылку ў дыялогавым акне ўваходу ў сістэму або непасрэдна наведаўшы https://discourse.example.com/password-reset
4.8. Імпарт быў паспяховым, але спіс карыстальнікаў пусты. Што не так?
Спіс карыстальнікаў, не будуць адлюстроўвацца адразу. Яно спараджаецца фонавая задача, якая выконваецца з дапамогай Sidekiq. Вы, верагодна, прыйдзецца чакаць, пакуль усё пост-апрацоўка імпартаваных дадзеных не будзе завершана.
4.9. У мяне ёсць уласныя смайлікі ў маім форуме. Завозяць яны?
Так. Вы можаце супаставіць іх Emojis ў файле налад, у адваротным выпадку яны будуць імпартуюцца ў выглядзе малюнкаў. Усе смайлікі па змаўчанні (за выключэннем і
) Ужо ёсць адлюстраванне Emoji.
Ці будзе скрыпт імпарту па-ранейшаму працаваць?
4.2. Чаму працэс імпарту так павольна?
4.4. Ці магу я працаваць на аснове імпарту Docker на маім настольным кампутары або прамежкавы сервер?
5. Перадае Ці скрыпт электронныя лісты падчас імпарту?
6. Якая версія дыскурсе я павінен выкарыстоўваць для імпарту?
Што не так?
Завозяць яны?
Такім чынам, вы выявілі Дыскурс і хочаце ведаць, як перайсці ад існуючага phpBB3 форуму?
Ці будзе скрыпт імпарту па-ранейшаму працаваць?