copyright | lastupdated | keywords | subcollection | ||
---|---|---|---|---|---|
|
2021-09-01 |
jobs in code engine, batch jobs in code engine, running jobs with code engine, creating jobs with code engine, images for jobs in code engine, jobs, job run, environment variables |
codeengine |
{:DomainName: data-hd-keyref="APPDomain"} {:DomainName: data-hd-keyref="DomainName"} {:android: data-hd-operatingsystem="android"} {:api: .ph data-hd-interface='api'} {:apikey: data-credential-placeholder='apikey'} {:app_key: data-hd-keyref="app_key"} {:app_name: data-hd-keyref="app_name"} {:app_secret: data-hd-keyref="app_secret"} {:app_url: data-hd-keyref="app_url"} {:audio: .audio} {:authenticated-content: .authenticated-content} {:beta: .beta} {:c#: .ph data-hd-programlang='c#'} {:c#: data-hd-programlang="c#"} {:cli: .ph data-hd-interface='cli'} {:codeblock: .codeblock} {:curl: #curl .ph data-hd-programlang='curl'} {:curl: .ph data-hd-programlang='curl'} {:deprecated: .deprecated} {:dotnet-standard: .ph data-hd-programlang='dotnet-standard'} {:download: .download} {:external: .external target="_blank"} {:external: target="_blank" .external} {:faq: data-hd-content-type='faq'} {:fuzzybunny: .ph data-hd-programlang='fuzzybunny'} {:generic: data-hd-operatingsystem="generic"} {:generic: data-hd-programlang="generic"} {:gif: data-image-type='gif'} {:go: .ph data-hd-programlang='go'} {:help: data-hd-content-type='help'} {:hide-dashboard: .hide-dashboard} {:hide-in-docs: .hide-in-docs} {:important: .important} {:ios: data-hd-operatingsystem="ios"} {:java: #java .ph data-hd-programlang='java'} {:java: .ph data-hd-programlang='java'} {:java: data-hd-programlang="java"} {:javascript: .ph data-hd-programlang='javascript'} {:javascript: data-hd-programlang="javascript"} {:middle: .ph data-hd-position='middle'} {:navgroup: .navgroup} {:new_window: target="_blank"} {:node: .ph data-hd-programlang='node'} {:note: .note} {:objectc: .ph data-hd-programlang='Objective C'} {:objectc: data-hd-programlang="objectc"} {:org_name: data-hd-keyref="org_name"} {:php: .ph data-hd-programlang='PHP'} {:php: data-hd-programlang="php"} {:pre: .pre} {:preview: .preview} {:python: .ph data-hd-programlang='python'} {:python: data-hd-programlang="python"} {:release-note: data-hd-content-type='release-note'} {:right: .ph data-hd-position='right'} {:route: data-hd-keyref="route"} {:row-headers: .row-headers} {:ruby: .ph data-hd-programlang='ruby'} {:ruby: data-hd-programlang="ruby"} {:runtime: architecture="runtime"} {:runtimeIcon: .runtimeIcon} {:runtimeIconList: .runtimeIconList} {:runtimeLink: .runtimeLink} {:runtimeTitle: .runtimeTitle} {:screen: .screen} {:script: data-hd-video='script'} {:service: architecture="service"} {:service_instance_name: data-hd-keyref="service_instance_name"} {:service_name: data-hd-keyref="service_name"} {:shortdesc: .shortdesc} {:space_name: data-hd-keyref="space_name"} {:step: data-tutorial-type='step'} {:step: data-tutorial-type='step'} {:subsection: outputclass="subsection"} {:support: data-reuse='support'} {:swift: #swift .ph data-hd-programlang='swift'} {:swift: .ph data-hd-programlang='swift'} {:swift: data-hd-programlang="swift"} {:table: .aria-labeledby="caption"} {:term: .term} {:terraform: .ph data-hd-interface='terraform'} {:tip: .tip} {:tooling-url: data-tooling-url-placeholder='tooling-url'} {:topicgroup: .topicgroup} {:troubleshoot: data-hd-content-type='troubleshoot'} {:tsCauses: .tsCauses} {:tsResolve: .tsResolve} {:tsSymptoms: .tsSymptoms} {:tutorial: data-hd-content-type='tutorial'} {:ui: .ph data-hd-interface='ui'} {:unity: .ph data-hd-programlang='unity'} {:url: data-credential-placeholder='url'} {:user_ID: data-hd-keyref="user_ID"} {:vbnet: .ph data-hd-programlang='vb.net'} {:video: .video}
{: #create-job-crimage}
Create your job configuration that uses an image in {{site.data.keyword.registryshort}}. You can create a job from the console or with the CLI. {: shortdesc}
Before you begin
- You must have an image in {{site.data.keyword.registryshort}}. For more information, see Getting started with {{site.data.keyword.registryshort}}. Or, you can build one from source.
- Verify that you can access the registry. See Setting up authorities for container registries.
{: #create-job-crimage-console}
Create a job configuration that uses an image in {{site.data.keyword.registryshort}} by using the {{site.data.keyword.codeengineshort}} console. {: shortdesc}
{{site.data.keyword.codeengineshort}} can automatically pull images from {{site.data.keyword.registryshort}} namespaces in your account. To pull images from a different {{site.data.keyword.registryshort}} account or from a private DockerHub account, see Create a job from images in a private registry.
- Open the {{site.data.keyword.codeengineshort}}{: external} console.
- Select Start creating from Run your container image.
- Select Job.
- Enter a name for the job; for example,
myjob
. - Select a project from the list of available projects. You can also create a new one. Note that you must have a selected project to create a job.
- Select Container image and click Configure image.
- Select a container registry location, such as
IBM Registry, Dallas
. - Select
Automatic
for Registry access. - Select the namespace and name of the image in the registry for the {{site.data.keyword.codeengineshort}} job to reference. For example, select
mynamespace
and select the imagehello_repo
in that namespace. - Select a value for Tag; for example,
latest
. - Click Done.
- Modify any default values for environment variables or runtime settings. For more information about these options, see Options for creating and running a job.
- From the Create job page, click Create.
- Run your job by clicking
Submit job
from Job runs pane. Note that you might need to scroll to find the Job runs pane.
If you want to add registry access before you create a job, see Accessing container registries.
{: #create-job-crimage-cli}
Create a job configuration that uses an image in a {{site.data.keyword.registryshort}} with the CLI, use the job create
command. This command requires a name and an image and also allows other optional arguments. For a complete listing of options, see the ibmcloud ce job create
command.
{: shortdesc}
Before you can work with a {{site.data.keyword.codeengineshort}} job that references an image in {{site.data.keyword.registryshort}}, you must first add access to the registry, pull the image, and then create your job configuration.
-
To add access to {{site.data.keyword.registryshort_notm}}, create an IAM API key. To create an {{site.data.keyword.cloud_notm}} IAM API key from the CLI, run the
iam api-key-create
command. For example, to create an API key calledcliapikey
with a description of "My CLI APIkey" and save it to a file calledkey_file
, run the following command:ibmcloud iam api-key-create cliapikey -d "My CLI APIkey" --file key_file
{: pre}
If you choose to not save your key to a file, you must record the apikey that is displayed when you create it. You cannot retrieve it later. {: important}
-
After you create your API key, add registry access to {{site.data.keyword.codeengineshort}}. To add access to {{site.data.keyword.registryshort}} with the CLI, use the
ibmcloud ce registry create
command to create an image registry access secret. For example, the followingregistry create
command creates registry access to a {{site.data.keyword.registryshort}} instance calledmyregistry
. Note, even though the--server
and--username
options are specified in the example command, the default value for the--server
option isus.icr.io
and the--username
option defaults toiamapikey
when the server isus.icr.io
.ibmcloud ce registry create --name myregistry --server us.icr.io --username iamapikey --password APIKEY
{: pre}
Example output
Creating image registry access secret 'myregistry'... OK
{: screen}
-
Create your job configuration and reference the
hello_repo
image in {{site.data.keyword.registryshort}}. For example, the followingjob create
command creates themyhellojob
job to reference theus.icr.io/mynamespace/hello_repo
by using themyregistry
access information.ibmcloud ce job create --name myhellojob --image us.icr.io/mynamespace/hello_repo --registry-secret myregistry
{: pre}
The format of the name of the image for this job is
REGISTRY/NAMESPACE/REPOSITORY:TAG
whereREGISTRY
andTAG
are optional. IfREGISTRY
is not specified, the default isdocker.io
. IfTAG
is not specified, the default islatest
. {: note}
After you create your job, you can submit it. See Run a job.