Skip to content

gentoo/gentoo-docker-images

Folders and files

NameName
Last commit message
Last commit date

Latest commit

92ec737 · Nov 29, 2024
Nov 29, 2024
Mar 11, 2015
Jun 23, 2014
Nov 27, 2024
Sep 14, 2024
Sep 14, 2024
Nov 29, 2024
Sep 14, 2024
Mar 3, 2024
Nov 23, 2024
Mar 3, 2024

Repository files navigation

Gentoo Docker Images

build

A collection of Dockerfiles for generating Gentoo docker images.

These images are intended to be created automatically by a cron job and pushed to docker hub. This repository include basic stage3 images and an image usable as a /var/db/repos/gentoo volume

DockerHub

https://hub.docker.com/u/gentoo/

Inventory

The following targets are built and pushed to Docker Hub:

  • portage
  • stage3
    • amd64
      • stage3-amd64-hardened-openrc
      • stage3-amd64-llvm-openrc
      • stage3-amd64-llvm-systemd
      • stage3-amd64-musl
      • stage3-amd64-musl-hardened
      • stage3-amd64-musl-llvm
      • stage3-amd64-nomultilib-openrc
      • stage3-amd64-nomultilib-systemd
      • stage3-amd64-openrc
      • stage3-amd64-desktop-openrc
      • stage3-amd64-systemd
      • stage3-amd64-desktop-systemd
    • arm
      • stage3-armv5tel-openrc
      • stage3-armv5tel-systemd
      • stage3-armv6j-openrc
      • stage3-armv6j-systemd
      • stage3-armv6j_hardfp-openrc
      • stage3-armv6j_hardfp-systemd
      • stage3-armv7a-openrc
      • stage3-armv7a-systemd
      • stage3-armv7a_hardfp_musl-openrc
      • stage3-armv7a_hardfp-openrc
      • stage3-armv7a_hardfp-systemd
    • arm64
      • stage3-arm64-desktop-openrc
      • stage3-arm64-desktop-systemd
      • stage3-arm64-llvm-openrc
      • stage3-arm64-llvm-systemd
      • stage3-arm64-musl
      • stage3-arm64-musl-hardened
      • stage3-arm64-musl-llvm
      • stage3-arm64-openrc
      • stage3-arm64-systemd
    • ppc
      • stage3-ppc64le-musl-hardened-openrc
      • stage3-ppc64le-openrc
      • stage3-ppc64le-systemd
    • riscv
      • stage3-rv64_lp64-openrc
      • stage3-rv64_lp64-systemd
      • stage3-rv64_lp64d-openrc
      • stage3-rv64_lp64d-systemd
    • s390
      • stage3-s390x
    • x86
      • stage3-i686-hardened-openrc
      • stage3-i686-musl
      • stage3-i686-openrc
      • stage3-i686-ssemath-t64-openrc
      • stage3-i686-ssemath-t64-systemd
      • stage3-i686-systemd

The following upstream stage3 targets are not built at all:

[deprecated]: Deprecated stage3 target

[selinux]: SELinux doesn't seem to make sense inside containers

[under testing]: Not ready for container. Our arch team is working on testing it

[unsupported]: Unsupported Docker architecture

Building the containers

The containers are created using a multi-stage build, which requires Docker >= 19.03.0. The container being built is defined by the TARGET environment variable:

TARGET=stage3-amd64-openrc ./build.sh

Using the portage container as a data volume

docker create -v /var/db/repos/gentoo --name myportagesnapshot gentoo/portage:latest /bin/true
docker run --interactive --tty --volumes-from myportagesnapshot gentoo/stage3:latest /bin/bash

Using the portage container in a multi-stage build

docker-17.05.0 or later supports multi-stage builds, allowing the portage volume to be used when creating images based on a stage3 image.

Example Dockerfile

# name the portage image
FROM gentoo/portage:latest as portage

# based on stage3 image
FROM gentoo/stage3:latest

# copy the entire portage volume in
COPY --from=portage /var/db/repos/gentoo /var/db/repos/gentoo

# continue with image build ...
RUN emerge -qv www-servers/apache # or whichever packages you need

Contributing

We'd love to hear any ideas. Feel free to contact us via any of the following methods:

Policy

  • Use topic branches (i.e. foo) and fix branches (i.e. fix/foo) when submitting pull requests
  • Make meaningful commits ideally with the following form:
    • Subject line–what this commit does
    • Blank line
    • Body–why this commit is necessary or desired
  • Pull requests should not include merge commits
  • Use amend and rebase to fix commits after a pull request has been submitted

About

[MIRROR] Common effort to get an official and automated gentoo base docker container

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published