從公用登錄中的映像檔部署應用程式工作負載

使用 Code Engine 部署您的應用程式。 您可以 從主控台CLI 建立應用程式。

從主控台部署應用程式

使用 Code Engine 控制台,從公共註冊表部署一個無需憑證的映像所對應的應用程式。

此範例參照 IBM Cloud® Container Registry 中的公用 icr.io/codeengine/helloworld 映像檔。 或者,您也可以在公用 Docker Hub 中參照映像檔,或在專用登錄中參照 映像檔

  1. 開啟 Code Engine 主控台。
  2. 選擇「開始建立」。
  3. 請從可用專案清單中選取一個專案。 您也可以 建立新的。 您必須具有選取的專案才能部署應用程式。
  4. 選擇應用程式
  5. 請輸入應用程式的名稱。 請為您的應用程式選取一個在該專案內具有唯一性的名稱。
  6. 指定應用程式的容器映像檔,例如 icr.io/codeengine/helloworld。 如果您有自己的原始碼要轉換為應用程式的容器映像檔,請參閱 規劃建置。 如需用於此範例之程式碼的相關資訊,請參閱 helloworld
  7. 修改端點或執行時期設定的任何預設值。 如需這些選項的相關資訊,請參閱 應用程式端點可見性的選項部署應用程式的選項
  8. 按一下建立
  9. 應用程式狀態變更為 備妥之後,您可以測試應用程式。 按一下 測試應用程式,然後在「測試應用程式」窗格中按一下 傳送要求。 若要在網頁中開啟應用程式,請按一下應用程式 URL

現在您已部署應用程式,您可以檢視應用程式修訂及任何執行中實例的相關資訊,以及配置詳細資料。

使用 CLI 部署應用程式

若要使用 CLI 來建立及部署應用程式,請使用 app create 指令。 這個指令需要名稱和映像檔,也容許其他選用引數。 如需選項的完整清單,請參閱 ibmcloud ce app create 指令。

開始之前

下列 application create 指令會建立並部署名為 myapp 的應用程式,並使用容器映像檔 icr.io/codeengine/hello

ibmcloud ce application create --name myapp --image icr.io/codeengine/hello

輸出範例

Creating application 'myapp'...
OK
[...]
Run 'ibmcloud ce application get -n myapp' to check the application status.
OK
https://myapp.4idmmq6xpss.us-south.codeengine.appdomain.cloud

下表彙總在此範例中與 app create 指令搭配使用的選項。 如需指令及其選項的相關資訊,請參閱 ibmcloud ce app create 指令。

命令說明
選項 說明
--name 應用程式的名稱。 請使用專案內唯一的名稱。 此值是必要項目。
-名稱必須以小寫字母開頭。
-名稱必須以小寫英數字元結尾。
-名稱必須是 55 個字元或更少,且可以包含字母、數字及連字號 (-)。
--image 用於此應用程式的映像檔名稱。 這是必要值。 格式為 REGISTRY/NAMESPACE/REPOSITORY:TAG,其中 REGISTRYTAG 皆為可選項目。 若未指定 TAG,預設值為 latest。 對於 Docker Hub中的映像檔,您可以使用 NAMESPACE/REPOSITORY 來指定映像檔,因為 Registry 的預設值是 docker.io。 若為其他登錄,請使用 REGISTRY/NAMESPACE/REPOSITORYREGISTRY/NAMESPACE/REPOSITORY:TAG

下一步

部署應用程式之後,您可以使用下列 任何 方法來 更新已部署的應用程式 及其參照的程式碼,與您建立或先前更新應用程式的方式無關:

  • 如果您具有容器映像檔,則根據 Open Container Initiative(OCI)標準,您只需要提供映像檔的參照,這會在您部署應用程式時指向容器登錄的位置。 您可以使用 公用登錄專用登錄 中的映像檔來部署應用程式。

    如果您已使用 app create 指令建立應用程式,並指定 --build-source 選項以從本端或儲存庫來源建置容器映像檔,且您想要將應用程式變更為指向不同的容器映像檔,則必須先從應用程式移除建置的關聯。 例如,執行 ibmcloud ce application update -n APP_NAME --build-clear。 從應用程式移除建置的關聯之後,您可以更新應用程式以參照不同的映像檔。

  • 如果您是從位於 Git 儲存庫中的原始碼開始,則可以選擇讓 Code Engine 負責從您的來源建置映像檔,並使用 單一 作業來部署應用程式。 在此實務範例中,Code Engine 會將映像檔上傳至 IBM Cloud® Container Registry。 若要進一步瞭解,請參閱 從儲存庫原始碼部署應用程式。 如果您想要進一步控制映像檔的建置,則可以選擇在部署應用程式之前使用 Code Engine 建置映像檔

  • 如果您是從位於本端工作站上的原始碼開始,則可以選擇讓 Code Engine 負責從來源建置映像檔,並使用 單一 CLI 指令來部署應用程式。 在此實務範例中,Code Engine 會將映像檔上傳至 IBM Cloud® Container Registry。 若要進一步瞭解,請參閱 使用 CLI 從本端原始碼部署應用程式。 如果您想要進一步控制映像檔的建置,則可以選擇在部署應用程式之前使用 Code Engine 建置映像檔

    例如,您可以選擇讓 Code Engine 處理本端來源的建置,同時發展應用程式的來源開發。 然後,在映像檔成熟之後,您可以更新已部署的應用程式,以參照您想要的特定映像檔。 您可以視需要重複此程序。

當您部署更新的應用程式時,除非為映像檔指定標籤,否則會下載並部署所參照容器映像檔的最新版本。 如果為映像檔指定了標籤,則會將已標記的映像檔用於部署。

尋找更多程式碼範例? 請參閱 「IBM Cloud Code Engine」GitHub 儲存庫中的範例