Blueprints

Build and push a docker image to DockerHub

Source

yaml
id: build-dockerhub-image
namespace: company.team

tasks:
  - id: build
    type: io.kestra.plugin.docker.Build
    dockerfile: |
      FROM python:3.10
      RUN pip install --upgrade pip
      RUN pip install --no-cache-dir kestra requests "polars[all]"
    tags:
      - kestra/polars:latest
    push: true
    credentials:
      registry: https://index.docker.io/v1/
      username: "{{ secret('DOCKERHUB_USERNAME') }}"
      password: "{{ secret('DOCKERHUB_PASSWORD') }}"

About this blueprint

Docker

This flow will build a Docker image and push it to a remote container registry.

  1. The dockerfile parameter is a multiline string that contains the Dockerfile content. However, it can also be a path to a file.
  2. The tags parameter is a list of tags of the image to build. Make sure to replace the kestra prefix with your DockerHub ID.
  3. The push parameter is a boolean that indicates whether to push the image to DockerHub.
  4. Finally, make sure to securely store your DockerHub credentials as secrets or environment variables.

Build

More Related Blueprints

New to Kestra?

Use blueprints to kickstart your first workflows.

Get started with Kestra