跳至頁尾內容
USING IRONSECUREDOC

Nextcloud Docker Compose(開發者如何工作)

什麼是Docker?

Docker 是一個免費、開源的框架,用於自動化輕量級容器內應用程式的部署和擴展。 它將應用程式程式碼與所有依賴項,如程式庫、工具和配置,一起打包成一個包,並可在任何環境中統一運行,不論是開發者的筆記本、測試伺服器,還是實際生產的雲伺服器。

容器與傳統的虛擬機器不同。 容器共享主系統的[操作系統核心](https://en.wikipedia.org/wiki/Kernel_(operating_system),因此啟動速度更快且更有效率

本質上,Docker通過Docker映像定義了應用程式及其環境,這些映像是建立容器的模板。 編排工具包括用于多容器應用程式的Docker Compose,Docker Hub是共享映像的中央儲存庫。

什麼是Nextcloud?

Nextcloud Docker Compose示範如何使用Docker容器來提供一個獨立、可攜帶、可擴展的環境,供自託管的雲儲存應用程式Nextcloud使用。 這種受歡迎的解決方案支持文件儲存和共享、日曆、聯絡人等,同時允許對資料進行全面控制。

因為像PHP和Web伺服器這樣的依賴項被包含在一個容器中,讓設置變得更加簡單; Docker使安裝和管理Nextcloud更加容易。 這也保證所有環境中的運行是一致的,可以順利地部署到不同的系統上。

在Docker中運行Nextcloud既簡便,又具有模組化且可擴展。 例如,在使用Docker Compose的多容器設置中,您可以為Nextcloud的資料庫(例如MySQL或MariaDB)、快取(例如Redis)以及Nextcloud應用程式本身運行單獨的容器。 這增加了靈活性,使Nextcloud實例的管理和擴展更加輕鬆。

Nextcloud的功能

Nextcloud Docker 提供了以下主要的便捷部署和管理特性:

  • 簡化設置:由於Docker可以在單個容器中攜帶所有依賴項,例如PHP和Web伺服器,安裝變得更加簡單,無需麻煩地安裝和配置。
  • 可攜性: Docker容器可以在不同的環境和節點之間移植,防止在伺服器或雲環境之間移動您的Nextcloud實例時出現相容性問題。
  • 隔離性:容器與主系統和其他容器隔離,確保依賴項和配置不會與同一台機器上的其他服務發生衝突。
  • 可擴展性:通過使用Docker Compose,您可以輕鬆地通過部署額外的容器為資料庫、快取或負載平衡服務來提升Nextcloud的能力,以達到在大規模環境中的卓越性能。
  • 持久儲存:通過將儲存卷外掛到容器上,資料即使在容器重新啟動或升級後也能持續存在。
  • 易於升級:通過從Docker拉取新的映像版本並重啟容器來無縫升級Nextcloud或其依賴項; 不需要進行混亂的遷移。
  • 安全性: Docker固有的隔離性將攻擊面最小化,通過將Nextcloud的環境與其主機和其他應用程式分開。

所有這些功能使Nextcloud Docker成為主機自己私有雲基礎設施的高效解決方案。

安裝Nextcloud

前置準備

  • 支援WSL 2的Windows 10/11(Pro、Enterprise或Education)。
  • 在Windows上安裝並運行Docker Desktop。
  • 對使用終端或命令提示符有基本的了解。

拉取Nextcloud Docker映像

通過在終端中執行以下命令,從Docker Hub中拉取Nextcloud官方Docker映像:

docker pull nextcloud
docker pull nextcloud
SHELL

或者,打開Docker應用程式,在搜索框中搜索"nextcloud"。

要運行Nextcloud安裝,請在命令提示符中使用以下命令:

docker run -d -p 8080:80 nextcloud
docker run -d -p 8080:80 nextcloud
SHELL

此命令將下載Nextcloud映像並建立一個新容器,端口8080將被暴露。

為資料庫設置MariaDB

Nextcloud需要一個資料庫來儲存其資料。 我們可以使用MariaDB作為MySQL的替代品。

首先,拉取MariaDB映像:

docker pull mariadb
docker pull mariadb
SHELL

使用此命令建立MariaDB容器:

docker run -d \
  --name nextcloud-db \
  -e MYSQL_ROOT_PASSWORD=your_root_password \
  -e MYSQL_DATABASE=nextcloud \
  -e MYSQL_USER=nextcloud_user \
  -e MYSQL_PASSWORD=your_password \
  mariadb
docker run -d \
  --name nextcloud-db \
  -e MYSQL_ROOT_PASSWORD=your_root_password \
  -e MYSQL_DATABASE=nextcloud \
  -e MYSQL_USER=nextcloud_user \
  -e MYSQL_PASSWORD=your_password \
  mariadb
SHELL

用您選擇的強密碼替代nextcloud-db MariaDB容器,資料庫名為nextcloud_user

Nextcloud網頁介面

打開網頁瀏覽器並輸入伺服器的IP地址或域名,即可存取Nextcloud安裝位置。 對於本地安裝,使用:

http://localhost:8080/

設置管理帳戶

進入設置頁面後,建立一個管理使用者。 Nextcloud CLI也可用於在需要時進行配置和設置管理。

輸入所需資訊後,配置資料庫連接:

  1. 資料庫主機:對於本地資料庫請使用nextcloud-db)。
  2. 資料庫使用者名和密碼:在MariaDB設置過程中提供的。
  3. 資料庫名稱:此例中使用nextcloud

填寫所有必要的詳細資訊然後點擊"完成設置"以完成安裝。

T>## 什麼是IronSecureDoc?

IronSecureDoc 是一款用於加密、編輯和數位簽署敏感文件的文件安全工具。 它保護PDF,讓使用者能夠有效地控制個人資料和機密資訊。

安裝和運行IronSecureDoc

使用以下命令拉取IronSecureDoc Docker映像:

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

要運行IronSecureDoc容器,請使用:

docker container run --rm -p 8080:8080 \
  -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
  -e ENVIRONMENT=Development \
  -e HTTP_PORTS=8080 \
  ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 \
  -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
  -e ENVIRONMENT=Development \
  -e HTTP_PORTS=8080 \
  ironsoftwareofficial/ironsecuredoc:latest
SHELL

用您的實際授權金鑰替換<IRONSECUREDOC_LICENSE_KEY>。 此命令啟動IronSecureDoc容器,並將其暴露在端口8080上。

在 Docker 容器中使用 IronSecureDoc

安裝後可以通過其REST API存取IronSecureDoc。 文件和API端點可以在http://localhost:8080/swagger/index.html找到。

要提交文件進行加密,請使用curl提交POST請求:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

此操作將文件轉發至IronSecureDoc,並應用適當的加密。

結論

Nextcloud和IronSecureDoc在安全資料處理方面有不同的用途。 Nextcloud是一個強大的自托管雲平台,用於管理和共享資料,通過Docker提供完整的隱私控制和擴展性。 IronSecureDoc提供先進的文件加密,確保敏感文件的安全處理。 與Docker整合使這兩種解決方案適合用於可擴展、安全的環境。

點擊這裡了解有關IronSecureDoc授權的更多資訊。 有關Iron Software提供的產品線的更多資訊,請查看這裡

常見問題

Docker Compose如何簡化Nextcloud的部署?

Docker Compose允許您協調多容器應用程式,通過將所有依賴項打包到隔離的、可攜帶的和可擴展的容器中,簡化Nextcloud的部署。

使用Docker為Nextcloud的優點是什麼?

使用Docker為Nextcloud提供了簡化設置、增強可攜性、隔離性、可擴展性、持久儲存、易於升級和改進的安全性等優點。

如何使用Docker設置Nextcloud?

您可以通過命令docker pull nextcloud拉取官方Nextcloud Docker映像檔,然後使用命令docker run -d -p 8080:80 nextcloud運行它來設置Nextcloud。

Nextcloud的Docker設置涉及哪些組成部分?

Nextcloud的Docker設置通常涉及應用程式本身、資料庫和快取服務的單獨容器,並使用Docker Compose管理以確保模組化和可擴展性。

IronSecureDoc如何增強Nextcloud的資料安全性?

IronSecureDoc通過提供高級文件加密、編輯和數位簽名功能來增強Nextcloud的資料安全性,確保敏感文件在Docker環境中安全處理。

IronSecureDoc可以與Docker整合,以便Nextcloud的部署嗎?

是的,IronSecureDoc可以使用其Docker映像檔與Docker整合,以增強Nextcloud的部署。此整合允許通過其REST API在Docker化環境中安全地處理文件。

為何選擇像Nextcloud這樣的自託管解決方案,而不是雲提供商?

選擇像Nextcloud這樣的自託管解決方案提供了完整的隱私控制、資料主權以及根據特定組織需求定制環境的能力,同時利用Docker進行高效部署。

Docker在確保Nextcloud在不同環境中性能方面起到什麼作用?

Docker確保Nextcloud在不同環境中的一致性能,因為它將應用程式和所有依賴項封裝到一個容器中,從而防止衝突並簡化部署流程。

Docker和Nextcloud如何協同工作以提供可擴展的雲儲存解決方案?

Docker和Nextcloud通過利用容器高效管理和擴展應用程式來協同工作,允許隨著需求增長輕鬆新增資源和服務,同時保持資料完整性和安全性。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話