Start wordpress
parent
70f0a87901
commit
456d2aede7
|
@ -45,6 +45,9 @@ See [hyperledger_fabric](hyperledger_fabric) for more details.
|
|||
## [kafka](kafka)
|
||||
Start a simple kafka service for testing.
|
||||
|
||||
## [lnmp_wordpress](lnmp_wordress)
|
||||
Deploy nginx, mysql, php + wordpress.
|
||||
|
||||
## [mongo_cluster](mongo_cluster)
|
||||
Start 3 mongo instance to make a replica set.
|
||||
|
||||
|
@ -61,7 +64,7 @@ The web UI will listen on local 8081 port.
|
|||
## [nginx_auth](nginx_auth)
|
||||
Use nginx as a proxy with authentication for backend application.
|
||||
|
||||
## [packetbeat_ek](packetbeat_ek)
|
||||
## [packetbeat_elk](packetbeat_elk)
|
||||
Demo the packetbeat, elasticsearch and kibana.
|
||||
|
||||
Some kibana [dashboard config](https://github.com/elastic/beats-dashboards) files are included.
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
# Wordpress
|
||||
WORDPRESS_LOCAL_PATH=./wordpress_data
|
||||
WORDPRESS_UPLOADS_CONFIG=./wordpress_config/uploads.ini
|
||||
WORDPRESS_DB_NAME=wordpress
|
||||
WORDPRESS_DB_USER=wordpress
|
||||
WORDPRESS_DB_PASSWORD=dbpassword@123
|
||||
|
||||
# MySQL
|
||||
MYSQL_LOCAL_PATH=./db_data
|
||||
MYSQL_DATABASE=${WORDPRESS_DB_NAME}
|
||||
MYSQL_USER=${WORDPRESS_DB_USER}
|
||||
MYSQL_PASSWORD=${WORDPRESS_DB_PASSWORD}
|
||||
MYSQL_ROOT_PASSWORD=rootpassword@123
|
||||
|
||||
# Nginx
|
||||
NGINX_CONF=./nginx_conf/default.conf
|
||||
NGINX_SSL_CERTS=./nginx_ssl
|
||||
NGINX_LOGS=./nginx_logs/nginx
|
|
@ -0,0 +1,41 @@
|
|||
# LNMP+Wordpress
|
||||
|
||||
Deploy nginx, mysql, php + wordpress.
|
||||
|
||||
## Usage
|
||||
|
||||
1. Start the db container.
|
||||
|
||||
```bash
|
||||
docker-compose --env-file ./.env up -d db
|
||||
```
|
||||
|
||||
2. Start the nginx and wordpress container.
|
||||
|
||||
```bash
|
||||
docker-compose --env-file ./.env up -d wordpress nginx
|
||||
```
|
||||
|
||||
3. Access `https://localhost`
|
||||
|
||||
## Data path
|
||||
|
||||
* `wordpress_data`: data for wordpress.
|
||||
* `wordpress_config`: config for wordpress.
|
||||
* `db_data`: config for wordpress.
|
||||
|
||||
|
||||
## Generate ssl certs
|
||||
|
||||
```bash
|
||||
openssl req -x509 -outform pem -out server.pem -keyout privkey.pem \
|
||||
-newkey rsa:4096 -nodes -sha256 -days 3650 \
|
||||
-subj '/CN=localhost' -extensions EXT -config <( \
|
||||
printf "[dn]\nCN=localhost\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:localhost\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")
|
||||
```
|
||||
|
||||
## Common wordpress configs
|
||||
|
||||
* permanent link;
|
||||
* theme: astra;
|
||||
* plugins: Contact Form 7, Updraft, Sucuri;
|
|
@ -0,0 +1,70 @@
|
|||
version: '3.1'
|
||||
|
||||
services:
|
||||
wordpress: # wordpress
|
||||
image: wordpress:5-fpm # fastcgi
|
||||
container_name: wordpress
|
||||
restart: always
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
- WORDPRESS_DB_HOST=${WORDPRESS_DB_HOST:-db:3306}
|
||||
- WORDPRESS_DB_NAME=${WORDPRESS_DB_NAME:-wordpress}
|
||||
- WORDPRESS_DB_USER=${WORDPRESS_DB_USER:-wordpress}
|
||||
- WORDPRESS_DB_PASSWORD=${WORDPRESS_DB_PASSWORD:-dbpassword@123}
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ${WORDPRESS_LOCAL_PATH:-./wordpress_data}:/var/www/html
|
||||
- ${WORDPRESS_UPLOADS_CONFIG:-./wordpress_config/uploads.ini}:/usr/local/etc/php/conf.d/uploads.ini
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
db: # database
|
||||
image: mysql:8
|
||||
container_name: db
|
||||
restart: always
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE:-wordpress}
|
||||
- MYSQL_USER=${MYSQL_USER:-wordpress}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD:-dbpassword@123}
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD:-rootpassword@123}
|
||||
volumes:
|
||||
- ${MYSQL_LOCAL_PATH:-./db_data}:/var/lib/mysql
|
||||
command:
|
||||
- '--default-authentication-plugin=mysql_native_password'
|
||||
|
||||
nginx:
|
||||
# default ports 80, 443 - expose mapping as needed to host
|
||||
image: nginx:1
|
||||
container_name: nginx
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
- .env
|
||||
ports:
|
||||
- "80:80" # http
|
||||
- "443:443" # https
|
||||
volumes:
|
||||
- ${WORDPRESS_LOCAL_PATH:-./wordpress_data}:/var/www/html
|
||||
- ${NGINX_CONF:-./nginx_conf/default.conf}:/etc/nginx/conf.d/default.conf
|
||||
- ${NGINX_SSL_CERTS:-./nginx_ssl}:/etc/ssl:ro
|
||||
- ${NGINX_LOGS:-./nginx_logs/nginx}:/var/log/nginx
|
||||
depends_on:
|
||||
- wordpress
|
||||
- db
|
||||
|
||||
adminer: # lightweighted mysql manage tool, bypasses nginx
|
||||
# default port 9000
|
||||
image: adminer:4-fastcgi
|
||||
container_name: adminer
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- db
|
||||
ports:
|
||||
- "9000:9000"
|
||||
|
||||
volumes:
|
||||
wordpress:
|
||||
db:
|
|
@ -0,0 +1,71 @@
|
|||
# default.conf
|
||||
# redirect to HTTPS
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
server_name $host;
|
||||
location / {
|
||||
# update port as needed for host mapped https
|
||||
rewrite ^ https://$host:8443$request_uri? permanent;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
listen [::]:443 ssl http2;
|
||||
server_name $host;
|
||||
index index.php index.html index.htm;
|
||||
root /var/www/html;
|
||||
server_tokens off;
|
||||
client_max_body_size 75M;
|
||||
|
||||
# update ssl files as required by your deployment
|
||||
ssl_certificate /etc/ssl/server.pem;
|
||||
ssl_certificate_key /etc/ssl/privkey.pem;
|
||||
|
||||
# logging
|
||||
access_log /var/log/nginx/wordpress.access.log;
|
||||
error_log /var/log/nginx/wordpress.error.log;
|
||||
|
||||
# some security headers ( optional )
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
add_header X-XSS-Protection "1; mode=block" always;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
add_header Referrer-Policy "no-referrer-when-downgrade" always;
|
||||
add_header Content-Security-Policy "default-src * data: 'unsafe-eval' 'unsafe-inline'" always;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php$is_args$args;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
try_files $uri = 404;
|
||||
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
||||
fastcgi_pass wordpress:9000;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
fastcgi_param PATH_INFO $fastcgi_path_info;
|
||||
}
|
||||
|
||||
location ~ /\.ht {
|
||||
deny all;
|
||||
}
|
||||
|
||||
location = /favicon.ico {
|
||||
log_not_found off; access_log off;
|
||||
}
|
||||
|
||||
location = /favicon.svg {
|
||||
log_not_found off; access_log off;
|
||||
}
|
||||
|
||||
location = /robots.txt {
|
||||
log_not_found off; access_log off; allow all;
|
||||
}
|
||||
|
||||
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
|
||||
expires max;
|
||||
log_not_found off;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
NpVcbXWV1qtpYhHUegbi9RwI/lA3
|
||||
-----END PRIVATE KEY-----
|
|
@ -0,0 +1,29 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIE5TCCAs2gAwIBAgIJALi7L9AV9qyEMA0GCSqGSIb3DQEBCwUAMBQxEjAQBgNV
|
||||
BAMMCWxvY2FsaG9zdDAeFw0yMjAzMjMyMjI0MTVaFw0zMjAzMjAyMjI0MTVaMBQx
|
||||
EjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
|
||||
ggIBALnW2f9L8fP8DOl3ZebjSZQibkhLFHPaBT6ECd+mBR7Zvxs4Lkt3p2pdZzJw
|
||||
3m//jg+zYHZKHIbk12H2qk2ZJxk3G+ARFB/kPH+0GIIrtA6+ZQXZnLNPJF81JH4K
|
||||
TXwWASoLG7i2+dOmPCNNrZh9yRtc/2IpGTWvTIfXorPdut+AEUVnegBqbqR/VZES
|
||||
kWG9VwRZFuJfKfMlm5xQb2hIDRutJ6MX9CAfo4B2VV/LbOTOt60s/Ee0EMe3AqQi
|
||||
KeCtSkwgyOzBiXIrNv28ZDLzR38VkdrPs98gkl+BXKykA5Sv93poFOjPURyWDosq
|
||||
AmslAoGSDWEjhqpnuvD3hJblHO2iOGPU0DvoSTupxnhHZy21BLJmzdDwPFKhOs/N
|
||||
kpr11Xzi2L5lqZ0997nNf2F0LfFGrs8IB2NA7IkM2yOLPpkQxy2M952Pe44/SS2X
|
||||
LV2pq+H3TVoKasu6EN4hrYEU+QQc5JLO01AU75NuwvoEbflKgjCqVAPw5A5SjrMR
|
||||
nXxhq7vQjjuqty+6tGwWS2Js81MiGrUBaCUVt9aXPjNNGHFpaHO23BWKKsn7Vytr
|
||||
QklmtfGga20NfyUZiV3PP0CXPDCX5UjUkT7Q5i716eL24wK/itNDSyRErnH8BNHt
|
||||
0RfF1WVAvIw9U3XFEpiVOjxIIt2Qkc//5HlZX1WRfzVOr3PVAgMBAAGjOjA4MBQG
|
||||
A1UdEQQNMAuCCWxvY2FsaG9zdDALBgNVHQ8EBAMCB4AwEwYDVR0lBAwwCgYIKwYB
|
||||
BQUHAwEwDQYJKoZIhvcNAQELBQADggIBABWUIEnyXtYum8z91dUqkuZwjunO9Uct
|
||||
82B19m7P40fehgX6MoO5FWSOumfhtRcdrEA8j82xsN9ZQ/huwjQBviIwvLe6Wobp
|
||||
Ocqx6Q+w0dZ0Mnn0R7St58l9qASlIkCXk6HV/zN9lBZbGmNeaL3i7B5Co6jTEE+z
|
||||
0jW/snkvU5N1KEFCygMzqzPQA5xZAMC/qtnuIEAr6KUgv9BVsZTiYuUWUPcja2So
|
||||
J91hBk+RA+JXORYOWPYL2KMKRlKVcC0jumArCjszxwdnhbtRlCIKN/HIEwQoDm7B
|
||||
VNpn2XjeiQ29FKdhPWD/JAEOwVEK1evwq/83ZLgFHrgictFEM1EaLCtEtWrYvpVF
|
||||
PCMnp0/zy5CrI/WRjXNJsh5YkPbnW7WgTmQl0QwFhRrCQYH24QqB8CclwvZoQViv
|
||||
A1FogOjYv0SFYL3C5JuOqU5KWH3r/V4Xl7QCPob4b5Wgglbh/YqjYrgHx0WdD4aV
|
||||
d4tiY0vAEgrLviAGhzWt1A8uI34Iwwm3zO4lLIWx6yDCfnSwbHzto9cg2TDsClu+
|
||||
b4oLWwkZMef7dXMwZ8fMs6d344uWX0+fGLFNomqA8t9xF54dkHe10InzxnJ3cl3O
|
||||
JeiK63kCICv9oJoOZco+aUCJQFKG+WJ1bzVbqofFr66HARGTYqkV+340Als4TX8t
|
||||
l9Pv6oLN6QpH
|
||||
-----END CERTIFICATE-----
|
|
@ -0,0 +1,5 @@
|
|||
file_uploads = On
|
||||
memory_limit = 256M
|
||||
upload_max_filesize = 75M
|
||||
post_max_size = 75M
|
||||
max_execution_time = 600
|
Loading…
Reference in New Issue