still trying

This commit is contained in:
whaffman 2025-11-13 15:04:43 +01:00
parent b6ff2566d1
commit e600db4453
6 changed files with 99 additions and 18 deletions

2
docker/data/mariadb/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*
!.gitignore

2
docker/data/wordpress/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*
!.gitignore

View File

@ -39,20 +39,22 @@ services:
- WP_TITLE="webserv blog"
- WP_DESCRIPTION=""
#- WP_THEME=
- WP_THEME=my-minimalist-blog
- WP_ADMIN=admin
- WP_ADMIN_PASSWORD=admin
- WP_ADMIN_EMAIL=admin@admin.admin
- WP_ADMIN_EMAIL=admin@wordpress.com
networks:
- docker-network
ports:
- '80:80'
- '8080:8080'
- '8081:8081'
- '8082:8082'
volumes:
- data_wordpress:/webserv/htdocs
- data_htdocs:/webserv/htdocs
- data_wordpress:/var/www/html
restart: unless-stopped
networks:
@ -65,12 +67,19 @@ volumes:
driver: local
driver_opts:
type: none
device: /home/kali/data/mariadb
device: data/mariadb
o: bind
data_htdocs:
name: data_htdocs
driver: local
driver_opts:
type: none
device: ../htdocs
o: bind
data_wordpress:
name: data_wordpress
driver: local
driver_opts:
type: none
device: /home/kali/webserv/htdocs
device: data/wordpress
o: bind

View File

@ -63,6 +63,18 @@ ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
php \
php-cgi \
curl \
php-phar \
php-mysqli \
php-mbstring \
php-json \
php-curl \
php-xml \
php-zip \
php-gd \
# php-session \
php-tokenizer \
mariadb-client \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir /webserv
@ -73,10 +85,18 @@ COPY ./conf/default.conf /webserv/.
COPY ./conf/hosts /etc/hosts
# RUN chmod 777 /webserv/default.conf
# Install WP-CLI
RUN curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar && \
chmod +x wp-cli.phar && \
mv wp-cli.phar /usr/local/bin/wp
COPY install-wp.sh /usr/local/bin/.
RUN chmod +x /usr/local/bin/install-wp.sh
WORKDIR /webserv
RUN mkdir logs && touch logs/webserv.log
ENTRYPOINT ["/usr/local/bin/install-wp.sh"]
CMD ["./webserv", "default.conf"]

View File

@ -1,7 +1,7 @@
server {
listen 8080;
listen 80;
host 0.0.0.0;
server_name localhost;
server_name whaffman.42.fr;
root ./htdocs/site-1/;
index index.html index.htm;
@ -74,9 +74,9 @@ server {
}
server {
listen 8081;
listen 80;
host 0.0.0.0;
server_name localhost;
server_name qmennen.42.fr;
root ./htdocs/site-2/;
index index.html index2.htm;
@ -108,22 +108,21 @@ server {
}
server {
listen 8082;
listen 80;
host 0.0.0.0;
server_name localhost;
server_name wordpress.com;
root ./htdocs/site-3/;
index index.html index2.htm;
root /var/www/html/;
index index.php ;
client_max_body_size 1M;
location / {
autoindex off;
index index.php;
allowed_methods GET POST DELETE;
allowed_methods GET POST DELETE PUT;
}
cgi_enabled yes;
cgi_handler .php /usr/bin/php-cgi;
cgi_handler .cgi;
}

View File

@ -0,0 +1,49 @@
#!/bin/sh
if [ -f /var/www/html/wp-config.php ]; then
echo "WordPress is already installed."
exec "$@"
fi
echo "Installing WordPress..."
echo "wp core download --allow-root --path=/var/www/html"
wp core download --allow-root --path=/var/www/html
echo "wp config create --allow-root"
wp config create --allow-root \
--dbname=$MYSQL_DATABASE \
--dbuser=$MYSQL_USER \
--dbpass=$MYSQL_PASSWORD \
--dbhost=$DB_HOST \
--path=/var/www/html
echo "wp core install --allow-root"
wp core install --allow-root \
--url=$DOMAIN_NAME \
--title=$WP_TITLE \
--admin_user=$WP_ADMIN \
--admin_password=$WP_ADMIN_PASSWORD \
--admin_email=$WP_ADMIN_EMAIL \
--path=/var/www/html
echo "wp user create --allow-root"
wp user create --allow-root \
$WP_USER \
$WP_USER_EMAIL \
--role=author \
--user_pass=$WP_USER_PASSWORD \
--path=/var/www/html
echo "wp theme install --allow-root"
wp theme install --allow-root \
$WP_THEME \
--activate \
--path=/var/www/html
echo "WordPress installation completed."
chown -R wordpress:wordpress /var/www/html
exec "$@"