1. 程式人生 > >在滴滴雲 DC2 上部署 Manifold 文字收集與閱讀平臺

在滴滴雲 DC2 上部署 Manifold 文字收集與閱讀平臺

簡介

Manifold 是一個開源 Web 應用程式,能夠允許使用者釋出基於 Web 的書籍以及其他基於文字的媒體,以便使用者自由閱讀並能為這些文字添加註釋。Manifold 可以用於開放式訪問(OA)材料和開放式教育資源(OER),可以整合到教室、編寫訓練營、研討會、圖書館或其他您新網通過協作閱讀交流知識的場景。

Manifold 由 Mellon 基金會贊助,最初是以是以學術專著為基礎製作,但可以作為多種出版物(期刊、小冊子、收藏品)的收集、組織、閱讀和註釋平臺。需要了解 Manifold 書籍的事例,您可以檢視 Manifold 版本的免費電子書 How to Code in Python 3

在本教程中,我們將在伺服器上配置 Manifold 並向安裝應用中新增一個文字。

準備

開始之前,應該具備以下條件:

  1. Ubuntu 16.04 伺服器,至少有 1 個 CPU,最好是 8 GB RAM(最小6 GB),這裡採用 4 核 8G 配置的滴滴雲 DC2 主機。
  2. 具有 sudo 許可權的非 root 使用者。

注意:

出於安全性和穩定性的原因,Manifold 的開發人員建議不要嘗試在共享託管環境中安裝 Manifold。Manifold 由許多不同的服務組成,每個服務都需要 RAM 才能正常執行。在記憶體小於 6GB 的小型 VM 上,您可能需要啟用交換記憶體或冒著消耗所有可用記憶體的風險。

如果您當前未使用域名進行設定,則可以手動在/etc/manifold/manifold.rb 中設定主機名並重新配置應用程式。重新配置將在下面討論。

有了這些先決條件,您就可以開始學習本教程了。

第1步 - 下載並安裝 Manifold Package

我們將為 Ubuntu 16.04 下載 Manifold。

首先,進入臨時目錄下載軟體包,因為軟體包我們以後是可以刪除的。

cd /tmp

接下來,使用 curl 帶有 -O 標誌的命令將輸出寫入本地檔案。這會將軟體包下載到我們的伺服器。

curl -O https://storage.googleapis.com/manifold-dist/ubuntu16/manifold_2.1.1-1_amd64.deb

第2步 - 安裝該軟體包

sudo dpkg -i manifold_2.1.1-1_amd64.deb

執行此命令時,您應該收到包含以下行的輸出:

Output
...
Manifold Scholarship


manifold: Thank you for installing Manifold!
...

收到這些資訊後,您可以繼續下一步操作。

第3步 - 配置 Manifold

如果您已在此伺服器上設定了完全限定的域名,則可能不需要進行更多配置。如果收到與您域名匹配的以下輸出,則會出現這種情況:

Output
...
manifold: Manifold should be reachable at http://your-manifold-url
...

但是,如果您現在使用伺服器的 IP 地址,或者上面的輸出與您的 URL 不匹配,則可以將 Manifold 配置為指向正確的位置。

建立了一個檔案 /etc/manifold/manifold.rb,您將使用該檔案配置和管理包含 Manifold 的各種服務。

在首選文字編輯器中開啟此檔案(我們將使用 nano)。

sudo vim /etc/manifold/manifold.rb

在此檔案中,查詢檔案 external_url 頂部附近的設定。將其設定為伺服器的 IP 地址或 Manifold 安裝的域名。

...
## Manifold URL
##! URL on which Manifold will be reachable.
##! For more details on configuring external_url see:
external_url 'http://your-IP-or-your-URL'

如果您的網站是 example.com,您可設定為如下內容:

external_url 'http://example.com'`

本教程中主機的外網 IP 是 192.0.2.0,將如下所示:

external_url 'http://192.0.2.0'

現在,在 vim 的準備模式中輸入 :wq 儲存並退出該檔案。

此時,您需要使用以下命令重新配置 Manifold。

sudo /usr/bin/manifold-ctl reconfigure

Manifold 應用程式現在將實現此檔案中所做的更改,重新生成新設定和配置檔案。一旦收到類似於以下內容的輸出,表明此過程已完成:

Output
Chef Client finished, 262/347 resources updated in 51 seconds
manifold Reconfigured!

您現在可以訪問伺服器的 URL 或 IP 地址,並能夠看到一個空的 Manifold 主頁。

若需使用 Manifold 應用程式,您可以繼續執行下一步。

第4步 - 訪問後端

儲存在 Manifold 中的所有內容(包括文字,專案,作者,資源和使用者)都需要使用 Manifold 的後端 Web 介面進行管理。

要訪問後端,您需要在伺服器上建立管理使用者。通過 manifold-api 可執行檔案呼叫命令來建立此管理使用者。

要使用此命令,您需要輸入自己的詳細資訊,包括您的郵件地址、密碼、您的名字和姓氏,格式如下:

sudo manifold-api manifold:user:create:admin["[email protected]","password","first_name","lastName"]

在上面的命令中替換您自己的資訊,如下例所示:

sudo manifold-api manifold:user:create:admin["[email protected]","Password1oo!","duke","wendi"]

執行該命令後,您將收到類似於以下內容的輸出:

Output
INFO: A User has been created. Its ID is 4a38dbb4-212b-4387-ad32-5e014459cd11

建立此使用者後,返回瀏覽器並單擊 Manifold 右上角的頭像圖示進行登入。

輸入使用者名稱密碼成功登入後,您將在標題中看到一個 ENTER ADMIN MODE 按鈕。單擊此按鈕即可訪問 Manifold 的後端。

第5步 - 建立專案

進入後端之後,如果要建立一個新的專案,點選 Project 頂部選單欄上,然後在新增新專案按鈕。

系統將提示您輸入標題和可選的字幕和說明。出於演示目的,您可以上傳免費電子書 How to Code in Python 3,此處專案命名相同。

輸入該資訊後,您可以儲存專案後繼續。

建立新專案時,它會自動儲存為草稿模式。作為草稿的專案僅對登入的管理使用者可見。使用專案詳細資訊檢視左側的選項卡,您可以新增縮圖,為面向公眾的專案頁面上傳英雄影象或橫幅,如以及新增元資料和其他資源。

由於 Manifold 為您提供了文字儲存庫,因此可能要做的第一件事就是新增文字,將文字檔案提取到專案中,單擊 TEXT 選項卡。

可以將 EPUB,Markdown 和 HTML 檔案或 Google 文件上傳到 Manifold。如果您要使用 Google 文件,則需要執行一些其他配置。出於演示目的,我們將把 Python 3 EPUB 中的 How To Code 上傳到我們的 Manifold 安裝中。您可以使用以下連結直接連結到 eBook 的 EPUB:https://assets.digitalocean.com/books/python/how-to-code-in-python.epub

要引入文字,請單擊 ADD A NEW TEXT 按鈕開始引入。

在演示中,我們將使用上面的連結,但您也可以將檔案上傳或拖動到雲圖標上,從本地硬碟上傳檔案。暫存檔案後,可以點選 Continue。該應用程式將連結到 Manifold websocket,您現在可以單擊 Ingest 開始上傳過程。

根據託管環境和您上傳的檔案大小,Manifold 可能需要幾分鐘才能獲取文字。您可以看到一個日誌,顯示攝取的狀態輸出。完成此過程後,可以在對話方塊底部看到 Complete 按鈕。

點選 Complete 按鈕後,將返回到您的專案。

您可以看到在 UNCATEGORIZED 下添加了您的文字。使用綠色的向上箭頭將檔案移動到 PUBLISHED 狀態。

單擊 PREVIEW 可檢視當前專案。在預覽頁面,您可以在標題下方看到 START READING 按鈕。

按下此按鈕後,文字將在 Manifold 閱讀器中開啟。

如果對專案感到滿意,可以從管理介面的 Genera 選項卡中切換可見性關閉“草稿模式”。

現在,該專案就可以在您的主頁上找到了。

此時,您可以繼續處理專案以新增元資料,影象等。

但是請注意,如果您的域名與您的 Manifold 頁面相關聯,並且希望使用者提供檔案,最佳做法是保護您的網站並通過 HTTPS 協議訪問它。

最後

恭喜您完成了 Manifold 安裝並建立了您的第一個專案!您現在應該已經在 Ubuntu 16.04 伺服器上安裝了 Manifold。如果一切按計劃進行,那麼您就可以構建自己的專案並在 Manifold 上釋出自己的文字了。

要了解更多有關 Manifold 的專案開發以及使用它的更多資訊,請檢視以下連結:

Manifold 的 GitHub 儲存庫

閱讀 Building Manifold Development Blog

加入 Manifold Community Slack 頻道

訪問 Manifold 網站獲取官方文件