5.3. Source-to-Image での Builder イメージとしての使用状況

Go Toolset コンテナーイメージは、Source-to-Image(S2I) ビルダーイメージとして使用するために準備されます。

これを行うには、以下のビルド環境変数を設定します。

IMPORT_URL
この変数を、コードの場所を指定する URL に設定します。go get コマンド オプションのルールが適用されます。
INSTALL_URL

この変数を、ビルド時にアプリケーションのメイン実行可能ファイルを提供するパッケージの場所を指定する URL に設定します。go install コマンド オプションのルールが適用されます。

この変数は、メインパッケージの場所が IMPORT_URL 変数で指定された場所と同一である場合に省略できます。

例5.1 Source-to-Image を使用した Go アプリケーションイメージの構築

md2man パッケージを GitHub リポジトリーからビルドするには、以下を実行します。

$ s2i build -e IMPORT_URL='github.com/cpuguy83/go-md2man' -e INSTALL_URL='github.com/cpuguy83/go-md2man' git://github.com/cpuguy83/go-md2man  registry.access.redhat.com/devtools/go-toolset-rhel7 md2man-app

ローカルで利用可能なアプリケーションイメージ md2man-app は、go-toolset-1.11 コンテナーイメージを使用して GitHub のリポジトリーからビルドされます。

Go Toolset を S2I ビルダーイメージとしてフルに活用するには、変更した S2I assemble スクリプトを使用し、ビルドしている特定のアプリケーションをさらに調整してカスタムイメージをビルドします。

Source-to-Image を使用した Go Toolset の使用方法の詳細な説明は、本書の対象外です。Source-to-Image についての詳細は、OpenShift Container Platform 3.7 イメージ作成ガイド の第 4 章を参照してください。S2I の要件 および 使用 Red Hat Software Collections コンテナーイメージ第 2 章Source-to-Image (S2I) の使用