# Wordpress ## Description This docker compose run wordpress on docker ## Requierments * GMoTech/GMoLab/VdGLab Linux environment * Rocky Linux 10 * Redhat 10 * Certificats * Copy crt and key files on `/home/docker/certs/` * Environment file ## Environment file Copy `env-dist` to `env-` file and adapt as your needs ## Build ```bash ./manage.sh --env --build ``` ## Start ```bash ./manage.sh --env --start ``` ## DB The database is a dump of wp first install The script adapt the sql file with data from environment file ## Apache ### http-wp-dev.conf ``` ServerName wp-dev.gmolab.net ServerAlias wp-dev CustomLog logs/wp-dev_access_log common ErrorLog logs/wp-dev_error_log # redirect to https RewriteEngine on RewriteCond %{SERVER_NAME} =wp-dev [OR] RewriteCond %{SERVER_NAME} =wp-devp.gmolab.net RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent] ``` ### https-wp-dev.conf ``` ## ## SSL Virtual Host Context ## # General setup for the virtual host ServerName wp-dev.gmolab.net ServerAlias wp-dev CustomLog logs/wp-dev_access_log common ErrorLog logs/wp-dev_error_log # SSL SSLEngine on SSLHonorCipherOrder on SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder on SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4 # Enable HTTP/2, if available Protocols h2 http/1.1 # HTTP Strict Transport Security (mod_headers is required) (63072000 seconds) Header always set Strict-Transport-Security "max-age=63072000" # certificats SSLCertificateFile "/etc/httpd/auth/cert/gmolab.net.crt" SSLCertificateKeyFile "/etc/httpd/auth/cert/gmolab.net.key" SSLCertificateChainFile "/etc/httpd/auth/cert/gmolabCA.crt" # proxy SSLProxyEngine On ProxyPreserveHost On ProxyRequests off ProxyPass "/" "http://127.0.0.1:8080/" ProxyPassReverse "/" "https://127.0.0.1:8080/" ``` ### http-phpmyadmin-dev.conf ``` ServerName phpmyadmin-dev.gmolab.net ServerAlias phpmyadmin-dev CustomLog logs/phpmyadmin-dev_access_log common ErrorLog logs/phpmyadmin-dev_error_log # redirect to https RewriteEngine on RewriteCond %{SERVER_NAME} =wp-dev [OR] RewriteCond %{SERVER_NAME} =phpmyadmin-dev.gmolab.net RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent] ``` ### https-phpmyadmin-dev.conf ``` # General setup for the virtual host ServerName phpmyadmin-dev.gmolab.net ServerAlias phpmyadmin-dev CustomLog logs/phpmyadmin-dev_access_log common ErrorLog logs/phpmyadmin-dev_error_log # SSL SSLEngine on SSLHonorCipherOrder on SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder on SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4 # Enable HTTP/2, if available Protocols h2 http/1.1 # HTTP Strict Transport Security (mod_headers is required) (63072000 seconds) Header always set Strict-Transport-Security "max-age=63072000" # certificats SSLCertificateFile "/etc/httpd/auth/cert/gmolab.net.crt" SSLCertificateKeyFile "/etc/httpd/auth/cert/gmolab.net.key" SSLCertificateChainFile "/etc/httpd/auth/cert/gmolabCA.crt" # proxy RequestHeader set X-Forwarded-Proto "https" ProxyPreserveHost On ProxyPass "/" "http://127.0.0.1:8180/" ProxyPassReverse "/" "http://127.0.0.1:8180/" ``` ## Access https://wp-dev.gmolab.net https://phpmyadmin-dev.gmolab.net ### [1.0.0] - 2026-02-06 #### Added - initial version by [GMo](mailto:gilles.mouchet@gmail.com)