51
GitHub - projectatomic/buildah: A tool that facilitates building OCI images
source link: https://github.com/projectatomic/buildah
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
Buildah - a tool that facilitates building OCI container images
Note: this package is in alpha, but is close to being feature-complete.
The Buildah package provides a command line tool that can be used to
- create a working container, either from scratch or using an image as a starting point
- create an image, either from a working container or via the instructions in a Dockerfile
- images can be built in either the OCI image format or the traditional upstream docker image format
- mount a working container's root filesystem for manipulation
- unmount a working container's root filesystem
- use the updated contents of a container's root filesystem as a filesystem layer to create a new image
- delete a working container or an image
Example
From ./examples/lighttpd.sh
:
$ cat > lighttpd.sh <<"EOF" #!/bin/bash -x ctr1=`buildah from ${1:-fedora}` ## Get all updates and install our minimal httpd server buildah run $ctr1 -- dnf update -y buildah run $ctr1 -- dnf install -y lighttpd ## Include some buildtime annotations buildah config --annotation "com.example.build.host=$(uname -n)" $ctr1 ## Run our server and expose the port buildah config --cmd "/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf" $ctr1 buildah config --port 80 $ctr1 ## Commit this container to an image name buildah commit $ctr1 ${2:-$USER/lighttpd} EOF $ chmod +x lighttpd.sh $ sudo ./lighttpd.sh
Commands
Command Description buildah-add(1) Add the contents of a file, URL, or a directory to the container. buildah-bud(1) Build an image using instructions from Dockerfiles. buildah-commit(1) Create an image from a working container. buildah-config(1) Update image configuration settings. buildah-containers(1) List the working containers and their base images. buildah-copy(1) Copies the contents of a file, URL, or directory into a container's working directory. buildah-from(1) Creates a new working container, either from scratch or using a specified image as a starting point. buildah-images(1) List images in local storage. buildah-inspect(1) Inspects the configuration of a container or image. buildah-mount(1) Mount the working container's root filesystem. buildah-push(1) Push an image from local storage to elsewhere. buildah-rm(1) Removes one or more working containers. buildah-rmi(1) Removes one or more images. buildah-run(1) Run a command inside of the container. buildah-tag(1) Add an additional name to a local image. buildah-umount(1) Unmount a working container's root file system. buildah-version(1) Display the Buildah Version InformationFuture goals include:
- more CI tests
- additional CLI commands (?)
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK