1
0

」 feat: finished last containers

This commit is contained in:
2025-03-04 10:47:25 +01:00
parent 57387462cf
commit 1538afbc7b
12 changed files with 1092 additions and 4 deletions

View File

@ -0,0 +1,31 @@
FROM scratch
ADD docker/alpine/alpine-minirootfs-3.21.2-x86_64.tar.gz /
LABEL version="0.1"
LABEL maintainer="KeyZox"
VOLUME /var/www/adminer
COPY docker/bonus/adminer/adminer-4.17.1-mysql.php /var/www/adminer/index.php
RUN apk update \
&& apk add php84 php84-mysqli php84-session curl \
&& addgroup -S adminer \
&& adduser -S -G adminer adminer \
&& chown -R adminer:adminer /var/www/adminer \
&& chmod 755 /var/www/adminer/index.php
RUN echo "upload_max_filesize = 128M" >> /etc/php84/conf.d/0-upload_large_dumps.ini \
&& echo "post_max_size = 128M" >> /etc/php84/conf.d/0-upload_large_dumps.ini \
&& echo "memory_limit = 1G" >> /etc/php84/conf.d/0-upload_large_dumps.ini \
&& echo "max_execution_time = 600" >> /etc/php84/conf.d/0-upload_large_dumps.ini \
&& echo "max_input_vars = 5000" >> /etc/php84/conf.d/0-upload_large_dumps.ini
WORKDIR "/var/www/adminer"
EXPOSE 8080
STOPSIGNAL SIGINT
USER adminer
CMD [ "php84", "-S", "0.0.0.0:8080", "-t", "/var/www/adminer"]
HEALTHCHECK --interval=30s --timeout=10s --retries=3 --start-period=1s --start-interval=2s CMD curl -f "http://localhost:8080"

File diff suppressed because one or more lines are too long

View File

@ -17,6 +17,9 @@ RUN cd /build \
FROM scratch
ADD docker/alpine/alpine-minirootfs-3.21.2-x86_64.tar.gz /
LABEL version="0.1"
LABEL maintainer="KeyZox"
RUN mkdir -p /backup \
&& mkdir -p /source \
&& mkdir /docker-entrypoint.d \

View File

@ -0,0 +1,15 @@
FROM scratch
ADD docker/alpine/alpine-minirootfs-3.21.2-x86_64.tar.gz /
LABEL version="0.1"
LABEL maintainer="KeyZox"
RUN apk update \
&& apk add redis
RUN echo "maxmemory 256mb" >> /etc/redis.conf \
&& echo "maxmemory-policy allkeys-lru" >> /etc/redis.conf \
&& sed -i -r "s/bind 127.0.0.1//" /etc/redis.conf
EXPOSE 6379
CMD [ "redis-server", "--protected-mode", "no"]

View File

@ -0,0 +1,18 @@
FROM scratch
ADD docker/alpine/alpine-minirootfs-3.21.2-x86_64.tar.gz /
RUN apk add vsftpd
COPY docker/bonus/vsftpd/entry.sh /docker-entrypoint
COPY docker/bonus/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf
RUN chmod +x /docker-entrypoint
EXPOSE 21
EXPOSE 30000-30100
VOLUME /var/ftp
STOPSIGNAL SIGTERM
ENTRYPOINT [ "/docker-entrypoint" ]
CMD [ "vsftpd", "/etc/vsftpd/vsftpd.conf" ]

View File

@ -0,0 +1,28 @@
#!/bin/sh
# Environment variables:
# VSFTPD_USER: Username for the vsftpd user
# VSFTPD_PASSWORD: Password for the vsftpd user
DONE_FILE=/vsftpd.ok
if [ -f "${DONE_FILE}" ]; then
echo "[*] vsftpd already setup, skipping"
else
echo "[*] Creating vsftpd user"
adduser -D $VSFTPD_USER
echo "$VSFTPD_USER:$VSFTPD_PASS" | /usr/sbin/chpasswd > /dev/null
echo "[*] Giving vsftpd user ownership of WordPress data directory"
chown -R "$VSFTPD_USER:$VSFTPD_USER" /var/ftp
echo $VSFTPD_USER | tee -a /etc/vsftpd/vsftpd.userlist > /dev/null
touch ${DONE_FILE}
fi
mkdir /var/run/vsftpd/empty -p
echo "[*] Starting '$@'"
exec "$@"

View File

@ -0,0 +1,25 @@
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
ftpd_banner=Welcome to your WordPress FTP server.
chroot_local_user=YES
allow_writeable_chroot=YES
user_sub_token=$USER
local_root=/var/ftp
listen=YES
listen_port=21
listen_address=0.0.0.0
seccomp_sandbox=NO
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30100
userlist_enable=YES
userlist_file=/etc/vsftpd/vsftpd.userlist
userlist_deny=NO