跳到主要内容

Run Docker container

Learn how to add and configure the "Run Docker Container" action in your Buddy pipeline

POST参数

名称类型描述
name
必填
String操作名称
type
必填
StringThe type of the action. Should be set to RUN_DOCKER_CONTAINER.
docker_image_name
必填
StringThe name of the Docker image.
docker_image_tag
必填
StringThe tag of the Docker image.
inline_commands
必填
StringThe commands that will be executed.
run_as_userStringAll build commands are run as the default user defined in the selected Docker image. Can be set to another username (on the condition that this user exists in the selected image).
mount_filesystem_disableBooleanDefines whether or not to mount the filesystem to the running container.
volume_mappingsString[]The path preceding the colon is the filesystem path (the folder from the filesystem to be mounted in the container). The path after the colon is the container path (the path in the container, where this filesystem will be located).
loginStringThe username required to connect to a private registry.
passwordStringThe password required to connect to a private registry.
registryStringThe url to the Docker registry or GCR. Required for Google GCR.
export_container_pathStringDefines the export path of the container’s filesystem as a tar archive.
integrationIntegrationThe integration. Required for using the image from the Amazon ECR, Google GCR and Docker Hub.
regionStringThe name of the Amazon S3 region. Required for using the image from the Amazon ECR. The full list of regions is available here.
use_image_from_actionBooleanIf set to true the Docker image will be taken from action defined by docker_build_action_id.
docker_build_action_idIntegerThe ID of the action which built the desired Docker image. If set to 0, the image will be taken from previous pipeline action. Can be used instead of docker_build_action_name.
docker_build_action_nameStringThe name of the action which built the desired Docker image. Can be used instead of docker_build_action_id.
entrypointStringDefault command to execute at runtime. Overwrites the default entrypoint set by the image.

示例

请求

POST https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions

JSON

{
"name": "Run container",
"type": "RUN_DOCKER_CONTAINER",
"trigger_time": "ON_EVERY_EXECUTION",
"docker_image_name": "library/ubuntu",
"docker_image_tag": "latest",
"variables": [
{
"key": "containerUser",
"value": "notRoot"
}
],
"run_as_user": "$containerUser",
"inline_commands": "ls -al > ls.log",
"mount_filesystem_disable": false,
"export_container_path": "/exportPath",
"entrypoint": "/bin/sh",
"volume_mappings":
"/:/buddy/mount/directory",
}

示例响应

HTTP

Status: 201 Created
X-Rate-Limit-Limit: 1
X-Rate-Limit-Remaining: 999

JSON

{
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions/2",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/2/edit",
"id": 2,
"name": "Run container",
"type": "RUN_DOCKER_CONTAINER",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"docker_image_name": "library/ubuntu",
"docker_image_tag": "latest",
"variables": [
{
"key": "containerUser",
"value": "notRoot"
}
],
"run_as_user": "$containerUser",
"inline_commands": "ls -al > ls.log",
"mount_filesystem_disable": false,
"volume_mappings":
"/:/buddy/mount/directory",
"export_container_path": "/exportPath",
"entrypoint": "/bin/sh",
"pipeline": {
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/2",
"id": 2,
"name": "Live mirror",
"on": "CLICK",
"refs": [
"refs/heads/master"
],
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}