Files
silverblue-images/f38-server/Containerfile
T
2023-11-22 12:22:10 -05:00

78 lines
2.0 KiB
Docker

# ====== Stage 1: Builder image ======
FROM fedora:latest AS builder
RUN dnf update -y && dnf install -y git golang
RUN git clone https://github.com/rfjakob/gocryptfs.git
WORKDIR /gocryptfs
RUN ./build-without-openssl.bash
# ====== Stage 2: Server image ======
FROM quay.io/fedora/fedora-silverblue:39
COPY --from=builder /gocryptfs/gocryptfs /usr/bin/gocryptfs
# Install ZFS repository
RUN rpm-ostree install https://github.com/zfsonlinux/zfsonlinux.github.com/raw/master/fedora/zfs-release-2-4$(rpm --eval "%{dist}").noarch.rpm && \
# cleanup and verification stage
rm -vrf /var /*.rpm && \
ostree container commit
# Install ZFS build deps
RUN rpm-ostree install \
kernel-devel kernel-devel-matched kernel-headers kernel-srpm-macros && \
# cleanup and verification stage
rm -vrf /var && \
ostree container commit
# TODO: Remove the following line once this bug is fixed: https://github.com/coreos/rpm-ostree/issues/4201
RUN test -f /usr/bin/ld || ln -s /usr/bin/ld.bfd /usr/bin/ld
# Install zfs
RUN rpm-ostree install zfs && \
dkms autoinstall -k $(rpm -qa kernel --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}') && \
# cleanup and verification stage
rm -vrf /var && \
ostree container commit
# TODO: Remove the following line once this bug is fixed: https://github.com/coreos/rpm-ostree/issues/4201
RUN test -h /usr/bin/ld && rm -v /usr/bin/ld
# Install zrepl repository
COPY zrepl.asc /var/roothome/zrepl.asc
RUN rpm --import /var/roothome/zrepl.asc
COPY zrepl.repo /etc/yum.repos.d/zrepl.repo
RUN rpm-ostree install \
borgbackup \
certbot \
distrobox \
fuse-encfs \
fuse-sshfs \
hddtemp \
htop \
iotop \
ipmitool \
libvirt \
lm_sensors \
net-tools \
netcat \
nginx \
nut \
pv \
python3-certbot-nginx \
qemu-kvm \
rclone \
screen \
smartmontools \
strace \
stress-ng \
telnet \
vim \
zrepl-v0.6.0-1.x86_64 \
&& ln -s /usr/bin/netcat /usr/bin/nc \
&& rm -vrf /var && ostree container commit