Skip to content

✨ Support docker build workflow #149

@linkdd

Description

@linkdd

Context

The CLI command docker build can be used to create new Docker images:

docker build -t myimage:mytag1 -t myimage:mytag2 -f path/to/Dockerfile path/to/build/context

This command will create an archive (tar.gz, tar.xz? can't remember...) of the path/to/build/context folder and upload it to the Docker host. The Docker host will then look for path/to/Dockerfile within that archive and build a Docker image out of it.

It will tag it with myimage:mytag1 and myimage:mytag2.

Such image will not have any DigestID since it does not come from a Docker registry.

Proposal

Add a new API endpoint to the Netbox Docker Agent, such that:

curl \
    -X POST \
    --data @build-context.tar.gz \
    $BASE_URL/api/builder?t=myimage:mytag01&t=myimage:mytag02&f=path/to/Dockerfile
  • the t query parameters (which can appear multiple times) would define which tags to create for the newly built Docker image
  • the f query parameter would specify the path of the Dockerfile within the build context (it defaults to Dockerfile)
  • the body of the request is the build context archive

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions