Docker Compose 構建(開發者教程)
什麼是Docker?
Docker 是一個開源平台,透過容器化簡化了開發、部署和運行應用程式的過程。 容器是超輕量、可攜帶的單位,將應用程式及其依賴項打包在一起,實現從開發者本地系統到生產伺服器的跨環境一致執行。 與傳統的虛擬機不同,容器利用主機操作系統的內核,增加速度和效率。

Docker 通過 Docker 映像提供虛擬化模板,用於建立和管理容器集。 它包括 Docker Hub,一種容器映像儲存庫形式。 這項技術的吸引力在於其可擴展性、可攜帶性和效率,使其在DevOps和以雲為中心的開發工作流程中頗受歡迎。
Docker 如何運作?
- Docker Daemon 監聽 Docker Client 的請求,這些請求可能包括
docker pull或docker run。 - Docker Daemon 負責建立、管理和監控容器。 它還從註冊表(如 Docker Hub)中檢索所需的 Docker 映像。
- 使用下載的映像,守護程式建立了一個隔離的容器,實際上是應用程式的運行實例。
- 容器共享主機機器的操作系統內核,但彼此隔離,讓軟體可以在一個獨特的環境中與其依賴項一同運行。
+--------------------+
| Docker Client |
| (CLI/API) |
+--------------------+
|
v
+--------------------+ +---------------------+
| Docker Daemon | --------> | Docker Registry |
| (manages resources| | (stores images) |
| & runs containers)| +---------------------+
+--------------------+
|
v
+---------------------+
| Container |
| (App Instance) |
+---------------------+
|
v
+---------------------+
| Docker Image |
| (App Blueprint) |
+---------------------+什麼是 Docker Compose?
Docker Compose 提供了一種簡單的方法來使用單一檔案:docker-compose.yml 管理多容器 Docker 應用程式。 這個 YAML 檔案可配置多個服務,指定 Docker 映像、環境變數、網路和卷等方面。 您可以利用 Docker Compose 命令如 docker-compose up 或 docker-compose down 來單一行動管理應用程式中的所有容器。
+--------------------------+
| docker-compose.yml | (Configuration file)
+--------------------------+
|
v
+----------------+ +----------------+ +----------------+
| Service 1 | | Service 2 | | Service 3 |
| (e.g. web) | | (e.g. db) | | (e.g. cache) |
+----------------+ +----------------+ +----------------+
| | |
-----------------------------------------
Docker ApplicationDocker Compose 對像微服務一樣有大量容器實例的複雜應用程式尤其有利。 它在開發、測試和生產環境中被有效地使用。
使用 ASP.NET Core 建立新 React JS 應用程式
請遵循以下步驟來建立具有 ASP.NET Core 後端的新 Visual Studio React 應用程式,並新增 Docker 支援:
先決條件
- Visual Studio: 確保安裝了 Visual Studio 2022 或更新版本,並具有必要的工作負載:
- 網頁開發與 ASP.NET
- Node.js 開發(React)
- Docker 支援
- Docker Desktop: 必須安裝並運行中。
建立新專案
打開 Visual Studio 並從選單中選擇新專案。

在"建立新專案"對話框中搜尋"React和ASP.NET Core Web應用程式"並選擇它。 點選下一步。

提供專案名稱,選擇解決方案名稱並選擇保存位置。 點選下一步。

確保啟用了 Docker 支援。 選擇所需框架並點選建立。

專案建立後,右鍵點擊專案節點並選擇新增 > Docker 支援來新增 Docker 支援。

選擇容器名稱和型別,然後點選確定。

現在,透過將新建立的專案新增到 Docker 容器,Docker Compose 命令可以運行它。 以下是來自 React JS 客戶端程式碼的範例輸出。

以下是從 Docker 容器中執行的 API 伺服器端程式碼。

IronSecureDoc
IronSecureDoc 讓開發者可以有效地嵌入安全文件處理到容器化應用程式中。 使用 Docker 的支援,將您的 ASP.NET Core 應用程式與 IronSecureDoc 進行封裝,促進無縫的部署和擴展。 構建一個 Dockerfile 以將 IronSecureDoc 與您的 ASP.NET Core 應用程式整合,並包含必要的腳本或配置。

此外,docker-compose.yml 檔案可以概述服務依賴和環境變數,以便於存取,有助於在不同部署設置中高效處理文件安全任務。 確保安裝和配置 IronSecureDoc(如 Docker)對於提供文件加密和修訂等功能至關重要。
安裝和運行 IronSecureDoc
使用以下命令檢索 IronSecureDoc Docker 映像:
docker pull ironsoftwareofficial/ironsecuredocdocker pull ironsoftwareofficial/ironsecuredoc
拉取映像後,使用以下命令在新容器中啟動 IronSecureDoc:
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latestdocker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
在 Docker 容器中使用 IronSecureDoc
一旦安裝並在 Docker 中運行,IronSecureDoc 的 REST API 允許文件操作,如修訂、認證和加密。 有關 API 端點的更多資訊,請查看文件。
要加密文件,請向 IronSecureDoc API 發送 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'此命令將文件提交給 IronSecureDoc 進行加密。
結論
與 IronSecureDoc 結合使用 Docker Compose 大大提高了需要安全文件處理的應用程式的效率和可靠性。 Docker Compose 在流暢依賴和服務協調方面有效管理多容器應用程式,其中包括 IronSecureDoc,確保開發環境一致性,簡化配置並提升可擴展性。
在此設置中,開發者可以充分利用文件安全功能,如加密和修訂,在容器化框架中。 總而言之,將 Docker Compose 與 IronSecureDoc 結合使用,豐富了開發過程,提供了一種在現代應用程式中處理敏感文件的安全高效方法。 有關 IronSecureDoc 授權的資訊,請存取此頁面。 點擊這裡探索更多 Iron Software 產品。
常見問題
什麼是 Docker,它如何促進應用部署?
Docker 是一個開源平台,透過使用容器簡化應用程式開發和部署。容器是輕量且可攜帶的單元,包裝了應用程式及其所有的依賴,確保在各種環境中的一致執行。
Docker Compose 如何在管理複雜應用上提供幫助?
Docker Compose 是管理多容器 Docker 應用程式的工具,使用一個 `docker-compose.yml` 文件。它簡化了服務、圖像、網路和卷的配置與協調,是管理像微服務這樣的複雜應用的理想選擇。
using Docker 在 Visual Studio 中如何建立一個具有 ASP.NET Core 的 React JS 應用程式?
要在 Visual Studio 中使用 Docker 建立具有 ASP.NET Core 的 React JS 應用程式,請確保安裝了 Visual Studio 2022 或更高版本及必要的負荷和 Docker Desktop。建立項目,新增 Docker 支持,並使用 Docker Compose 命令管理應用程式。
IronSecureDoc 如何與 Docker 整合以進行安全的文件處理?
IronSecureDoc 可以透過拉取其 Docker 圖像並在容器中運行來與 Docker 整合。此設置允許通過其 REST API 執行像加密和遮蔽這樣的安全文件處理操作,從而增強容器化應用的安全性。
using Docker Compose 和 IronSecureDoc 進行文件處理有哪些好處?
將 Docker Compose 與 IronSecureDoc 整合提高了應用程式效率和可靠性,通過在容器化環境中管理依賴和服務,確保安全且可擴展的文件處理,對於需要強大文件安全的應用程式至關重要。
如何在現有的 Visual Studio 項目中新增 Docker 支持?
要在現有的 Visual Studio 項目中新增 Docker 支持,請右鍵點擊項目節點,選擇新增 > Docker 支持,並選擇適當的容器選項。這樣可以將 Docker 功能整合到您的項目中,允許容器化開發。
在 Docker 容器中運行 IronSecureDoc 的過程是什麼?
要在 Docker 容器中運行 IronSecureDoc,首先使用 `docker pull` 命令獲取圖像,然後執行 `docker container run` 命令,配置必要的環境變數,如授權金鑰和端口。此設置有助於在容器中進行安全的文件處理。
如何在 Docker 環境中使用 IronSecureDoc 加密文件?
您可以通過發送 POST 請求到 IronSecureDoc 的 API 來加密文件。使用 `curl` 命令上傳文件,指定本地文件路徑和加密參數。此操作在 Docker 容器中保護文件。








