Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More example images #12

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions containerfiles/rocky-8.8
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# syntax=docker/dockerfile:1.4.3

FROM docker.io/library/rockylinux:8.8

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The repos in this image just pull from the main RL8 mirror, so it's not necessarily going to stay at 8.8

[baseos]
name=Rocky Linux $releasever - BaseOS
mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=BaseOS-$releasever
#baseurl=http://dl.rockylinux.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
countme=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial


ARG rocky_version=8.8

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unused


# /etc/machine-id needs to be populated for /bin/kernel-install to
# correctly copy kernels into /boot. We will clear this out in the
# final image.
RUN systemd-machine-id-setup

# Pin to an older version of Rocky Linux by setting a DNF package variable
RUN echo "8.8" > /etc/dnf/vars/releasever && dnf update -y --refresh

# Install/remove packages from https://git.rockylinux.org/rocky/kickstarts/-/blob/r8/Rocky-8-GenericCloud.ks
RUN dnf install -y @core --allowerasing
RUN dnf install -y chrony dnf yum cloud-init cloud-utils-growpart NetworkManager \
findutils util-linux sudo python3 \
dracut-config-generic dracut-norescue firewalld gdisk grub2 \
kernel nfs-utils rsync tar dnf-utils yum-utils \
python3-jsonschema qemu-guest-agent dhcp-client \
rocky-release rng-tools
RUN dnf erase -y aic94xx-firmware alsa-firmware alsa-lib alsa-tools-firmware \
ivtv-firmware iwl100-firmware iwl1000-firmware iwl105-firmware \
iwl135-firmware iwl2000-firmware iwl2030-firmware iwl3160-firmware \
iwl3945-firmware iwl4965-firmware iwl5000-firmware iwl5150-firmware \
iwl6000-firmware iwl6000g2a-firmware iwl6000g2b-firmware iwl6050-firmware \
iwl7260-firmware libertas-sd8686-firmware libertas-sd8787-firmware \
libertas-usb8388-firmware biosdevname iprutils plymouth

RUN systemctl unmask console-getty.service dev-hugepages.mount \
getty.target sys-fs-fuse-connections.mount systemd-logind.service \
systemd-remount-fs.service
53 changes: 53 additions & 0 deletions containerfiles/rocky-8.8-ofed-23.04
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# syntax=docker/dockerfile:1.4.3

FROM docker.io/library/rockylinux:8.8

# /etc/machine-id needs to be populated for /bin/kernel-install to
# correctly copy kernels into /boot. We will clear this out in the
# final image.
RUN systemd-machine-id-setup

# Pin to an older version of Rocky Linux by setting a DNF package variable
RUN echo "8.8" > /etc/dnf/vars/releasever && dnf update -y --refresh

# Install/remove packages from https://git.rockylinux.org/rocky/kickstarts/-/blob/r8/Rocky-8-GenericCloud.ks
RUN dnf install -y @core --allowerasing
RUN dnf install -y chrony dnf yum cloud-init cloud-utils-growpart NetworkManager \
findutils util-linux sudo python3 \
dracut-config-generic dracut-norescue firewalld gdisk grub2 \
kernel nfs-utils rsync tar dnf-utils yum-utils \
python3-jsonschema qemu-guest-agent dhcp-client \
rocky-release rng-tools
RUN dnf erase -y aic94xx-firmware alsa-firmware alsa-lib alsa-tools-firmware \
ivtv-firmware iwl100-firmware iwl1000-firmware iwl105-firmware \
iwl135-firmware iwl2000-firmware iwl2030-firmware iwl3160-firmware \
iwl3945-firmware iwl4965-firmware iwl5000-firmware iwl5150-firmware \
iwl6000-firmware iwl6000g2a-firmware iwl6000g2b-firmware iwl6050-firmware \
iwl7260-firmware libertas-sd8686-firmware libertas-sd8787-firmware \
libertas-usb8388-firmware biosdevname iprutils plymouth

RUN systemctl unmask console-getty.service dev-hugepages.mount \
getty.target sys-fs-fuse-connections.mount systemd-logind.service \
systemd-remount-fs.service

# Apply OFED installation
# FIXME: the hardcoded kernel version should be dynamically deduced
RUN dnf config-manager --set-enabled powertools && dnf install -y perl cmake kernel-devel \
python36-devel perl-generators python36 rpm-build elfutils-libelf-devel zlib-devel \
gcc-c++ gdb-headless glib2-devel patch lsof libmnl-devel openssl-devel pciutils-devel \
pkgconf-pkg-config libstdc++-devel libnl3-devel libtool python3-docutils numactl-devel \
systemd-devel kernel-rpm-macros glibc-devel pciutils gcc valgrind-devel iptables-devel \
bison libdb-devel elfutils-devel tcsh binutils-devel flex gcc-gfortran python3-Cython

# Apply all package updates ahead of OFED installation to avoid dependency wrangling later
RUN dnf update -y

RUN curl -L https://content.mellanox.com/ofed/MLNX_OFED-23.04-1.1.3.0/MLNX_OFED_SRC-23.04-1.1.3.0.tgz --output /tmp/MLNX_OFED_SRC-23.04-1.1.3.0.tgz \
&& cd /tmp \
&& tar -xzf MLNX_OFED_SRC-23.04-1.1.3.0.tgz \
&& /tmp/MLNX_OFED_SRC-23.04-1.1.3.0/install.pl --hpc --kernel $(cd /lib/modules && ls -t1 | head -n 1) -vvv \
&& rm -rf /tmp/MLNX_OFED_SRC-23.04-1.1.3.0*

# This package causes us problems later on due to a higher epoch
# assigned to a lower version of OpenMPI 4 built by Rocky Linux
RUN dnf install -y python3-dnf-plugin-versionlock && yum versionlock openmpi
32 changes: 32 additions & 0 deletions containerfiles/rocky-9.1
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# syntax=docker/dockerfile:1.4.3

FROM docker.io/library/rockylinux:9.1

ARG rocky_version=9.1

# /etc/machine-id needs to be populated for /bin/kernel-install to
# correctly copy kernels into /boot. We will clear this out in the
# final image.
#RUN systemd-machine-id-setup

# Pin to an older version of Rocky Linux by setting a DNF package variable
RUN echo "9.1" > /etc/dnf/vars/releasever && echo "vault/rocky" > /etc/dnf/vars/contentdir && sed -e 's|^mirrorlist|#mirrorlist|' -e 's/^#baseurl=/baseurl=/' -i /etc/yum.repos.d/rocky*.repo && dnf update -y --refresh

# Install/remove packages from https://git.rockylinux.org/rocky/kickstarts/-/blob/r8/Rocky-8-GenericCloud.ks
RUN dnf install -y @core --allowerasing
RUN dnf install -y chrony dnf yum cloud-init cloud-utils-growpart \
dracut-config-generic firewalld gdisk grub2 \
kernel nfs-utils rsync tar dnf-utils yum-utils \
python3-jsonschema dhcp-client \
rocky-release rng-tools initscripts
RUN dnf erase -y aic94xx-firmware alsa-firmware alsa-lib alsa-tools-firmware \
ivtv-firmware iwl100-firmware iwl1000-firmware iwl105-firmware \
iwl135-firmware iwl2000-firmware iwl2030-firmware iwl3160-firmware \
iwl3945-firmware iwl4965-firmware iwl5000-firmware iwl5150-firmware \
iwl6000-firmware iwl6000g2a-firmware iwl6000g2b-firmware iwl6050-firmware \
iwl7260-firmware libertas-sd8686-firmware libertas-sd8787-firmware \
libertas-usb8388-firmware biosdevname iprutils plymouth

RUN systemctl unmask console-getty.service dev-hugepages.mount \
getty.target sys-fs-fuse-connections.mount systemd-logind.service \
systemd-remount-fs.service
47 changes: 47 additions & 0 deletions containerfiles/rocky-9.1-ofed-5.8
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# syntax=docker/dockerfile:1.4.3

FROM docker.io/library/rockylinux:9.1

# Pin to an older version of Rocky Linux by setting a DNF package variable
RUN echo "9.1" > /etc/dnf/vars/releasever && echo "vault/rocky" > /etc/dnf/vars/contentdir && sed -e 's|^mirrorlist|#mirrorlist|' -e 's/^#baseurl=/baseurl=/' -i /etc/yum.repos.d/rocky*.repo && dnf update -y --refresh


# /etc/machine-id needs to be populated for /bin/kernel-install to
# correctly copy kernels into /boot. We will clear this out in the
# final image.
RUN dnf install -y systemd
RUN /usr/bin/systemd-machine-id-setup

# Install/remove packages from https://git.rockylinux.org/rocky/kickstarts/-/blob/r8/Rocky-8-GenericCloud.ks
RUN dnf install -y @core --allowerasing
RUN dnf install -y chrony dnf yum cloud-init cloud-utils-growpart \
dracut-config-generic firewalld gdisk grub2 \
kernel nfs-utils rsync tar dnf-utils yum-utils \
python3-jsonschema dhcp-client \
rocky-release rng-tools initscripts
RUN dnf erase -y aic94xx-firmware alsa-firmware alsa-lib alsa-tools-firmware \
ivtv-firmware iwl100-firmware iwl1000-firmware iwl105-firmware \
iwl135-firmware iwl2000-firmware iwl2030-firmware iwl3160-firmware \
iwl3945-firmware iwl4965-firmware iwl5000-firmware iwl5150-firmware \
iwl6000-firmware iwl6000g2a-firmware iwl6000g2b-firmware iwl6050-firmware \
iwl7260-firmware libertas-sd8686-firmware libertas-sd8787-firmware \
libertas-usb8388-firmware biosdevname iprutils plymouth

RUN systemctl unmask console-getty.service dev-hugepages.mount \
getty.target sys-fs-fuse-connections.mount systemd-logind.service \
systemd-remount-fs.service

# Apply OFED installation
RUN dnf config-manager --set-enabled appstream crb && dnf install -y perl cmake kernel-devel \
python3-devel perl-generators python3 rpm-build elfutils-libelf-devel zlib-devel \
gcc-c++ gdb-headless glib2-devel patch lsof libmnl openssl-devel pciutils-devel \
pkgconf-pkg-config libstdc++-devel libnl3-devel libtool numactl-devel \
systemd-devel kernel-rpm-macros glibc-devel pciutils gcc valgrind-devel iptables-devel \
bison libdb-devel elfutils-devel tcsh binutils-devel flex gcc-gfortran \
python3-Cython python3-docutils libmnl-devel

RUN curl -L https://content.mellanox.com/ofed/MLNX_OFED-5.8-1.1.2.1/MLNX_OFED_SRC-5.8-1.1.2.1.tgz --output /tmp/MLNX_OFED_SRC-5.8-1.1.2.1.tgz \
&& cd /tmp \
&& tar -xzf MLNX_OFED_SRC-5.8-1.1.2.1.tgz \
&& /tmp/MLNX_OFED_SRC-5.8-1.1.2.1/install.pl --hpc --kernel $(cd /lib/modules && ls -t1 | head -n 1) \
&& rm -rf /tmp/MLNX_OFED_SRC-5.8-1.1.2.1*
32 changes: 32 additions & 0 deletions containerfiles/rocky-9.2
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# syntax=docker/dockerfile:1.4.3

FROM docker.io/library/rockylinux:9.2

ARG rocky_version=9.2

# /etc/machine-id needs to be populated for /bin/kernel-install to
# correctly copy kernels into /boot. We will clear this out in the
# final image.
#RUN systemd-machine-id-setup

# Pin to an older version of Rocky Linux by setting a DNF package variable
RUN echo "9.2" > /etc/dnf/vars/releasever && dnf update -y --refresh

# Install/remove packages from https://git.rockylinux.org/rocky/kickstarts/-/blob/r8/Rocky-8-GenericCloud.ks
RUN dnf install -y @core --allowerasing
RUN dnf install -y chrony dnf yum cloud-init cloud-utils-growpart \
dracut-config-generic firewalld gdisk grub2 \
kernel nfs-utils rsync tar dnf-utils yum-utils \
python3-jsonschema dhcp-client \
rocky-release rng-tools initscripts
RUN dnf erase -y aic94xx-firmware alsa-firmware alsa-lib alsa-tools-firmware \
ivtv-firmware iwl100-firmware iwl1000-firmware iwl105-firmware \
iwl135-firmware iwl2000-firmware iwl2030-firmware iwl3160-firmware \
iwl3945-firmware iwl4965-firmware iwl5000-firmware iwl5150-firmware \
iwl6000-firmware iwl6000g2a-firmware iwl6000g2b-firmware iwl6050-firmware \
iwl7260-firmware libertas-sd8686-firmware libertas-sd8787-firmware \
libertas-usb8388-firmware biosdevname iprutils plymouth

RUN systemctl unmask console-getty.service dev-hugepages.mount \
getty.target sys-fs-fuse-connections.mount systemd-logind.service \
systemd-remount-fs.service
Loading