docker/Dockerfile aktualisiert
This commit is contained in:
+20
-21
@@ -1,31 +1,30 @@
|
|||||||
FROM almalinux:latest
|
FROM almalinux:10
|
||||||
|
|
||||||
RUN dnf install -y \
|
# dnf-plugins-core -> "dnf download"
|
||||||
|
# createrepo_c -> createrepo_c + modifyrepo_c
|
||||||
|
# rpm-sign -> rpmsign/rpmkeys (verify upstream sigs, re-sign with our key)
|
||||||
|
# gnupg2 -> gpg (generates/holds the mirror's own signing key)
|
||||||
|
# python3-pyyaml -> YAML parsing in sync_helpers.py
|
||||||
|
# git -> pulling the sources.yaml from a git repo (optional)
|
||||||
|
# curl -> fetching upstream gpgkeys
|
||||||
|
RUN dnf -y install \
|
||||||
dnf-plugins-core \
|
dnf-plugins-core \
|
||||||
createrepo_c \
|
createrepo_c \
|
||||||
nginx \
|
|
||||||
cronie \
|
|
||||||
git \
|
|
||||||
jq \
|
|
||||||
openssh-clients \
|
|
||||||
wget \
|
|
||||||
gnupg2 \
|
|
||||||
rpm-sign \
|
rpm-sign \
|
||||||
appstream \
|
gnupg2 \
|
||||||
appstream-compose \
|
python3-pyyaml \
|
||||||
cpio \
|
git \
|
||||||
|
curl \
|
||||||
&& dnf clean all
|
&& dnf clean all
|
||||||
|
|
||||||
RUN wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/local/bin/yq &&\
|
WORKDIR /opt/rpm-mirror
|
||||||
chmod +x /usr/local/bin/yq
|
|
||||||
|
|
||||||
COPY sync.sh /usr/local/bin/sync.sh
|
COPY sync.sh sync_helpers.py /opt/rpm-mirror/
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
RUN chmod +x /opt/rpm-mirror/sync.sh
|
||||||
COPY nginx.conf /etc/nginx/conf.d/repo.conf
|
|
||||||
RUN chmod +x /usr/local/bin/sync.sh /entrypoint.sh \
|
|
||||||
&& rm -f /etc/nginx/conf.d/default.conf
|
|
||||||
|
|
||||||
VOLUME /data/repo
|
COPY docker/syncer/entrypoint.sh /entrypoint.sh
|
||||||
EXPOSE 80
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
|
# sync.sh needs root to write /etc/yum.repos.d/*.repo - default container
|
||||||
|
# user is root, don't change it.
|
||||||
ENTRYPOINT ["/entrypoint.sh"]
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
Reference in New Issue
Block a user