Linuxでのホスティング
IronSecureDocはDockerコンテナで、オンラインSaaSサービスのような手間やオーバーヘッドなしに、シンプルなREST APIを使った強力なPDF操作を提供するように設計されています。 このガイドでは、あなたのマシンでIronSecureDocをホストする手順について、環境変数の設定やREST APIの基本的な使用例を含めて説明します。 完全なAPIについては、REST APIリファレンスをご覧ください。
docker pull ironsoftwareofficial/ironsecuredoc:latest
前提条件
続行する前に
Linux上のDocker Desktopは、起動時にカスタムのdockerコンテキストdesktop-linux
を作成および使用する仮想マシン(VM)を実行します。
これは、Linux Docker Engine にデプロイされたイメージとコンテナ(インストール前)は、Docker Desktop for Linux では利用できないことを意味します。
プラットフォーム
- Ubuntu (x86_64 / amd64) - Docker Desktop ダウンロードリンク
- Debian (x86_64 / amd64) - Docker Desktop のダウンロードリンク
- Fedora (x86_64 / amd64) - Docker Desktop ダウンロードリンク
- Red Hat Enterprise Linux (x86_64 / amd64) - Docker Desktopのダウンロードリンク
ステップ・バイ・ステップ・ガイド
1.Dockerデスクトップをインストールする
まだDocker Desktopをインストールしていない場合は、以下の手順に従ってください:
-
Docker Desktop のダウンロードページに移動します。
-
Linux用のDocker Desktopインストーラをダウンロードする。
-
インストーラーを実行し、画面の指示に従ってください。
- インストール後、Docker Desktopを起動し、起動していることを確認する。
2.IronSecureDoc "Dockerイメージをプルする
コマンドプロンプトを開き、Docker Hubから最新のIronSecureDocイメージを取り出します:
docker pull ironsoftwareofficial/ironsecuredoc:latest
3.証明書なしでコンテナを実行する
必要な環境変数を指定してDockerコンテナを実行する:
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
試用版またはライセンスキーを適用して透かしを消す
[{t:(<IRONSECUREDOC_LICENSE_KEY>
を実際の IronSecureDoc ライセンスキーに置き換えてください。 そうでない場合は、Enterprise Featuresにウォーターマークが適用されます。
4.コンテナへのアクセス
コンテナが起動したら、ウェブブラウザを開いてIronSecureDocにアクセスする:
http://localhost:8080/swagger/index.html
IronSecureDocインターフェイスが表示され、コンテナが正常に実行されていることがわかるはずだ。
5.証明書付きIronSecureDocコンテナの実行
証明書を使用してコンテナを実行する必要がある場合は、以下の手順に従って証明書を生成し、ローカル・マシンを構成する:
- 証明書の生成
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\ironsecuredoc.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
<CREDENTIAL_PLACEHOLDER>
をパスワードに置き換えてください。
- 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 %USERPROFILE%\.aspnet\https:/https:ro -e CERTIFICATE_PATH=%USERPROFILE%\.aspnet\https\ironsecuredoc.pfx -e CERTIFICATE_PASSWORD=<CERTIFICATE_PASSWORD> ironsoftwareofficial/ironsecuredoc:latest
<IRONSECUREDOC_LICENSE_KEY>
と <CERTIFICATE_PASSWORD>
を、それぞれ実際の IronSecureDoc ライセンスキーと証明書パスワードに置き換えてください。
6.コンテナの管理
実行中のコンテナは、Dockerコマンドを使って管理できる。 便利なコマンドをいくつか紹介しよう:
- コンテナを停止する:
docker stop ironsecuredoc
- コンテナを開始する:
docker start ironsecuredoc
- コンテナを削除:
docker rm -f ironsecuredoc
環境変数
コンテナは、以下の環境変数を使って設定できる:
PDF_MAX_SIZE_MB
(デフォルト: 30): PDFアップロードの最大許可ファイルサイズをメガバイトで設定します。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'
/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'
/path/to/your/document.pdf
を、編集したいドキュメントの実際のパスに置き換え、[0-9]
を、一致させて編集したい正規表現に置き換えます。
結論
IronSecureDocのホスティングが完了し、必要な環境変数が設定されました。 また、基本的な操作と高度な操作の両方でcURLを使用してIronSecureDoc REST APIと対話する方法を学びました。 さらに構成および使用の詳細については、完全なREST API リファレンスを参照してください。