Go to file
Máirín Duffy 43a025ebf9 updating logo reference in README
Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>

Removing old 'underwear hat' logo, replacing with updated logo artwork

Closes: #359
Approved by: rhatdan
2017-12-13 17:02:17 +00:00
cmd/buildah Merge pull request #351 from ripcurld0/small_nitpick 2017-12-08 20:49:49 -06:00
contrib Bump version to 0.9 2017-12-02 11:51:00 +00:00
docker Import and namespace more types 2017-05-24 18:20:10 +00:00
docs Fixed some more Tom nits. 2017-12-07 10:57:14 -07:00
examples examples: adding a basic lighttpd example 2017-09-18 08:43:52 -04:00
imagebuildah Add --chown option to add/copy commands 2017-12-07 13:45:12 +00:00
logos updating logo reference in README 2017-12-13 17:02:17 +00:00
tests Merge pull request #349 from TomSweeneyRedHat/dev/tsweeney/baseline2 2017-12-11 12:00:57 -06:00
util Fix inspect/tag-by-truncated-image-ID 2017-06-08 18:31:31 +00:00
vendor Vendor in latest container/image 2017-11-15 13:38:28 +00:00
.gitignore gitignore build artifacts 2017-07-10 19:02:13 +00:00
.papr.sh Make sure builtin volumes have the correct label 2017-11-28 21:44:17 +00:00
.papr.yml Fix timeout issue 2017-10-06 14:30:56 +00:00
.travis.yml Add go tip to build, but allow it to have failures 2017-11-02 16:59:37 -04:00
CHANGELOG.md Bump to v0.5 2017-11-08 00:50:37 +00:00
CONTRIBUTING.md add CONTRIBUTING.md 2017-10-25 12:06:06 -07:00
LICENSE Initial commit 2017-01-26 17:59:13 +01:00
Makefile add install.runc target 2017-12-13 12:38:52 +00:00
README.md updating logo reference in README 2017-12-13 17:02:17 +00:00
add.go Add --chown option to add/copy commands 2017-12-07 13:45:12 +00:00
btrfs_tag.sh Suss out build tags, add a missing Travis dep 2017-01-28 06:20:22 +01:00
buildah.go Bump version to 0.9 2017-12-02 11:51:00 +00:00
commit.go Allow push to use the image id 2017-11-30 23:47:13 +00:00
common.go Add manifest type conversion to buildah push 2017-11-15 13:38:28 +00:00
config.go Add secrets patch to buildah 2017-11-08 00:01:57 +00:00
delete.go Add proper SELinux labeling to buildah run 2017-11-07 22:40:29 +00:00
image.go Vendor in changes to support sirupsen/logrus 2017-10-10 17:30:11 +00:00
import.go Don't overwrite parent information when reading 2017-06-13 21:50:42 +00:00
install.md install golang metapackage from backports 2017-12-13 12:38:52 +00:00
libdm_tag.sh Refine the libdm_no_deferred_remove tag check 2017-02-02 15:24:02 -05:00
mount.go buildah mount command should list mounts when no arguments are given. 2017-06-01 18:37:40 +00:00
new.go Ignore errors when trying to read containers buildah.json 2017-11-16 21:12:38 +00:00
ostree_tag.sh Auto-set build tags for ostree and selinux 2017-08-29 13:22:53 +00:00
pull.go Add manifest type conversion to buildah push 2017-11-15 13:38:28 +00:00
run.go Make sure builtin volumes have the correct label 2017-11-28 21:44:17 +00:00
secrets.go Add secrets patch to buildah 2017-11-08 00:01:57 +00:00
selinux_tag.sh Auto-set build tags for ostree and selinux 2017-08-29 13:22:53 +00:00
unmount.go buildah mount command should list mounts when no arguments are given. 2017-06-01 18:37:40 +00:00
user.go Accept numeric USER values with no group ID 2017-11-10 09:58:08 +00:00
user_basic.go Rework how we do UID resolution in images 2017-11-10 09:58:08 +00:00
user_linux.go Rework how we do UID resolution in images 2017-11-10 09:58:08 +00:00
util.go Vendor in changes to support sirupsen/logrus 2017-10-10 17:30:11 +00:00
vendor.conf Add manifest type conversion to buildah push 2017-11-15 13:38:28 +00:00

README.md

buildah logo

Buildah - a tool which facilitates building OCI container images

================================================================

Go Report Card Travis

Note: this package is in alpha, but is close to being feature-complete.

The Buildah package provides a command line tool which 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

Changelog

Installation notes

Buildah uses runc to run commands when buildah run is used, or when buildah build-using-dockerfile encounters a RUN instruction, so you'll also need to build and install a compatible version of runc for Buildah to call for those cases.

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 $ctr1 --cmd "/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf"
buildah config $ctr1 --port 80

## Commit this container to an image name
buildah commit $ctr1 ${2:-$USER/lighttpd}
EOF

chmod +x lighttpd.sh
./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) Copies an image from local storage.
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 Information

Future goals include:

  • more CI tests
  • additional CLI commands (?)