# debian.sh --arch 'amd64' out/ 'bookworm' '@1753056000' |
LABEL author=Ym0t maintainer=YmoT@tuta.com |
ARG PHP_VERSION=8.4 |
ENV DEBIAN_FRONTEND=noninteractive |
RUN |1 PHP_VERSION=8.4 /bin/sh -c apt-get update && apt-get install -y git apt-transport-https lsb-release ca-certificates wget nginx && ARCH=$(uname -m) && if [ "$ARCH" = "x86_64" ]; then wget -O /tmp/cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb; elif [ "$ARCH" = "aarch64" ]; then wget -O /tmp/cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64.deb; else echo "Unsupported architecture: $ARCH" && exit 1; fi && dpkg -i /tmp/cloudflared.deb && rm /tmp/cloudflared.deb && wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg && echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list && apt-get update && apt-get install -y --no-install-recommends php${PHP_VERSION} php${PHP_VERSION}-fpm php${PHP_VERSION}-cli php${PHP_VERSION}-common php${PHP_VERSION}-mysqlnd php${PHP_VERSION}-pdo php${PHP_VERSION}-sybase php${PHP_VERSION}-xml php${PHP_VERSION}-bcmath php${PHP_VERSION}-calendar php${PHP_VERSION}-ctype php${PHP_VERSION}-curl php${PHP_VERSION}-dom php${PHP_VERSION}-mbstring php${PHP_VERSION}-fileinfo php${PHP_VERSION}-ftp php${PHP_VERSION}-gd php${PHP_VERSION}-gettext php${PHP_VERSION}-gmp php${PHP_VERSION}-iconv php${PHP_VERSION}-igbinary php${PHP_VERSION}-imagick php${PHP_VERSION}-imap php${PHP_VERSION}-intl php${PHP_VERSION}-ldap php${PHP_VERSION}-exif php${PHP_VERSION}-memcache php${PHP_VERSION}-mongodb php${PHP_VERSION}-msgpack php${PHP_VERSION}-mysqli php${PHP_VERSION}-odbc php${PHP_VERSION}-pcov php${PHP_VERSION}-pgsql php${PHP_VERSION}-phar php${PHP_VERSION}-posix php${PHP_VERSION}-ps php${PHP_VERSION}-pspell php${PHP_VERSION}-readline php${PHP_VERSION}-shmop php${PHP_VERSION}-simplexml php${PHP_VERSION}-soap php${PHP_VERSION}-sockets php${PHP_VERSION}-sqlite3 php${PHP_VERSION}-sysvmsg php${PHP_VERSION}-sysvsem php${PHP_VERSION}-sysvshm php${PHP_VERSION}-tokenizer php${PHP_VERSION}-xmlreader php${PHP_VERSION}-xmlwriter php${PHP_VERSION}-xsl php${PHP_VERSION}-zip php${PHP_VERSION}-mailparse php${PHP_VERSION}-memcached php${PHP_VERSION}-inotify php${PHP_VERSION}-maxminddb php${PHP_VERSION}-protobuf php${PHP_VERSION}-opcache php${PHP_VERSION}-dev && wget -q -O /tmp/composer.phar https://getcomposer.org/download/latest-stable/composer.phar && SHA256=$(wget -q -O - https://getcomposer.org/download/latest-stable/composer.phar.sha256) && echo "$SHA256 /tmp/composer.phar" | sha256sum -c - && mv /tmp/composer.phar /usr/local/bin/composer && chmod +x /usr/local/bin/composer && rm -rf /var/lib/apt/lists/* # buildkit |
RUN |1 PHP_VERSION=8.4 /bin/sh -c apt-get update && apt-get install -y gnupg curl && mkdir -p /etc/apt/keyrings && curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list && apt-get update && apt-get install -y nodejs && npm install -g npm@latest && npm install -g pnpm && apt-get remove -y gnupg && apt-get autoremove -y && rm -rf /var/lib/apt/lists/* # buildkit |
RUN |1 PHP_VERSION=8.4 /bin/sh -c useradd -m -d /home/container/ -s /bin/bash container && echo "USER=container" >> /etc/environment && echo "HOME=/home/container" >> /etc/environment # buildkit |
WORKDIR /home/container |
STOPSIGNAL SIGINT |
COPY ./entrypoint.sh /entrypoint.sh # buildkit |
RUN |1 PHP_VERSION=8.4 /bin/sh -c chmod +x /entrypoint.sh # buildkit |
CMD ["/entrypoint.sh"] |