Custom Image
    • PDF

    Custom Image

    • PDF

    Article Summary

    VPC環境で利用できます。

    ユーザーイメージベースでアクションを作成し、実行できます。基本提供されるランタイムでライブラリとイメージレイヤーを追加でき、複数のアクションで共通して使用する設定を共通イメージに構成して使用できます。

    参考
    • イメージ Pull時間はアクション実行時間に含まれません。
    • Custom Imageのランタイムは VPCプラットフォームのみサポートします。
    • linux/amd64イメージのみサポートします。

    Dockerfile作成

    Dockerfileの作成時、次の事項を必ず含む必要があり、含まれていない場合はアクションが正常に動作しません。

    1. FROMに Cloud Functionsで提供する Baseイメージを使用
    2. Baseイメージと同じ WORKDIR を設定
    3. Baseイメージと同じ ENTRYPOINT または CMD を設定

    ランタイム別 Baseイメージ

    ランタイムイメージパスWORKDIRENTRYPOINTCMDBase OS
    python:3.7cloudfunctions.kr.ncr.ntruss.com/cloudfunctions-python-3.7:[TAG]/["/bin/proxy"]-Rocky Linux 8.7
    nodejs:16cloudfunctions.kr.ncr.ntruss.com/cloudfunctions-nodejs-16:[TAG]/nodejsAction-node --expose-gc app.jsRocky Linux 8.7

    イメージ Build/Push

    作成した Dockerfileでイメージをビルドし、NAVER Cloud Container Registryにイメージを Pushします。
    イメージは Container Registryパスを含む必要があります。

    イメージ Build

    docker build . -t <イメージ>
    

    イメージ Push

    Container Registryにイメージを Pushするには Container Registryにログインします。詳細は、Container Registryご利用ガイドをご参照ください。

    docker login -u <NCLOUD_ACCESS_KEY> <レジストリ名>.<リージョン>.ncr.ntruss.com
    
    Password: <NCLOUD_SECRET_KEY>
    
    docker push <イメージ>
    

    ユースケース

    • Dockerfile
    FROM cloudfunctions.kr.ncr.ntruss.com/cloudfunctions-python-3.7:latest
    
    #必要ライブラリのインストール
    RUN dnf -y update && dnf -y install httpd
    RUN pip install boto3
    
    WORKDIR /
    
    ENTRYPOINT ["/bin/proxy"]
    
    • Build
    docker build . -t my-registry.kr.ncr.ntruss.com/custom-python:1.0.0
    
    • Push
    docker login -u *** my-registry.kr.ncr.ntruss.com
    password: ****
    
    docker push my-registry.kr.ncr.ntruss.com/custom-python:1.0.0
    

    Custom Imageアクション作成

    Custom Imageアクションを作成するにはランタイムで custom image を選択します。
    Container Registryイメージ選択 で NAVER Cloud Container Registryにあるイメージを選択するか、使用するイメージのパスを直接入力できます。

    注意
    • アクションで設定したイメージが Overwriteされても従来のアクションには反映されません。アクション変更でイメージを再選択して保存すると、新しいイメージが適用されます。
    • アクションで設定したイメージが削除される場合、正常にアクション実行が動作しない場合があります。

    cloudfunctions-example-customimages_01.png

    Container Registryイメージ選択

    次の手順に従って使用するイメージを選択します。
    [完了] ボタンをクリックすると、使用可否を自動で検証し、圧縮サイズが 800MBを超えるイメージは使用できません。

    • レジストリ選択
      cloudfunctions-example-customimages_02.png

    • イメージ選択
      cloudfunctions-example-customimages_03.png

    • タグ選択
      cloudfunctions-example-customimages_04.png

    Container Registryイメージパス入力

    使用するイメージのパスを直接入力できます。イメージパスの形式は 「<レジストリ>/<イメージ>:<タグ>」です。タグを省略すると、latestが自動入力されます。

    パス検証

    入力したパスのイメージの使用可否を検証します。検証条件は次の通りです。

    • イメージの圧縮サイズ800MB以下
    • Cloud Functionsで提供する Baseイメージを使用

    イメージ Packs

    Cloud Functionsでは以下のような特化したイメージを提供し、Custom Imageランタイムで使用できます。提供されるイメージは Baseイメージとしても使用できます。

    イメージ説明パスBaseランタイム
    Headless Chrome PuppeteerHeadless ChromePuppeteerを使用できる Node.js環境を提供します。韓国: cloudfunctions.kr.ncr.ntruss.com/headless-chrome-puppeteer:[TAG]
    シンガポール: cloudfunctions.sg.ncr.ntruss.com/headless-chrome-puppeteer:[TAG]
    日本: cloudfunctions.jpn.ncr.naverncp.com/headless-chrome-puppeteer:[TAG]
    nodejs:16

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.