2
0
mirror of https://github.com/sudo-project/sudo.git synced 2025-08-22 09:57:41 +00:00
Todd C. Miller 8d98a447c5 Use circleci for continuous integegration.
Build container descriptions are in the new docker directory.
2021-10-04 18:49:06 -06:00
..

Container images are stored in https://hub.docker.com/repositories as
user sudoproject.  Build images are named based on the distro and use
the tag to differentiate between different versions and architectures.
There should always be a "latest" tag (or manifest).

When creating a new Dockerfile, use one of the Debian or Fedora files
as a template.  The examples below use podman rather than docker but it
should be possible to them interchangably.

To build Debian containers for both amd64 and i386 (others only have amd64):

    podman build --arch amd64 --pull -t sudoproject/debian:latest.amd64 \
	docker/debian/latest
    podman build --arch 386 --pull -t sudoproject/debian:latest.i386 \
	docker/debian/latest

Then push it to dockerhub (may need to run "podman login" first):
    podman push sudoproject/debian:latest.amd64
    podman push sudoproject/debian:latest.i386

Multi-arch containers are supported by creating a manifest, e.g.:
    podman manifest create sudoproject/debian:latest
    podman manifest add sudoproject/debian:latest \
	sudoproject/debian:latest.amd64
    podman manifest add sudoproject/debian:latest \
	sudoproject/debian:latest.i386

Finally push the manifest to dockerhub:
    podman push sudoproject/debian:latest