From f0f13bef5be7c3322fc0beb9ba03379e57b5ffae Mon Sep 17 00:00:00 2001 From: Dnomd343 Date: Fri, 14 Oct 2022 23:54:55 +0800 Subject: [PATCH] build: update docker image --- Dockerfile | 43 +++++++++++++++++++++---------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/Dockerfile b/Dockerfile index d19e910..5ea9753 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,37 +1,36 @@ FROM alpine:3.16 AS vlmcsd -ENV VLMCSD_VERSION="svn1113" +ENV VLMCSD="svn1113" RUN apk add build-base -RUN wget https://github.com/Wind4/vlmcsd/archive/refs/tags/${VLMCSD_VERSION}.tar.gz && tar xf ${VLMCSD_VERSION}.tar.gz -WORKDIR ./vlmcsd-${VLMCSD_VERSION}/ +RUN wget https://github.com/Wind4/vlmcsd/archive/refs/tags/${VLMCSD}.tar.gz && tar xf ${VLMCSD}.tar.gz +WORKDIR ./vlmcsd-${VLMCSD}/ RUN make && mv ./bin/vlmcs ./bin/vlmcsd ./etc/vlmcsd.kmd /tmp/ FROM alpine:3.16 AS iconv -ENV ICONV_VERSION="1.17" -RUN wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-${ICONV_VERSION}.tar.gz && \ - tar xf libiconv-${ICONV_VERSION}.tar.gz +ENV ICONV="1.17" RUN apk add build-base php8-dev -RUN wget https://php.net/distributions/php-$(php -v | grep -E '^PHP' | awk '{print $2}').tar.gz && \ - tar xf php-*.tar.gz && mv ./php-*/ ./php/ -WORKDIR ./libiconv-${ICONV_VERSION}/ -RUN ./configure && make && make install && \ - mkdir -p /iconv/local/lib/ && cp -d /usr/local/lib/libiconv.so* /iconv/local/lib/ -WORKDIR ../php/ext/iconv/ -RUN sed -i '/blahblah/i\return 0;' config.m4 && \ - phpize && ./configure --with-iconv=/usr/local/ && make && \ - mkdir -p /iconv/lib/php8/modules/ && mv ./modules/iconv.so /iconv/lib/php8/modules/ +RUN wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-${ICONV}.tar.gz && tar xf libiconv-${ICONV}.tar.gz +RUN wget https://php.net/distributions/php-$(php -v | awk 'NR==1 {print $2}').tar.gz && \ + tar xf php-*.tar.gz && mv ./php-*/ ./php8/ +WORKDIR /libiconv-${ICONV}/ +RUN ./configure && make && make install && cp ./lib/.libs/libiconv.so.2 /tmp/ +WORKDIR /php8/ext/iconv/ +RUN sed -i '/blahblah/i\return 0;' config.m4 && phpize && \ + ./configure --with-iconv=/usr/local && make && mv ./modules/iconv.so /tmp/ +RUN strip /tmp/*.so* FROM alpine:3.16 AS asset -COPY --from=iconv /iconv/ /asset/usr/ COPY --from=vlmcsd /tmp/vlmcs* /asset/usr/bin/ -RUN apk add php8-fpm && mkdir -p /asset/etc/php8/ && \ - sed -i 's/^;\(pid\)/\1/' /etc/php8/php-fpm.conf && \ - mv /etc/php8/php-fpm.conf /asset/etc/php8/ -COPY . /asset/kms-server/ -RUN mkdir -p /asset/etc/ && mv /asset/kms-server/nginx/ /asset/etc/ +COPY --from=iconv /tmp/libiconv.so.2 /asset/usr/local/lib/ +COPY --from=iconv /tmp/iconv.so /asset/usr/lib/php8/modules/ +RUN apk add php8-fpm +WORKDIR /asset/etc/php8/ +RUN sed -i 's/^;\(pid\)/\1/' /etc/php8/php-fpm.conf && mv /etc/php8/php-fpm.conf ./ +COPY ./nginx/ /asset/etc/nginx/ +COPY ./ /asset/kms-server/ FROM alpine:3.16 RUN apk add --no-cache nginx php8 php8-fpm php8-iconv php8-pcntl php8-posix COPY --from=asset /asset/ / EXPOSE 1688/tcp 1689/tcp WORKDIR /kms-server/ -ENTRYPOINT ["php", "main.php"] +ENTRYPOINT ["kms.php"]