Last active
April 27, 2022 15:35
-
-
Save alexishida/125d0d9f54c0c17873d9fa9a096e4446 to your computer and use it in GitHub Desktop.
Docker config wordpress mariadb phpmyadmin
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
docker run -d \ | |
--name=mariadb \ | |
--restart=always \ | |
-v /etc/localtime:/etc/localtime:ro \ | |
-e MYSQL_ROOT_PASSWORD=senha \ | |
-v /storage/mariadb:/var/lib/mysql \ | |
mariadb:latest | |
docker run -d \ | |
--restart=always \ | |
--name=myadmin \ | |
-v /etc/localtime:/etc/localtime:ro \ | |
--link mariadb:db \ | |
-p 9595:80 \ | |
phpmyadmin/phpmyadmin | |
docker run -d \ | |
--restart=always \ | |
-v /etc/localtime:/etc/localtime:ro \ | |
--name=wordpress \ | |
-v /storage/wordpress:/var/www/html \ | |
-e WORDPRESS_DB_USER=root \ | |
-e WORDPRESS_DB_NAME=site_db \ | |
-e WORDPRESS_DB_PASSWORD=senha \ | |
--link mariadb:mysql \ | |
-p 80:80 \ | |
wordpress | |
docker cp wordpress:/var/www/html ./ | |
# Direct download without ftp ( wp-config.php ) | |
define('FS_METHOD', 'direct'); | |
# Send to minio | |
$client = S3Client::factory([ | |
'credentials' => [ | |
'key' => $dos_key, | |
'secret' => $dos_secret, | |
], | |
'endpoint' => $dos_endpoint, | |
'region' => 'us-east-1', | |
'version' => 'latest', | |
'use_path_style_endpoint' => true, | |
]); | |
###### docker-compose.yml | |
# docker-compose up -d | |
version: "3.5" | |
services: | |
mariadb: | |
image: mariadb:10 | |
container_name: mariadb | |
restart: always | |
volumes: | |
- /storage/mariadb:/var/lib/mysql | |
- /etc/localtime:/etc/localtime:ro | |
environment: | |
MYSQL_ROOT_PASSWORD: password | |
MYSQL_DATABASE: db | |
MYSQL_USER: dbuser | |
MYSQL_PASSWORD: dbpass | |
networks: | |
- wordpress-network | |
wordpress: | |
depends_on: | |
- mariadb | |
image: wordpress:5.1.0 | |
ports: | |
- "8080:80" | |
restart: always | |
container_name: wordpress | |
networks: | |
- wordpress-network | |
volumes: | |
- /storage/wordpress:/var/www/html | |
- /etc/localtime:/etc/localtime:ro | |
environment: | |
WORDPRESS_DB_HOST: mariadb:3306 | |
WORDPRESS_DB_USER: dbuser | |
WORDPRESS_DB_PASSWORD: dbpass | |
WORDPRESS_DB_NAME: db | |
networks: | |
wordpress-network: | |
name: wordpress-network | |
driver: bridge | |
##### PHPMYADMIN with composer | |
docker run -d \ | |
--restart=always \ | |
--name=myadmin \ | |
-v /etc/localtime:/etc/localtime:ro \ | |
--network=wordpress-network \ | |
-e PMA_HOST=mariadb \ | |
-p 9595:80 \ | |
phpmyadmin/phpmyadmin | |
###### Nginx Security | |
# https://bjornjohansen.no/block-access-to-php-files-with-nginx | |
# https://www.cloudways.com/blog/protect-wordpress-with-htaccess/ | |
location ~* /wp-includes/.*.php$ { | |
deny all; | |
access_log off; | |
log_not_found off; | |
} | |
location ~* /wp-content/.*.php$ { | |
deny all; | |
access_log off; | |
log_not_found off; | |
} | |
location ~* /(?:uploads|files)/.*.php$ { | |
deny all; | |
access_log off; | |
log_not_found off; | |
} | |
location ~* /modules/.*.php$ { | |
deny all; | |
access_log off; | |
log_not_found off; | |
} | |
location ~* /skins/.*.php$ { | |
deny all; | |
access_log off; | |
log_not_found off; | |
} | |
location = /xmlrpc.php { | |
deny all; | |
access_log off; | |
log_not_found off; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment