Compare commits
15 Commits
base-mga9-
...
base-1.4.0
| Author | SHA1 | Date | |
|---|---|---|---|
| f07cca6df2 | |||
| 9175496bde | |||
| a07e6d6fc6 | |||
| e9109899d7 | |||
| 8c8276691d | |||
| e64e12a8dd | |||
| c8b8c35970 | |||
| f378119ad0 | |||
| 5095c8d9ac | |||
| 77ed04d07b | |||
| db9a0b4279 | |||
| 065a98426c | |||
| c2b1abf29d | |||
| c576a65a93 | |||
| e9bafeed3f |
236
Dockerfile
236
Dockerfile
@@ -1,8 +1,9 @@
|
||||
# Rx3 Base Mageia-9 Docker Image
|
||||
# Rx3-Docker/Base Docker Image
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
FROM mageia:9
|
||||
|
||||
ARG IMG_URL
|
||||
ARG LANG
|
||||
ARG LANGUAGE
|
||||
ARG LOCALTIME
|
||||
@@ -18,34 +19,241 @@ LANGUAGE=${LANGUAGE}"
|
||||
ARG RX3_SH='export PAGER=less \n\
|
||||
export MANPAGER="less -isr" \n\
|
||||
export EDITOR=emacs \n\
|
||||
export ISL_FILE=/etc/img_stack_log \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
cateval() \n\
|
||||
{ \n\
|
||||
while read line \n\
|
||||
do \n\
|
||||
eval $line 2>/dev/null \n\
|
||||
eval echo $( echo $line | sed -e `s/"/\\"/g`) \n\
|
||||
done <$1 \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f cateval \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
print() \n\
|
||||
{ \n\
|
||||
if [[ "$1" == "-i" ]] \n\
|
||||
then \n\
|
||||
shift \n\
|
||||
\n\
|
||||
str="%s"`\\\\n` \n\
|
||||
else \n\
|
||||
str="%s"`\\n` \n\
|
||||
fi \n\
|
||||
\n\
|
||||
printf "${str}" "$*" \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f print \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
file_enable() \n\
|
||||
{ \n\
|
||||
fd_file="$1" \n\
|
||||
fd_state="$2" \n\
|
||||
\n\
|
||||
\n\
|
||||
if [[ "$fd_state" == "TRUE" ]] \n\
|
||||
then \n\
|
||||
if [[ ! -f "${fd_file}" ]] \n\
|
||||
then \n\
|
||||
mv ${fd_file}.disable ${fd_file} \n\
|
||||
fi \n\
|
||||
else \n\
|
||||
if [[ -f "${fd_file}" ]] \n\
|
||||
then \n\
|
||||
mv ${fd_file} ${fd_file}.disable \n\
|
||||
fi \n\
|
||||
fi \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f file_enable \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
isl_add() \n\
|
||||
{ \n\
|
||||
url="$1" \n\
|
||||
\n\
|
||||
\n\
|
||||
reg=${url%%/*} \n\
|
||||
\n\
|
||||
if [[ "${reg}" == *.* ]] \n\
|
||||
then \n\
|
||||
url=${url#*/} \n\
|
||||
else \n\
|
||||
reg="-" \n\
|
||||
fi \n\
|
||||
\n\
|
||||
tag=${url/*:} \n\
|
||||
name=${url%:*} \n\
|
||||
\n\
|
||||
if [[ "${tag}" == "${name}" ]] \n\
|
||||
then \n\
|
||||
echo "Bad tag format in URL!" \n\
|
||||
return 1 \n\
|
||||
fi \n\
|
||||
\n\
|
||||
ts=$(date -u +"%Y/%m/%d %H:%M:%S") \n\
|
||||
\n\
|
||||
if [[ ! -e ${ISL_FILE} ]] \n\
|
||||
then \n\
|
||||
id=1 \n\
|
||||
else \n\
|
||||
id=$(( $(wc -l <${ISL_FILE}) + 1)) \n\
|
||||
fi \n\
|
||||
\n\
|
||||
str="${id} ${ts} ${reg} ${name} ${tag}" \n\
|
||||
\n\
|
||||
if [[ $id == "1" ]] \n\
|
||||
then \n\
|
||||
echo "${str}" >${ISL_FILE} \n\
|
||||
else \n\
|
||||
sed -i `1i\`"${str}" ${ISL_FILE} \n\
|
||||
fi \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f isl_add \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
isl_top() \n\
|
||||
{ \n\
|
||||
line=$( head -1 ${ISL_FILE}) \n\
|
||||
\n\
|
||||
if [[ "$1" == "-i" ]] \n\
|
||||
then \n\
|
||||
set ${line} \n\
|
||||
\n\
|
||||
echo "$5:$6" \n\
|
||||
else \n\
|
||||
echo "${line}" \n\
|
||||
fi \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f isl_top \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
isl_cat() \n\
|
||||
{ \n\
|
||||
if [[ "$1" == "-r" ]] \n\
|
||||
then \n\
|
||||
tac ${ISL_FILE} \n\
|
||||
else \n\
|
||||
cat ${ISL_FILE} \n\
|
||||
fi \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f isl_cat \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
isl_html_dump() \n\
|
||||
{ \n\
|
||||
r_flag="" \n\
|
||||
i_flag="" \n\
|
||||
\n\
|
||||
while [[ $# -gt 0 ]] \n\
|
||||
do \n\
|
||||
if [[ "$1" == "-r" ]] \n\
|
||||
then \n\
|
||||
r_flag="$1" \n\
|
||||
else \n\
|
||||
if [[ "$1" == "-i" ]] \n\
|
||||
then \n\
|
||||
i_flag="-i" \n\
|
||||
fi \n\
|
||||
fi \n\
|
||||
\n\
|
||||
shift \n\
|
||||
done \n\
|
||||
\n\
|
||||
i=1 \n\
|
||||
\n\
|
||||
isl_cat "${r_flag}" | while read line \n\
|
||||
do \n\
|
||||
set $line \n\
|
||||
\n\
|
||||
if [[ $(( $i % 2)) -eq 0 ]] \n\
|
||||
then \n\
|
||||
print "${i_flag}" ` <tr class="shade">` \n\
|
||||
else \n\
|
||||
print "${i_flag}" " <tr>" \n\
|
||||
fi \n\
|
||||
\n\
|
||||
j=1 \n\
|
||||
while [[ $j -lt 7 ]] \n\
|
||||
do \n\
|
||||
if [[ "$j" == "1" ]] \n\
|
||||
then \n\
|
||||
print "${i_flag}" " <th>${!j}</th>" \n\
|
||||
else \n\
|
||||
print "${i_flag}" " <td>${!j}</td>" \n\
|
||||
fi \n\
|
||||
\n\
|
||||
j=$(( $j + 1)) \n\
|
||||
done \n\
|
||||
\n\
|
||||
print "${i_flag}" " </tr>" \n\
|
||||
i=$(( $i + 1)) \n\
|
||||
done \n\
|
||||
} \n\
|
||||
\n\
|
||||
export -f isl_html_dump \n\
|
||||
\n\
|
||||
\n\
|
||||
\n\
|
||||
alias ll="ls -la" \n\
|
||||
alias em="emacs"'
|
||||
#---------------------------------------------------------------------------------------------------
|
||||
|
||||
ARG MIRRORLIST_MGA='http://mirror.xor.rx3/mageia/distrib/9/x86_64 https://mirror.rx3.net/mageia/distrib/9/x86_64 ftp://ftp.proxad.net/mirrors/mageia.org/distrib/9/x86_64 http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/9/x86_64'
|
||||
ARG MIRRORLIST_RX3='http://mirror.xor.rx3/rx3/distrib/9/x86_64 https://mirror.rx3.net/rx3/distrib/9/x86_64'
|
||||
|
||||
ARG GIT_MPM_REPO='https://git.rx3.org/gitea/Rx3/mpm/raw/tag/mpm-1.0.0'
|
||||
|
||||
|
||||
RUN echo -e "${LOCALE_CONF}" | sed -e 's/ *$//' > /etc/locale.conf \
|
||||
&& ln -s /usr/share/zoneinfo/${LOCALTIME} /etc/localtime \
|
||||
&& urpmi.removemedia -a \
|
||||
&& urpmi.addmedia --distrib http://ftp.free.fr/mirrors/mageia.org/distrib/9/x86_64 \
|
||||
&& urpmi.update --no-ignore "Nonfree Release" "Nonfree Updates" "Tainted Release" "Tainted Updates" \
|
||||
&& urpmi.update -a \
|
||||
&& urpmi --force --replacepkgs glibc locales locales-en \
|
||||
&& urpmi --force xz \
|
||||
&& urpmi --force --auto-update \
|
||||
&& rm -f /var/log/dnf* /var/log/hawkey.log \
|
||||
&& echo -e "${RX3_SH}" | sed -e "s/\`/'/g" -e 's/ *$//' >/etc/profile.d/rx3.sh
|
||||
|
||||
RUN echo -e "${LOCALE_CONF}" | sed -e 's/ *$//' > /etc/locale.conf \
|
||||
&& ln -s /usr/share/zoneinfo/${LOCALTIME} /etc/localtime \
|
||||
&& urpmi.removemedia -a \
|
||||
&& rm -f /var/cache/urpmi/mirrors.cache \
|
||||
&& urpmi.addmedia --distrib --mirrorlist "${MIRRORLIST_MGA}" \
|
||||
&& urpmi.addmedia --distrib --mirrorlist "${MIRRORLIST_RX3}" \
|
||||
&& for arch in "" "32bit "; do for media in "Core" "Nonfree" "Tainted"; do for type in "Release" "Updates"; do urpmi.update --no-ignore "${media} ${arch}${type}"; done; done; done \
|
||||
&& urpmi.update -a \
|
||||
&& urpmi --force --replacepkgs glibc locales locales-en \
|
||||
&& rpm -e $(rpm -qa | grep -e python -e dnf) gobject-introspection \
|
||||
&& rpm -e lib64comps0 lib64gio2.0_0 lib64girepository1.0_1 lib64glib-gir2.0 lib64gpgme11 lib64modulemd2 lib64modulemd-gir2.0 lib64mpdec3 lib64nsl2 lib64repo0 lib64rpmsign9 lib64solv1 lib64yaml0_2 lib64zck1 \
|
||||
&& urpmi --force --auto-update \
|
||||
&& rm -f /var/log/dnf* /var/log/hawkey.log \
|
||||
&& echo -e "${RX3_SH}" | sed -e "s/\`/'/g" -e 's/ *$//' >/etc/profile.d/rx3.sh \
|
||||
&& . /etc/profile.d/rx3.sh && isl_add ${IMG_URL}
|
||||
|
||||
ADD ${GIT_MPM_REPO}/sbin/mpm /usr/local/sbin
|
||||
ADD ${GIT_MPM_REPO}/etc/mpm.conf /etc
|
||||
RUN chmod u+x /usr/local/sbin/mpm
|
||||
|
||||
#COPY usr/local/sbin/mpm /usr/local/sbin
|
||||
#COPY etc/mpm.conf /etc
|
||||
|
||||
|
||||
FROM scratch
|
||||
|
||||
ARG IMG_NAME
|
||||
ARG IMG_FULL_NAME
|
||||
ARG IMG_NAME_FULL
|
||||
ARG IMG_VERSION
|
||||
ARG IMG_MAINTAINER
|
||||
|
||||
LABEL org.rx3.${IMG_NAME}.name=${IMG_FULL_NAME}
|
||||
LABEL org.rx3.${IMG_NAME}.name=${IMG_NAME_FULL}
|
||||
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
|
||||
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
|
||||
LABEL maintainer=${IMG_MAINTAINER}
|
||||
|
||||
22
ReadMe.txt
22
ReadMe.txt
@@ -1,14 +1,24 @@
|
||||
Welcome to Rx3/Base-Mga9 docker image!
|
||||
Welcome to Rx3-Docker/Base docker image!
|
||||
|
||||
|
||||
|
||||
This is project aims to build a Mageia 9 base docker image to be used by others Rx3 packaging projects.
|
||||
This project aims to build a Mageia base docker image to be used by other Rx3 packaging projects.
|
||||
|
||||
Features:
|
||||
- Curtently based on official Mageia9 docker image from github.io,
|
||||
- Enable urpmi "Core", "Nonfree" and "Tainted" medium from "http://ftp.free.fr/" mirror,
|
||||
- Curtently based on official Mageia 9 docker image from github.io,
|
||||
- Enable urpmi "Core", "Nonfree" and "Tainted" medium (x86-64 + i586) from mirror list:
|
||||
- http://mirror.xor.rx3/,
|
||||
- https://mirror.rx3.net/,
|
||||
- ftp://ftp.proxad.net/,
|
||||
- http://distrib-coffee.ipsl.jussieu.fr/,
|
||||
- Enable urpmi "Rx3" default and testings (disabled) media from mirror list:
|
||||
- http://mirror.xor.rx3/,
|
||||
- https://mirror.rx3.net/,
|
||||
- Add Rx3 bash seting,
|
||||
- Mono layered (Mageia + Rx3 Updates)
|
||||
- Mono layered (Mageia + Rx3 Updates),
|
||||
- Strip down base (python & dnf removed),
|
||||
- Image stacking log support.
|
||||
|
||||
|
||||
|
||||
Enjoy it!
|
||||
@@ -16,4 +26,4 @@ Enjoy it!
|
||||
Your Rx3 Team.
|
||||
|
||||
arnaud@rx3.net
|
||||
https://git.rx3.org/gitea/rx3/base-mga9
|
||||
https://git.rx3.org/gitea/rx3-docker/base
|
||||
|
||||
@@ -1,3 +1,97 @@
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.4.0 - A. GIBERT - 2026/02/16
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add Image Stacking Log functions,
|
||||
- Add ISL support,
|
||||
- Rebuild for updates.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.3.6 - A. GIBERT - 2025/11/28
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Rebuild for updates,
|
||||
- Rename file_disenable function into file_enable.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.3.5 - A. GIBERT - 2025/09/19
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Rebuild for updates.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.3.4 - A. GIBERT - 2025/06/26
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add file_disenable() function,
|
||||
- Rebuild for updates.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.3.3 - A. GIBERT - 2025/05/28
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add Rx3 testing media source,
|
||||
- Rebuild for updates.
|
||||
|
||||
|
||||
|
||||
Rx3-Docker/Base V 1.3.2 - A. GIBERT - 2025/04/13
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add i586 arch,
|
||||
- Rebuild for updates.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.3.1 - A. GIBERT - 2025/03/08
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add Rx3 urpmi media source,
|
||||
- Rebuild for updates.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3-Docker/Base V 1.3.0 - A. GIBERT - 2024/11/10
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Move & Rename repo from Rx3/Base-MGA9 to Rx3-Docker/Base,
|
||||
- New version naming standard,
|
||||
- Now use docker_tools for .env building,
|
||||
- Add ceteval bash function,
|
||||
- Strip down the base:
|
||||
- Remove python,
|
||||
- Remove dnf,
|
||||
- Remove xz,
|
||||
- Remove unused libraries.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3/Base-Mga9 V 1.2.6 - A. GIBERT - 2024/10/04
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add mpm 1.0.0 (Meta Package Manager).
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3/Base-Mga9 V 1.2.5 - A. GIBERT - 2024/10/02
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
- Add mirror list to urpmi and use Rx3 internal & external mirrors first.
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
Rx3/Base-Mga9 V 1.2.4 - A. GIBERT - 2024/08/28
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
30
compose.yaml
30
compose.yaml
@@ -1,24 +1,26 @@
|
||||
# Rx3 Base Mageia-9 Docker Image
|
||||
# Rx3-Docker/Base Docker Image
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
name: ${IMG_NAME}
|
||||
name: ${IMG_NAME}
|
||||
|
||||
services:
|
||||
|
||||
default:
|
||||
container_name: ${IMG_NAME}
|
||||
base:
|
||||
container_name: ${IMG_NAME}
|
||||
hostname: ${IMG_NAME}
|
||||
|
||||
image: ${IMG_URL}
|
||||
image: ${IMG_URL}
|
||||
|
||||
build:
|
||||
context: .
|
||||
context: .
|
||||
args:
|
||||
- IMG_NAME=${IMG_NAME}
|
||||
- IMG_FULL_NAME=${IMG_FULL_NAME}
|
||||
- IMG_VERSION=${IMG_VERSION}
|
||||
- IMG_MAINTAINER=${IMG_MAINTAINER}
|
||||
- LANG=${LANG}
|
||||
- LANGUAGE=${LANGUAGE}
|
||||
- LOCALTIME=${LOCALTIME}
|
||||
IMG_NAME: ${IMG_NAME}
|
||||
IMG_NAME_FULL: ${IMG_NAME_FULL}
|
||||
IMG_VERSION: ${IMG_VERSION}
|
||||
IMG_MAINTAINER: ${IMG_MAINTAINER}
|
||||
IMG_URL: ${IMG_URL}
|
||||
LANG: ${LANG}
|
||||
LANGUAGE: ${LANGUAGE}
|
||||
LOCALTIME: ${LOCALTIME}
|
||||
|
||||
restart: unless-stopped
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
# Rx3 Base Mageia-9 Docker Image
|
||||
# Rx3-Docker/Base Docker Image
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# Global Settings
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
IMG_ORG="rx3"
|
||||
IMG_REGISTRY="docker.xor.rx3:5000"
|
||||
IMG_URL_PREFIX="${IMG_REGISTRY}/${IMG_ORG}"
|
||||
ORG_NAME="rx3-docker"
|
||||
ORG_REGISTRY="docker.xor.rx3:5000"
|
||||
|
||||
ORG_URL_PREFIX="${ORG_REGISTRY}/${ORG_NAME}"
|
||||
|
||||
|
||||
|
||||
@@ -15,12 +16,13 @@ IMG_URL_PREFIX="${IMG_REGISTRY}/${IMG_ORG}"
|
||||
# Image Settings
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
IMG_NAME="base-mga9"
|
||||
IMG_FULL_NAME="Rx3 Base Mageia-9 Docker Image"
|
||||
IMG_VERSION="1.2.4"
|
||||
IMG_URL="${IMG_URL_PREFIX}/${IMG_NAME}:${IMG_VERSION}"
|
||||
IMG_NAME="base"
|
||||
IMG_NAME_FULL="Rx3-Docker/Base Docker Image"
|
||||
IMG_VERSION="1.4.0-mga9"
|
||||
IMG_MAINTAINER='"Arnaud G. GIBERT" <arnaud@rx3.net>'
|
||||
|
||||
IMG_URL_PREFIX="${ORG_URL_PREFIX}"
|
||||
IMG_URL="${IMG_URL_PREFIX}/${IMG_NAME}:${IMG_VERSION}"
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
Reference in New Issue
Block a user