add ftp server

This commit is contained in:
2026-09-02 09:38:01 +02:00
parent 0b94ba1b85
commit cf4e0f47d0
20 changed files with 411 additions and 0 deletions
@@ -0,0 +1,32 @@
FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
php-fpm \
php-mysql \
php-curl \
php-gd \
php-xml \
php-mbstring \
php-zip \
php-intl \
curl \
default-mysql-client \
&& rm -rf /var/lib/apt/lists/*
RUN curl -sS -o /usr/local/bin/wp \
https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar \
&& chmod +x /usr/local/bin/wp
COPY conf/www.conf /etc/php/8.2/fpm/pool.d/www.conf
COPY tools/entrypoint.sh /usr/local/bin/entrypoint.sh
RUN mkdir -p /var/www/html \
&& chown -R www-data:www-data /var/www/html \
&& chmod +x /usr/local/bin/entrypoint.sh
WORKDIR /var/www/html
EXPOSE 9000
ENTRYPOINT ["entrypoint.sh"]
@@ -0,0 +1,15 @@
[www]
user = www-data
group = www-data
listen = 9000
listen.owner = www-data
listen.group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
clear_env = no
+45
View File
@@ -0,0 +1,45 @@
#!/bin/bash
set -e
DB_PASSWORD=$(cat /run/secrets/db_password)
WP_ADMIN_PASSWORD=$(cat /run/secrets/wp_admin_password)
WP_USER_PASSWORD=$(cat /run/secrets/wp_user_password)
cd /var/www/html
until (echo > "/dev/tcp/${MYSQL_HOST}/3306") 2>/dev/null; do
sleep 1
done
if [ ! -f wp-config.php ]; then
wp core download --allow-root
wp config create \
--dbname="${MYSQL_DATABASE}" \
--dbuser="${MYSQL_USER}" \
--dbpass="${DB_PASSWORD}" \
--dbhost="${MYSQL_HOST}" \
--allow-root
until mysqladmin ping -h"${MYSQL_HOST}" -u"${MYSQL_USER}" -p"${DB_PASSWORD}" --silent 2>/dev/null; do
sleep 1
done
wp core install \
--url="https://${DOMAIN_NAME}" \
--title="${WP_TITLE}" \
--admin_user="${WP_ADMIN_USER}" \
--admin_password="${WP_ADMIN_PASSWORD}" \
--admin_email="${WP_ADMIN_EMAIL}" \
--skip-email \
--allow-root
wp user create "${WP_USER}" "${WP_USER_EMAIL}" \
--role=author \
--user_pass="${WP_USER_PASSWORD}" \
--allow-root
fi
chown -R www-data:www-data /var/www/html
exec php-fpm8.2 -F