Hosting IronSecureDoc on Linux Using C

This article was translated from English: Does it need improvement?
Translated
View the article in English
IronSecureDoc on Docker

IronSecureDoc 是一個 Docker 容器,旨在透過簡單的 REST API 提供強大的 PDF 操作功能,無需網上 SaaS 服務的麻煩和額外負擔。 本指南將引導您完成在您的機器上託管 IronSecureDoc 的步驟,包括設置環境變數和使用 REST API 的基本範例。 要查看完整的 API,請瀏覽我們的 REST API 參考

docker pull ironsoftwareofficial/ironsecuredoc:latest
docker pull ironsoftwareofficial/ironsecuredoc:latest
SHELL

先決條件

警告Linux 上的 Docker Desktop 運行虛擬機 (VM),啟動時會建立並使用自定義的 docker context,desktop-linux

這意味著在安裝前部署在 Linux Docker 引擎上的映像和容器在 Linux 的 Docker Desktop 中不可用。

平台

逐步指南

1. 安裝 Docker Desktop

如果您尚未安裝 Docker Desktop,請依照以下步驟操作:

  1. 前往 Docker Desktop 下載頁面
  2. 下載適用於 Linux 的 Docker Desktop 安裝程式。
  3. 執行安裝程式並按照螢幕上的指示操作。
  4. 安裝完成後,啟動 Docker Desktop 並確保其正在運行。

2. 拉取" IronSecureDoc" Docker 映像

打開命令提示字元,從 Docker Hub 拉取最新的 IronSecureDoc 映像:

docker pull ironsoftwareofficial/ironsecuredoc:latest
docker pull ironsoftwareofficial/ironsecuredoc:latest
SHELL

3. 無證書運行容器

運行所需環境變數的 Docker 容器:

Swagger UI in Browser
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 授權金鑰替換 <IRONSECUREDOC_LICENSE_KEY>。 否則,企業功能將附加水印。

Swagger UI in Browser

)}]

4. 存取容器

容器運行後,您可以透過打開瀏覽器並導航至以下位置存取 IronSecureDoc:

http://localhost:8080/swagger/index.html
Swagger UI in Browser

您應該看到 IronSecureDoc 介面,表示您的容器已成功運行。

5. 使用證書運行 IronSecureDoc 容器

如果您需要使用證書運行容器,請按照以下步驟生成證書並配置本地主機:

  1. 生成證書

    dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p <CREDENTIAL_PLACEHOLDER>
    dotnet dev-certs https --trust
    dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p <CREDENTIAL_PLACEHOLDER>
    dotnet dev-certs https --trust
    SHELL

    用密碼替換 <CREDENTIAL_PLACEHOLDER>

  2. 運行 Docker 容器

    docker container run -d -p 8081:8081 -p 8080:8080 \
    -e HTTP_PORTS=8080 -e HTTPS_PORTS=8081 \
    -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
    -e ENVIRONMENT=Production \
    -v $HOME/.aspnet/https:/https:ro \
    -e CERTIFICATE_PATH=$HOME/.aspnet/https/ironsecuredoc.pfx \
    -e CERTIFICATE_PASSWORD=<CERTIFICATE_PASSWORD> \
    ironsoftwareofficial/ironsecuredoc:latest
    docker container run -d -p 8081:8081 -p 8080:8080 \
    -e HTTP_PORTS=8080 -e HTTPS_PORTS=8081 \
    -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
    -e ENVIRONMENT=Production \
    -v $HOME/.aspnet/https:/https:ro \
    -e CERTIFICATE_PATH=$HOME/.aspnet/https/ironsecuredoc.pfx \
    -e CERTIFICATE_PASSWORD=<CERTIFICATE_PASSWORD> \
    ironsoftwareofficial/ironsecuredoc:latest
    SHELL

    用您實際的 IronSecureDoc 授權金鑰和證書密碼分別替換 <IRONSECUREDOC_LICENSE_KEY><CERTIFICATE_PASSWORD>

6. 管理容器

您可以使用 Docker 命令管理正在運行的容器。 以下是一些有用的命令:

  • 停止容器

    docker stop <container_id>
    docker stop <container_id>
    SHELL
  • 啟動容器

    docker start <container_id>
    docker start <container_id>
    SHELL
  • 移除容器

    docker rm -f <container_id>
    docker rm -f <container_id>
    SHELL

用實際的容器 ID 或名稱替換 <container_id>

環境變數

可使用以下環境變數配置容器:

  • PDF_MAX_SIZE_MB (預設:30):設定 PDF 上傳的最大允許檔案大小,以 MB 為單位。
  • REQUEST_TIMEOUT_SECONDS (預設:5):設定 API 請求的超時時間,以秒為單位。 -1 的值允許請求無限運行。
  • ALLOWED_ORIGINS:透過指定允許的來源 URL 配置跨來源資源共享 (CORS)。 用逗號分隔多個 URL。 使用* 或 "all" 允許任何來源的請求。
  • HTTP_PORTS:定義容器暴露的 HTTP 埠。 這應匹配使用 -p 標誌的埠映射(例如,8080)。 用分號 (;) 分隔多個埠。
  • HTTPS_PORTS:定義容器暴露的 HTTPS 埠。 這應匹配使用 -p 標誌的埠映射(例如,8081)。 用分號 (;) 分隔多個埠。
  • IronSecureDoc_LicenseKey(必填):設定 IronSecureDoc 授權金鑰。 重要:不要公開分享此值。

基本範例:在文件中修訂文字

如需完整的 API 端點列表,請參考完整的 REST API 參考

修訂文字

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'words_to_redact="sensitiveWord"' \
   -F 'draw_black_box=true' \
   -F 'match_whole_word=true' \
   -F 'match_case=true'
curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'words_to_redact="sensitiveWord"' \
   -F 'draw_black_box=true' \
   -F 'match_whole_word=true' \
   -F 'match_case=true'
SHELL

用您想修訂的文章實際路徑替換 /path/to/your/document.pdf 和您想修訂的單詞替換 sensitiveWord

修訂正則表達式

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-regular-expression' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'regular_expression="[0-9]"' \
   -F 'draw_black_box=true'
curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-regular-expression' \
   -H 'accept: */*' \
   -H 'Content-Type: multipart/form-data' \
   -F 'pdf_file=@/path/to/your/document.pdf;type=application/pdf' \
   -F 'regular_expression="[0-9]"' \
   -F 'draw_black_box=true'
SHELL

用您想修訂的文章實際路徑替換 /path/to/your/document.pdf 和您想匹配和修訂的正則表達式替換 [0-9]

結論

您已成功在您的機器上託管 IronSecureDoc 並使用必要的環境變數進行了配置。 您還學會了如何使用 cURL 與 IronSecureDoc REST API 進行基本和高級操作。 如需進一步的配置和使用細節,請參考完整的 REST API 參考

常見問題

什麼是IronSecureDoc,它如何運作?

IronSecureDoc是一個Docker容器,提供強大的PDF操作功能,通過REST API實現,無需依賴SaaS服務即可保障離線文件安全。

在Linux伺服器上設置IronSecureDoc的要求是什麼?

要在Linux伺服器上設置IronSecureDoc,請確保您的Linux發行版(如Ubuntu、Debian、Fedora或Red Hat Enterprise Linux)已安裝Docker Desktop。

如何下載IronSecureDoc的Docker映像?

通過在終端執行命令:docker pull ironsoftwareofficial/ironsecuredoc:latest下載IronSecureDoc的Docker映像。

是否可以在沒有SSL證書的情況下運行IronSecureDoc容器?

是的,您可以通過使用命令:docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=-e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest在沒有SSL證書的情況下運行該容器。

如何在瀏覽器上存取IronSecureDoc介面?

啟動容器後,通過您的網頁瀏覽器存取http://localhost:8080/swagger/index.html來存取IronSecureDoc介面。

如何生成並信任IronSecureDoc的SSL證書?

通過以下命令生成SSL證書:dotnet dev-certs https -ep $HOME/.aspnet/https/ironsecuredoc.pfx -p,並使用dotnet dev-certs https --trust信任它。

在IronSecureDoc中可進行配置的環境變數有哪些?

在IronSecureDoc中,可配置的環境變數包括PDF_MAX_SIZE_MBREQUEST_TIMEOUT_SECONDSALLOWED_ORIGINSHTTP_PORTSHTTPS_PORTSIronSecureDoc_LicenseKey

如何使用IronSecureDoc在PDF中修正文字?

通過使用cURL命令修正PDF中的文字:curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text',提供必要的表單資料。

停止正在運行的IronSecureDoc Docker容器應使用什麼命令?

使用命令docker stop停止正在運行的Docker容器。

我在哪裡可以找到IronSecureDoc的API端點的完整列表?

完整的API端點列表可在IronSecureDoc網站的REST API參考中找到。

Curtis Chau
技術作家

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

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

準備開始了嗎?
版本: 2024.10 剛剛發布
Still Scrolling Icon

還在滾動嗎?

想要快速證明嗎?
運行一個樣本觀看您的PDF加密。