docker: centos 5 builder; fix CMD

This commit is contained in:
boypt
2026-04-09 03:45:27 +00:00
parent bf5d47cd95
commit b2eaa692fa
7 changed files with 29 additions and 17 deletions

View File

@@ -170,16 +170,17 @@ case $arg1 in
exit 0
;;
*)
[[ -n $arg1 ]] && \
[[ -n $arg1 && ! -d $arg1 ]] && \
echo -e "Subcmd: $arg1 not found.\n GETEL, GETRPM, RPMDIR" && \
exit 1
;;
esac
# manual specified dist
[[ -n $arg1 && -d $__dir/$arg1 ]] && rpmtopdir=$arg1 && BUILD_RPM && exit 0
TOPDIR_SELECT
[[ -n $arg1 && -d $arg1 ]] && rpmtopdir=$arg1 && BUILD_RPM && exit 0
# auto select dist
TOPDIR_SELECT
if [[ ! -d $rpmtopdir ]]; then
echo "This script works only in el5/el6/el7"
echo "eg: ${0} el7"

View File

@@ -21,4 +21,4 @@ RUN export CHINA_MIRROR="$CHINA_MIRROR" && \
yum install -y wget autoconf automake gcc make rpm-build openssl-devel pam-devel krb5-devel zlib-devel libXt-devel libX11-devel perl perl-IPC-Cmd perl-Time-Piece && \
yum clean all
CMD ["./compile.sh"]
CMD ["./docker/docker_compile.sh"]

View File

@@ -26,4 +26,4 @@ RUN export CHINA_MIRROR="$CHINA_MIRROR" && \
yum clean all && \
rm -rfv /data/
CMD ["./compile.sh"]
CMD ["./docker/docker_compile.sh"]

View File

@@ -31,4 +31,4 @@ RUN if [ "$VERSION_NUM" = "8" ]; then \
yum install -y wget autoconf automake gcc make perl rpm-build pam-devel krb5-devel zlib-devel openssl-devel systemd-devel && \
yum clean all
CMD ["./compile.sh"]
CMD ["./docker/docker_compile.sh"]

View File

@@ -1,22 +1,33 @@
FROM centos:5
FROM centos:5 AS builder
ARG CHINA_MIRROR=1
WORKDIR /data
# Copy all files
COPY ./docker/ /data/docker/
COPY ./docker/*.sh /data/docker/
COPY ./downloads/perl* /data/
RUN export CHINA_MIRROR="$CHINA_MIRROR" && \
bash ./docker/modify_yum_source.sh && \
yum install -y gcc44 autoconf automake make rpm-build pam-devel krb5-devel zlib-devel
yum install -y gcc44 make
RUN mkdir -p perl && tar xfz perl-*.tar.gz --strip-components=1 -C perl && \
pushd perl && export CC=gcc44 && ./configure.gnu && make -j2 && make install.perl && popd && \
rm -rfv /data/
RUN mkdir -p perl && tar xfz perl-*.tar.gz --strip-components=1 -C perl && pushd perl && \
./Configure -des -Dusethreads -Uuseshrplib -Uoptimize=-g -Dcc=gcc44 -Dprefix=/usr/local/perl && \
make $(rpm --eval %{?_smp_mflags}) && make install_strip
RUN rm -rf perl-*.tar.gz perl
FROM centos:5
ARG CHINA_MIRROR=1
ENV PATH=/usr/local/perl/bin:$PATH
WORKDIR /data
COPY --from=builder /usr/local/perl /usr/local/perl
COPY ./docker/*.sh /data/docker/
RUN export CHINA_MIRROR="$CHINA_MIRROR" && \
bash ./docker/modify_yum_source.sh && \
yum install -y gcc44 autoconf automake make rpm-build pam-devel krb5-devel zlib-devel
RUN cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base-i386.repo && \
sed -i 's|]$|-i386]|;s|\$basearch|i386|g' /etc/yum.repos.d/CentOS-Base-i386.repo && yum makecache && \
yum install -y glibc-devel.i386 libgcc.i386 pam-devel.i386 krb5-devel.i386 zlib-devel.i386
CMD ["./compile.sh"]
CMD ["./docker/docker_compile.sh"]

View File

@@ -31,4 +31,4 @@ RUN if [ "$CHINA_MIRROR" != "0" ]; then \
perl perl-IPC-Cmd perl-Time-Piece wget && \
yum clean all
CMD ["./compile.sh"]
CMD ["./docker/docker_compile.sh"]

View File

@@ -29,4 +29,4 @@ RUN if [ "$CHINA_MIRROR" != "0" ]; then \
yum install -y wget autoconf automake gcc perl make rpm-build pam-devel krb5-devel zlib-devel libXt-devel libX11-devel gtk2-devel systemd-devel openssl-devel && \
yum clean all
CMD ["./compile.sh"]
CMD ["./docker/docker_compile.sh"]