Skip to content
@ducttape-infra

Ducttape infra tools

Build, run & share VM images like containers

Like Dockerfiles, ducttape infra tools describe how to customize a base cloud image, installing packages, configuring services, and enabling systemd units, producing a reusable virtual machine images. Machinefiles are compatible with Podman and Dockerr Containerfiles, so you can create both containers and virtual machines from the same file! It is not meant to replace tools you have, but rather augment, such as Lima. This is also not replacing bootc, but rather provides you with a similar experience to prepare cloud-init based-images using Containerfiles, but still use a mutable Virtual Machine, ideal for experimentation.

status-badge

Ducttape is a command-line tool designed to bridge the gap between container-like workflows and virtual machine (VM) management. It allows developers to build, run, and share VM images using a syntax and lifecycle similar to Docker or Podman, powered by the Machinefile format.

Machinefile

FROM fedora-cloud:44

RUN dnf install -y httpd && \
  dnf clean all && \
  systemctl enable httpd
ducttape build -t my-httpd -f Machinefile
ducttape run my-httpd --publish 8080:80
ducttape shell my-httpd curl -s http://localhost/
curl http://$(ducttape ports my-httpd :80)

status-badge

A lightweight execution engine designed to parse and execute Dockerfile or Containerfile instructions directly on a host system. It bridges the gap between container-native configuration formats and traditional host-based automation by treating a host (local or remote) as the target "container."

FROM fedora-cloud

RUN dnf install -y httpd && \
    dnf clean all && \
    systemctl enable httpd

status-badge

An Actionfile is a Markdown-based configuration file that describes a set of actions, scripts, or tasks for use in automation workflows, dotfile management, or application deployment. It is designed for human readability and machine parsing, combining documentation, configuration, and executable code blocks in one file.

The packer-test repository is a technical demonstration and framework for generating virtual machine (VM) disk images using Packer and Machinefile. It implements a Container-to-VM pattern, where system configurations are defined in a shared format and applied to various base distributions during the image creation process

status-badge

A cross-platform resource and configuration management tool, compatible with GNU stow.

There are now actions to setup and deal with

  • shared INI-configuration files from a repository/file
  • remove unwanted stuff from a runner
  • install codium server
  • install VScode as tunnel
  • setup virtualization (qemu+kvm)
  • setup container tools (skopeo, etc)
  • setup ansible
  • execute jupyter notebpok
  • enable remote desktop for Windows runner
  • install Tailscale using authkey

and many more.

Pinned Loading

  1. ducttape ducttape Public

    Build cloud images like containers

    Go 8

  2. tapewrap tapewrap Public

    A cross-platform resource and configuration management tool, compatible with GNU stow

    Go 1

  3. machinefile machinefile Public

    A simple executor that allows you to run `Dockerfile`/`Containerfile` commands directly on a local or remote host

    Go 5

  4. actionfile actionfile Public

    Go rewrite Actionfile executor

    Go

  5. examples examples Public

    Examples using Actionfile, Machinefile and Ducttape

    Dockerfile

  6. packer-machinefile packer-machinefile Public

    Use `Packer` and `Machinefile` to create VMs from shared containerfiles

    HCL

Repositories

Showing 10 of 13 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…