chore(containers): BREAKING CHAINGE remove ubuntu (#28041)

**Description**
In favor of standardizing around Alpine where we can.

**⚙️ Type of change**

- [x] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [x] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [x] 🔃 Refactor of current code

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [ ] ⚖️ My code follows the style guidelines of this project
- [ ] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made corresponding changes to the documentation
- [ ] ⚠️ My changes generate no new warnings
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning
- [ ] I made sure the title starts with `feat(chart-name):`,
`fix(chart-name):` or `chore(chart-name):`

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
This commit is contained in:
Kjeld Schouten
2024-10-19 17:29:51 +02:00
committed by GitHub
parent d0e0dacede
commit b7501e0aed
25 changed files with 55 additions and 451 deletions
+7 -12
View File
@@ -1,35 +1,30 @@
# hadolint ignore=DL3007
FROM ghcr.io/truecharts/ubuntu:latest@sha256:cbe66cbca1ddd2a82093675067c363af8bbc6713b645bc77cb1706578a01facd
FROM tccr.io/tccr/alpine:latest
ARG TARGETPLATFORM
ARG VERSION
USER root
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
SHELL ["/bin/sh", "-o", "pipefail", "-c"]
# hadolint ignore=DL3008,DL3015,SC2086,SC2155
RUN \
apt-get -qq update \
&& \
apt-get -qq install -y \
apk update && \
apk --no-cache add \
mariadb-client \
&& \
case "${TARGETPLATFORM}" in \
'linux/amd64') export ARCH='linux-x64' ;; \
esac \
&& apt-get remove -y \
&& apk del \
jq \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
&& apt-get autoremove -y \
&& apt-get clean \
&& \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/ \
/var/cache/apk/* \
&& chmod -R u=rwX,go=rX /app \
&& printf "umask %d" "${UMASK}" >> /etc/bash.bashrc \
&& printf "umask %d" "${UMASK}" >> /etc/profile \
&& update-ca-certificates
USER apps
+20 -29
View File
@@ -1,44 +1,35 @@
# hadolint ignore=DL3007
FROM ghcr.io/truecharts/ubuntu:latest@sha256:cbe66cbca1ddd2a82093675067c363af8bbc6713b645bc77cb1706578a01facd
FROM tccr.io/tccr/alpine:latest
ARG TARGETPLATFORM
ARG VERSION
USER root
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
SHELL ["/bin/sh", "-o", "pipefail", "-c"]
# hadolint ignore=DL3008,DL3015,SC2086,SC2155,DL4001
RUN \
curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg \
&& \
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list \
&& \
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | apt-key add - \
&& \
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-6.0.list \
&& \
apk update && \
apk add --no-cache \
curl \
ca-certificates \
gnupg \
bash && \
curl -fsSLo /etc/apk/keys/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg && \
echo "https://dl-cdn.alpinelinux.org/alpine/v3.16/community" >> /etc/apk/repositories && \
curl -fsSL https://downloads.mongodb.com/compass/mongosh-1.8.0-linux-x64.tgz -o /tmp/mongosh.tgz && \
tar -xvzf /tmp/mongosh.tgz -C /tmp && \
mv /tmp/mongosh*/bin/mongosh /usr/local/bin/ && \
chmod +x /usr/local/bin/mongosh && \
apk del gnupg && \
case "${TARGETPLATFORM}" in \
'linux/amd64') export ARCH='linux-x64' ;; \
esac \
&& \
apt-get -qq update \
&& \
apt-get -qq install -y \
mongodb-mongosh \
&& apt-get remove -y \
jq \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
&& apt-get autoremove -y \
&& apt-get clean \
&& \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/ \
&& chmod -R u=rwX,go=rX /app \
&& printf "umask %d" "${UMASK}" >> /etc/bash.bashrc \
&& update-ca-certificates
esac && \
rm -rf /tmp/* /var/cache/apk/* && \
chmod -R u=rwX,go=rX /app && \
printf "umask %d" "${UMASK}" >> /etc/profile && \
update-ca-certificates
USER apps
+11 -21
View File
@@ -1,36 +1,26 @@
# hadolint ignore=DL3007
FROM ghcr.io/truecharts/ubuntu:latest@sha256:cbe66cbca1ddd2a82093675067c363af8bbc6713b645bc77cb1706578a01facd
FROM tccr.io/tccr/alpine:latest
ARG TARGETPLATFORM
ARG VERSION
USER root
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
SHELL ["/bin/sh", "-o", "pipefail", "-c"]
# hadolint ignore=DL3008,DL3015,SC2086,SC2155
RUN \
apt-get -qq update \
&& \
apt-get -qq install -y \
postgresql-client \
&& \
apk update && \
apk --no-cache update && \
apk --no-cache add \
postgresql-client && \
case "${TARGETPLATFORM}" in \
'linux/amd64') export ARCH='linux-x64' ;; \
esac \
&& apt-get remove -y \
jq \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
&& apt-get autoremove -y \
&& apt-get clean \
&& \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/ \
&& chmod -R u=rwX,go=rX /app \
&& printf "umask %d" "${UMASK}" >> /etc/bash.bashrc \
&& update-ca-certificates
esac && \
apk del --no-cache jq && \
rm -rf /var/cache/apk/* /tmp/* /var/tmp/* && \
chmod -R u=rwX,go=rX /app && \
printf "umask %d" "${UMASK}" >> /etc/profile
USER apps
+14 -21
View File
@@ -1,36 +1,29 @@
# hadolint ignore=DL3007
FROM ghcr.io/truecharts/ubuntu:latest@sha256:cbe66cbca1ddd2a82093675067c363af8bbc6713b645bc77cb1706578a01facd
FROM tccr.io/tccr/alpine:latest
ARG TARGETPLATFORM
ARG VERSION
USER root
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
SHELL ["/bin/ash", "-o", "pipefail", "-c"]
# hadolint ignore=DL3008,DL3015,SC2086,SC2155
RUN \
apt-get -qq update \
&& \
apt-get -qq install -y \
redis-server \
&& \
apk update && \
apk update && \
apk add --no-cache \
redis \
bash && \
case "${TARGETPLATFORM}" in \
'linux/amd64') export ARCH='linux-x64' ;; \
esac \
&& apt-get remove -y \
jq \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
&& apt-get autoremove -y \
&& apt-get clean \
&& \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/ \
&& chmod -R u=rwX,go=rX /app \
&& printf "umask %d" "${UMASK}" >> /etc/bash.bashrc \
&& update-ca-certificates
esac && \
apk del \
jq && \
rm -rf /var/cache/apk/* && \
chmod -R u=rwX,go=rX /app && \
printf "umask %d" "${UMASK}" >> /etc/profile && \
update-ca-certificates
USER apps
-1
View File
@@ -1 +0,0 @@
jammy
-27
View File
@@ -1,27 +0,0 @@
ARG TARGETPLATFORM
ARG VERSION
# hadolint ignore=DL3007
FROM freeradius/freeradius-server:${VERSION}
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
# hadolint ignore=DL3008,DL3015,SC2086,SC2155
RUN \
rm /docker-entrypoint.sh && \
rm -Rf /etc/raddb
VOLUME /etc/raddb
COPY ./containers/apps/freeradius/entrypoint.sh /docker-entrypoint.sh
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps"
ARG CONTAINER_NAME
ARG CONTAINER_VER
LABEL org.opencontainers.image.licenses="BSD-3-Clause"
LABEL org.opencontainers.image.title="${CONTAINER_NAME}"
LABEL org.opencontainers.image.url="https://truecharts.org/docs/charts/${CONTAINER_NAME}"
LABEL org.opencontainers.image.version="${CONTAINER_VER}"
LABEL org.opencontainers.image.description="Container for ${CONTAINER_NAME} by TrueCharts"
LABEL org.opencontainers.image.authors="TrueCharts"
LABEL org.opencontainers.image.documentation="https://truecharts.org/docs/charts/${CONTAINER_NAME}"
View File
-33
View File
@@ -1,33 +0,0 @@
#!/bin/sh
set -e
if [ -f "/etc/raddb/clients.conf" ]; then
echo "Radius config already exists, skipping config copy..."
else
echo "Radius config does not exist, copying..."
cp -Rf /etc/freeradius/* /etc/raddb/
fi
chown -R freerad:freerad /etc/raddb/
# this if will check if the first argument is a flag
# but only works if all arguments require a hyphenated flag
# -v; -SL; -f arg; etc will work, but not arg1 arg2
if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then
set -- freeradius -d /etc/raddb "$@"
fi
# check for the expected command
if [ "$1" = 'freeradius' ]; then
shift
exec freeradius -f -d /etc/raddb "$@"
fi
# many people are likely to call "radiusd" as well, so allow that
if [ "$1" = 'radiusd' ]; then
shift
exec freeradius -f -d /etc/raddb "$@"
fi
# else default to run whatever the user wanted like "bash" or "sh"
exec "$@"
-4
View File
@@ -1,4 +0,0 @@
---
port:
udp:1812:
listening: true
@@ -1,2 +0,0 @@
#!/usr/bin/env bash
cat "./base/ubuntu/VERSION"
@@ -1,6 +0,0 @@
#!/usr/bin/env bash
version=$(curl "https://registry.hub.docker.com/v1/repositories/freeradius/freeradius-server/tags" | jq --raw-output '.[].name' | grep -v layer | grep -v alpine | grep -v latest | tail -n1)
version="${version#*v}"
version="${version#*release-}"
echo "${version}"
-59
View File
@@ -1,59 +0,0 @@
# hadolint ignore=DL3007
FROM ghcr.io/truecharts/ubuntu:latest@sha256:cbe66cbca1ddd2a82093675067c363af8bbc6713b645bc77cb1706578a01facd
ARG TARGETPLATFORM
ARG VERSION
USER root
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
# hadolint ignore=DL3008,DL3015,SC2086,SC2155
RUN \
apt-get -qq update \
&& \
case "${TARGETPLATFORM}" in \
'linux/amd64') export ARCH='linux-x64' ;; \
esac \
&& \
export URL=$(curl -sX GET https://api.github.com/repos/Ombi-app/Ombi/releases | \
jq -r '.[] | select(.tag_name | contains(env.VERSION)) | .assets[] | select(.browser_download_url | contains(env.ARCH)) | .browser_download_url') \
&& curl -fsSL -o /tmp/ombi.tgz "${URL}" \
&& tar ixzf /tmp/ombi.tgz -C /app \
&& \
rm -rf \
/tmp/ombi.tgz \
&& printf "UpdateMethod=docker\nPackageVersion=%s\nPackageAuthor=[TrueCharts Project](https://truecharts.org)" "${VERSION}" > /app/package_info \
&& apt-get remove -y \
jq \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
&& apt-get autoremove -y \
&& apt-get clean \
&& \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/ \
&& chmod -R u=rwX,go=rX /app \
&& printf "umask %d" "${UMASK}" >> /etc/bash.bashrc \
&& update-ca-certificates
USER apps
EXPOSE 3579
COPY ./containers/apps/ombi/entrypoint.sh /entrypoint.sh
CMD ["/entrypoint.sh"]
LABEL "maintainer"="TrueCharts <info@truecharts.org>"
LABEL "org.opencontainers.image.source"="https://github.com/truecharts/apps"
ARG CONTAINER_NAME
ARG CONTAINER_VER
LABEL org.opencontainers.image.licenses="BSD-3-Clause"
LABEL org.opencontainers.image.title="${CONTAINER_NAME}"
LABEL org.opencontainers.image.url="https://truecharts.org/docs/charts/${CONTAINER_NAME}"
LABEL org.opencontainers.image.version="${CONTAINER_VER}"
LABEL org.opencontainers.image.description="Container for ${CONTAINER_NAME} by TrueCharts"
LABEL org.opencontainers.image.authors="TrueCharts"
LABEL org.opencontainers.image.documentation="https://truecharts.org/docs/charts/${CONTAINER_NAME}"
-1
View File
@@ -1 +0,0 @@
4.46.4
-7
View File
@@ -1,7 +0,0 @@
#!/usr/bin/env bash
#shellcheck disable=SC1091
source "/shim/umask.sh"
source "/shim/vpn.sh"
exec /app/Ombi --host http://0.0.0.0:3579 --storage /config ${EXTRA_ARGS}
-6
View File
@@ -1,6 +0,0 @@
#!/usr/bin/env bash
version=$(curl -sX GET "https://api.github.com/repos/Ombi-app/Ombi/releases" | jq --raw-output '.[0].tag_name')
version="${version#*v}"
version="${version#*release-}"
printf "%s" "${version}"