Git Product home page Git Product logo

docker4wordpress's Introduction

Docker-based WordPress Stack

Build Status

Introduction

Docker4WordPress is a set of docker images optimized for WordPress. Use compose.yml file from this repository to spin up a local environment for WordPress on Linux, macOS and Windows.

Stack

The WordPress stack consist of the following containers:

Container Versions Image ARM64 support Enabled by default
Nginx 1.27, 1.26 wodby/nginx
Apache 2.4 wodby/apache
WordPress 6 wodby/wordpress
PHP 8.3, 8.2, 8.1 wodby/wordpress-php
Crond wodby/wordpress-php
MariaDB 11, 10.11, 10.6, 10.5, 10.4 wodby/mariadb
Valkey 7 wodby/valkey
Memcached 1 wodby/memcached
Varnish 6.0 wodby/varnish
Node.js 20, 18 wodby/node
Solr 8 wodby/solr
Elasticsearch 7 wodby/elasticsearch
Kibana 7 wodby/kibana
Gotenberg latest gotenberg/gotenberg
Mailpit latest axllent/mailpit
OpenSMTPD 7 wodby/opensmtpd
Rsyslog latest wodby/rsyslog
Webgrind 1 wodby/webgrind
XHProf viewer latest wodby/xhprof
Adminer 4.6 wodby/adminer
phpMyAdmin latest phpmyadmin/phpmyadmin
Traefik latest _/traefik

Documentation

Full documentation is available at https://wodby.com/docs/stacks/wordpress/local.

Images' tags

Images tags format is [VERSION]-[STABILITY_TAG] where:

[VERSION] is the version of an application (without patch version) running in a container, e.g. wodby/nginx:1.15-x.x.x where Nginx version is 1.15 and x.x.x is a stability tag. For some images we include both major and minor version like PHP 7.2, for others we include only major like Valkey 7.

[STABILITY_TAG] is the version of an image that corresponds to a git tag of the image repository, e.g. wodby/mariadb:10.2-3.3.8 has MariaDB 10.2 and stability tag 3.3.8. New stability tags include patch updates for applications and image's fixes/improvements (new env vars, orchestration actions fixes, etc). Stability tag changes described in the corresponding a git tag description. Stability tags follow semantic versioning.

We highly encourage to use images only with stability tags.

Maintenance

We regularly update images used in this stack and release them together, see releases page for full changelog and update instructions. Most of routine updates for images and this project performed by the bot via scripts located at wodby/images.

Beyond local environment

Docker4WordPress is a project designed to help you spin up local environment with Docker Compose. If you want to deploy a consistent stack with orchestrations to your own server, check out WordPress stack on Wodby Wodby.

Other Docker4x projects

License

This project is licensed under the MIT open source license.

docker4wordpress's People

Contributors

arunsathiya avatar caboteria avatar csandanov avatar davo20019 avatar eduplessis avatar gnowland avatar mckernanin avatar pprishchepa avatar wodbot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker4wordpress's Issues

PHP_XDEBUG_ENABLED activates empty file

I am not clear on what PHP_XDEBUG_ENABLED=1 is supposed to do. I activated, and I see in phpinfo it has activated an empty xdebug.ini file.

The xdebug module does not seem to get loaded (per php -m)

Add PHP-FPM file permission for .htaccess and plugin directories.

Docker compose file

WordPress stack 5.0.5 and previous.

Feature request

Make more directories writable by the PHP-FPM container - this issue is meant to be used as a reference list and should be expanded down the line when more permissions come along.
The files/directories listed here are not necessarily the only ones that have potential conflicts and some of them will simply not be supported for security reasons (wp-config.php) but they are still listed for documentation and as a way for people who search for these files to find this issue.

WP-Rocket requires write access to the following files in the PHP-FPM container:

  • .htaccess - possibly also Nginx (I have not yet look at this solution but WP Rocket points to this configuration setup for Nginx: https://github.com/maximejobin/rocket-nginx)
  • wp-content/wp-rocket-config/
  • wp-config.php(*)

WooCommerce:

  • wp-content/uploads/wc-logs/: WC complains about missing write permission to this directory if WC Logging should work. Chingis previously wrote the following to me:

wp-content/uploads completely owned by www-data, if you need get write access on files inside uploads, you can use sudo files_chmod to /mnt/files/* (it's the original location of wp-content/uploads symlink.

(*) Just a quick WP Rocket note for possible future reference: It is on purpose that wp-config.php is not writable by the PHP-FPM container due to security reasons but it does mean that it is not possible to disable WP Rocket in the interface because it cannot write to wp-config.php and set WP_CACHE to FALSE.


A current workaround is to add a post-deployment-script that adds www-data as the group to any known directories that might exist so PHP-FPM will have write access.

nginx proxy causes 404

Codebase

Custom mounted

Host OS

macOS Sierra

Docker info output

 Running: 19
 Paused: 0
 Stopped: 4
Images: 602
Server Version: 18.09.2
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
runc version: 09c8266bf2fcf9519a651b04ae54c967b9ab86ec
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 5
Total Memory: 7.786GiB
Name: linuxkit-025000000001
ID: ZICJ:5JFF:MK44:Y4D2:RNLN:KZAW:E7IA:JBJW:IGMH:PBNY:VBQ5:QUHQ
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 201
 Goroutines: 212
 System Time: 2019-03-22T04:07:43.76863772Z
 EventsListeners: 7
HTTP Proxy: gateway.docker.internal:3128
HTTPS Proxy: gateway.docker.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

.env

PROJECT_NAME=sites
PROJECT_BASE_URL=wpmain.local
...
rest of unmodified vars
...

Docker compose file

Make sure you remove all commented services.

version: "3"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
    volumes:
#      - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
      - ./data/:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    build: .
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
      PHP_FPM_USER: wodby
      PHP_FPM_GROUP: wodby
## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
#      PHP_XDEBUG: 1
#      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
#      PHP_IDE_CONFIG: serverName=my-ide
#      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
#      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
#      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
    # volumes:
      # - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
      # - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
## For XHProf and Xdebug profiler traces
#      - files:/mnt/files
#   depends_on:
#     - mariadb

  nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: error
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
      NGINX_SERVER_ROOT: /var/www/html/web
    # volumes:
      # - ./:/var/www/html
# Options for macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
      # - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=${PROJECT_NAME}_nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL},site1.local,site3.local'

  pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=${PROJECT_NAME}_pma'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'


  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=${PROJECT_NAME}_portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '80:80'
#      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

Dockerfile

FROM wodby/wordpress-php:7.2-dev-4.12.5

COPY ./web /var/www/html/web

When I hit the localhost url I get a 404 from Nginx. If I ssh into the nginx container, I see that there is no web folder(expected, since I am commenting out the volumes in the nginx section of the docker-compose.yml) I don't see why is it needed there, since it's just proxying to the php container where I have backed the wordpress files, via the Dockerfile

what I am missing? why does the nginx container need to have access to the WordPress codebase? I want the php(WordPress) to be stateless, and that is why I am backing in the Wordpress files.

Pre-use questions.

Codebase

Built-in vanilla WordPress

Host OS

Arch Linux (desktop)

Docker version

Docker version 18.09.5-ce, build e8ff056dbc

I'm not using this yet.

  1. Can requests to the internet (js, css, img, services, etc) from within the Apache and NginX containers, be routed through VPN containers like https://github.com/kylemanna/docker-openvpn and https://github.com/dperson/openvpn-client ?
    And only local/internal traffic through traefik.
  2. Instructions to Custom configure vhosts for NginX is clear. What about Apache ?
  3. Is the example location /var/www/html/vhost.conf for a custom vhost config for NginX persistent ?
  4. Is https://hub.docker.com/r/jwhitworksweb/docker4wordpress on Docker Hub, somehow related to this repo ? :

Windows: "File not found" on port 8000 but phpMyAdmin works

Using Docker for Windows, basic installation as described in https://github.com/Wodby/docker4drupal, docker-compose.yml left unchanged.

Placed index.php from https://github.com/Wodby/docker4drupal/blob/master/index.php next to the yml file.

Using PowerShell went to the directory, ran docker-compose up -d

Starting docker4drupal_pma_1
Starting docker4drupal_mailhog_1
Starting docker4drupal_mariadb_1
Starting docker4drupal_php_1
Starting docker4drupal_nginx_1

http://localhost:8001 shows phpMyAdmin, no problem.

However, http://localhost:8000/ shows "File not found."
Same for http://localhost:8000/index.php
Added a simple test.html there, http://localhost:8000/test.html returns the same:
image

Interestingly, when I try a non-existent file, then the error message is different, e,g. http://localhost:8000/xyz.php results in:
image

Why does phpMyAdmin work but not the site?

One observation: directory "docker-runtime" does NOT get created.
I added it manually, put docker-compose down and then back up, but the "File not found." message remains.

Check for internet connection on make up

Is there a way to add a check on the docker.mk file to see if the there is an internet connection and not do a docker-compose pull if not connected?

I sometimes run a dev environment without internet (airplane) and this command fails. I do get around it by running docker-compose up -d, but was wondering...

"too many redirects" error on /wp-admin/

Only on my local docker instance:

When I logged in I get a "too many redirects" error on /wp-admin/ I am able to get to /wp-admin/index.php or another page in the admin. I do not have this issue on our staging server or on the production site.

This prevents local behat tests that login as they get caught in the redirect.

I tried nginx, the wp-admin works but magento stops working.

Codebase

Built-in vanilla WordPress with Margento in /shop

Host OS

macOS High Sierra

Docker info output

Containers: 35
 Running: 7
 Paused: 0
 Stopped: 28
Images: 34
Server Version: 17.06.2-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 6e23458c129b551d5c9871e5174f6b1b7f6d1170
runc version: 810190ceaa507aa2727d7ae6f4790c76ec150bd2
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.41-moby
Operating System: Alpine Linux v3.5
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 4.834GiB
Name: moby
ID: HIJS:6MNP:4ICG:D46E:U25X:Z3SO:NOPL:YW5E:2SEZ:VAZR:JHAU:XKIW
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 91
 Goroutines: 115
 System Time: 2017-09-13T14:17:56.4285866Z
 EventsListeners: 3
No Proxy: *.local, 169.254/16
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

Docker compose file

# Content of your docker-compose.yml file. Make sure you remove all sensible information you version: "2"

services:
  mariadb:
    image: wodby/mariadb:10.1-2.3.3
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  php:
    image: wodby/wordpress-php:7.0-2.2.0
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      PHP_OUTPUT_BUFFERING: 'On'
      PHP_OUTPUT_HANDLER: mb_output_handler
      # PHP_XDEBUG: 1
      # PHP_XDEBUG_DEFAULT_ENABLE: 1
      # PHP_XDEBUG_REMOTE_CONNECT_BACK: 0         # This is needed to respect remote.host setting bellow
      # PHP_XDEBUG_REMOTE_HOST: "10.254.254.254"  # You will also need to 'sudo ifconfig lo0 alias 10.254.254.254'
    volumes:
      - semitrailers-sync:/var/www/html # Docker-sync

  apache:
    image: wodby/wordpress-apache:2.4-1.0.0
    depends_on:
      - php
    environment:
      APACHE_LOG_LEVEL: debug
      APACHE_BACKEND_HOST: php
      APACHE_SERVER_ROOT: /var/www/html/www
      HOME: /var/www/html/www
    volumes:
      - semitrailers-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=semitrailers_apache_1'
      - 'traefik.enable=true'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:semitrailers.docker.localhost'

  mailhog:
    image: mailhog/mailhog
    labels:
      - 'traefik.backend=semitrailers_mailhog_1'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.semitrailers.docker.localhost'

volumes:
  semitrailers-sync:
    external: true
# Content of your docker-sync.yml file. Make sure you remove all sensible information you 
version: "2"

options:
  verbose: true
syncs:
  semitrailers-sync: # tip: add -sync and you keep consistent names as a convention
    src: '.'
    sync_userid: '82'
    # sync_strategy: 'native_osx' # not needed, this is the default now
    sync_excludes: ['.gitignore', '.git/', '.idea/']
# Content of your traefik.yml file. Make sure you remove all sensible information you 
version: '2'
services:
    traefik:
        image: traefik
        restart: unless-stopped
        command: '-c /dev/null --web --docker --logLevel=INFO'
        networks:
            - sites
            - semitrailers
        ports:
            - '80:80'
            - '443:443'
            - '8080:8080'
            - '9000:9000'
        volumes:
            - '/var/run/docker.sock:/var/run/docker.sock'
            - './traefik/test:/certs'
    portainer:
        image: portainer/portainer
        command: '--no-auth'
        volumes:
            - '/var/run/docker.sock:/var/run/docker.sock'
        labels:
            - traefik.backend=portainer
            - traefik.port=9000
            - 'traefik.frontend.rule=Host:portainer.docker.localhost'
networks:
    sites:
        external:
            name: sites_default
    semitrailers:
        external:
            name: semitrailers_default
# Run "docker-compose logs [service]". Let's say you get 500 error for some reason then it'll be php_1      | 172.21.0.6 -  13/Sep/2017:14:21:30 +0000 "GET /index.php" 302
apache_1   | [Wed Sep 13 14:21:30.480012 2017] [proxy:debug] [pid 22:tid 140393650887400] proxy_util.c(2171): AH00943: FCGI: has released connection for (php)
apache_1   | 172.21.0.2 - - [13/Sep/2017:14:21:30 +0000] "GET /wp-admin/ HTTP/1.1" 302 -
apache_1   | [Wed Sep 13 14:21:30.486947 2017] [authz_core:debug] [pid 22:tid 140393652779752] mod_authz_core.c(809): [client 172.21.0.2:35734] AH01626: authorization result of Require all granted: granted
apache_1   | [Wed Sep 13 14:21:30.486975 2017] [authz_core:debug] [pid 22:tid 140393652779752] mod_authz_core.c(809): [client 172.21.0.2:35734] AH01626: authorization result of <RequireAny>: granted
apache_1   | [Wed Sep 13 14:21:30.487101 2017] [authz_core:debug] [pid 22:tid 140393652779752] mod_authz_core.c(809): [client 172.21.0.2:35734] AH01626: authorization result of Require all granted: granted
apache_1   | [Wed Sep 13 14:21:30.487368 2017] [authz_core:debug] [pid 22:tid 140393652779752] mod_authz_core.c(809): [client 172.21.0.2:35734] AH01626: authorization result of <RequireAny>: granted
apache_1   | [Wed Sep 13 14:21:30.487606 2017] [proxy:debug] [pid 22:tid 140393652779752] mod_proxy.c(1228): [client 172.21.0.2:35734] AH01143: Running scheme fcgi handler (attempt 0)
apache_1   | [Wed Sep 13 14:21:30.487628 2017] [proxy_fcgi:debug] [pid 22:tid 140393652779752] mod_proxy_fcgi.c(913): [client 172.21.0.2:35734] AH01076: url: fcgi://php:9000/var/www/html/www/index.php proxyname: (null) proxyport: 0
apache_1   | [Wed Sep 13 14:21:30.487636 2017] [proxy_fcgi:debug] [pid 22:tid 140393652779752] mod_proxy_fcgi.c(920): [client 172.21.0.2:35734] AH01078: serving URL fcgi://php:9000/var/www/html/www/index.php
apache_1   | [Wed Sep 13 14:21:30.487655 2017] [proxy:debug] [pid 22:tid 140393652779752] proxy_util.c(2156): AH00942: FCGI: has acquired connection for (php)
apache_1   | [Wed Sep 13 14:21:30.487663 2017] [proxy:debug] [pid 22:tid 140393652779752] proxy_util.c(2209): [client 172.21.0.2:35734] AH00944: connecting fcgi://php:9000/var/www/html/www/index.php to php:9000
apache_1   | [Wed Sep 13 14:21:30.487689 2017] [proxy:debug] [pid 22:tid 140393652779752] proxy_util.c(2418): [client 172.21.0.2:35734] AH00947: connected /var/www/html/www/index.php to php:9000
apache_1   | [Wed Sep 13 14:21:30.488466 2017] [proxy:debug] [pid 22:tid 140393652779752] proxy_util.c(2884): AH02824: FCGI: connection established with 172.21.0.3:9000 (php)
php_1      | 172.21.0.6 -  13/Sep/2017:14:21:30 +0000 "GET /index.php" 302

Question about behat testing

The Drupal behat testing I have seen uses the host nginx as drupal will allow it if you add the name to the trusted hosts.

With Wordpress having a set URL for the site wordpress.docker.localhost so using nginx will not work. Adding a hosts entry for IP wordpress.docker.localhost will not work long term as the docker IP will change.

Looking for ideas on setting up behat with docker4wordpress or adding something to the setup.

Cannot start service traefik: driver failed programming external connectivity

Codebase

Built-in vanilla WordPress

Host OS

Windows 10 Pro with Hyper-V

Docker info output

ERROR: for traefik  Cannot start service traefik: driver failed programming external connectivity on endpoint nginx_traefik_1 (56761d779bd3d63841b709c8a8fa4aa2a763aa0e2244204c1dd6aeb92d6b1523): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8000:tcp:172.18.0.3:80: input/output error

Docker compose file

Same as in the repo, no changes.

Runs on http://wp.docker.localhost:8000/web not http://wp.docker.localhost:8000

Documentation says:
Your WordPress website should be up and running at http://wp.docker.localhost:8000

But it runs on:
http://wp.docker.localhost:8000/web

Codebase

WordPress or mounted codebase

Host OS

macOS Mojave

Docker info output

ontainers: 16
 Running: 7
 Paused: 0
 Stopped: 9
Images: 27
Server Version: 18.09.0
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.952GiB
Name: linuxkit-025000000001
ID: 6EGB:5FO7:5ZYO:QWNR:3WKZ:XFGV:ZJOZ:JBTQ:FTOW:X374:GBSZ:HC4S
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 85
 Goroutines: 101
 System Time: 2018-12-19T23:59:11.4939112Z
 EventsListeners: 3
HTTP Proxy: gateway.docker.internal:3128
HTTPS Proxy: gateway.docker.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

Docker compose file

Make sure you remove all commented services.


services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
#    volumes:
#      - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
#      - /path/to/mariadb/data/on/host:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
#      PHP_XDEBUG: 1
#      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
#      PHP_IDE_CONFIG: serverName=my-ide
#      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
#      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
#      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
    volumes:
      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
#      - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
## For XHProf and Xdebug profiler traces
#      - files:/mnt/files

  nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
      #NGINX_SERVER_ROOT: /var/www/html/subdir
    volumes:
      - ./:/var/www/html
# Options for macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
#      - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=${PROJECT_NAME}_nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=${PROJECT_NAME}_mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

#  postgres:
#    image: wodby/postgres:$POSTGRES_TAG
#    container_name: "${PROJECT_NAME}_postgres"
#    stop_grace_period: 30s
#    environment:
#      POSTGRES_PASSWORD: $DB_PASSWORD
#      POSTGRES_DB: $DB_NAME
#      POSTGRES_USER: $DB_USER
#    volumes:
#      - ./postgres-init:/docker-entrypoint-initdb.d # Place init file(s) here.
#      - /path/to/postgres/data/on/host:/var/lib/postgresql/data # I want to manage volumes manually.

#  apache:
#    image: wodby/apache:$APACHE_TAG
#    container_name: "${PROJECT_NAME}_apache"
#    depends_on:
#      - php
#    environment:
#      APACHE_LOG_LEVEL: debug
#      APACHE_BACKEND_HOST: php
#      APACHE_VHOST_PRESET: php
#    volumes:
#      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
##      - ./:/var/www/html:cached # User-guided caching
##      - docker-sync:/var/www/html # Docker-sync
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_apache'
#      - 'traefik.port=80'
#      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

#  varnish:
#    image: wodby/varnish:$VARNISH_TAG
#    container_name: "${PROJECT_NAME}_varnish"
#    depends_on:
#      - nginx
#    environment:
#      VARNISH_SECRET: secret
#      VARNISH_BACKEND_HOST: nginx
#      VARNISH_BACKEND_PORT: 80
#      VARNISH_PURGE_KEY: key
#      VARNISH_CONFIG_PRESET: wordpress
#      VARNISH_PURGE_EXTERNAL_REQUEST_HEADER: X-Real-IP
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_varnish'
#      - 'traefik.port=6081'
#      - 'traefik.frontend.rule=Host:varnish.${PROJECT_BASE_URL}'

#  redis:
#    container_name: "${PROJECT_NAME}_redis"
#    image: wodby/redis:$REDIS_TAG

#  adminer:
#    container_name: "${PROJECT_NAME}_adminer"
#    image: wodby/adminer:$ADMINER_TAG
#    environment:
## For PostgreSQL:
##      ADMINER_DEFAULT_DB_DRIVER: pgsql
#      ADMINER_DEFAULT_DB_HOST: $DB_HOST
#      ADMINER_DEFAULT_DB_NAME: $DB_NAME
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_adminer'
#      - 'traefik.port=9000'
#      - 'traefik.frontend.rule=Host:adminer.${PROJECT_BASE_URL}'

#  webgrind:
#    image: wodby/webgrind:$WEBGRIND_TAG
#    container_name: "${PROJECT_NAME}_webgrind"
#    environment:
#      WEBGRIND_PROFILER_DIR: /mnt/files/xdebug/profiler
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_webgrind'
#      - 'traefik.port=8080'
#      - 'traefik.frontend.rule=Host:webgrind.${PROJECT_BASE_URL}'
#    volumes:
#      - files:/mnt/files

  pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=${PROJECT_NAME}_pma'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

#  athenapdf:
#    image: arachnysdocker/athenapdf-service:$ATHENAPDF_TAG
#    container_name: "${PROJECT_NAME}_athenapdf"
#    environment:
#      WEAVER_AUTH_KEY: weaver-auth-key
#      WEAVER_ATHENA_CMD: "athenapdf -S"
#      WEAVER_MAX_WORKERS: 10
#      WEAVER_MAX_CONVERSION_QUEUE: 50
#      WEAVER_WORKER_TIMEOUT: 90
#      WEAVER_CONVERSION_FALLBACK: "false"

#  blackfire:
#    image: blackfire/blackfire
#    container_name: "${PROJECT_NAME}_blackfire"
#    environment:
#      BLACKFIRE_SERVER_ID: XXXXX
#      BLACKFIRE_SERVER_TOKEN: YYYYY

#  solr:
#    image: wodby/solr:$SOLR_TAG
#    container_name: "${PROJECT_NAME}_solr"
#    environment:
#      SOLR_HEAP: 1024m
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_solr'
#      - 'traefik.port=8983'
#      - 'traefik.frontend.rule=Host:solr.${PROJECT_BASE_URL}'

#  elasticsearch:
#    image: wodby/elasticsearch:$ELASTICSEARCH_TAG
#    environment:
#      ES_JAVA_OPTS: "-Xms500m -Xmx500m"
#    ulimits:
#      memlock:
#        soft: -1
#        hard: -1

#  kibana:
#    image: wodby/kibana:$KIBANA_TAG
#    depends_on:
#      - elasticsearch
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_kibana'
#      - 'traefik.port=5601'
#      - 'traefik.frontend.rule=Host:kibana.php.docker.localhost'

#  node:
#    image: wodby/node:$NODE_TAG
#    container_name: "${PROJECT_NAME}_node"
#    working_dir: /app
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_node'
#      - 'traefik.port=3000'
#      - 'traefik.frontend.rule=Host:front.${PROJECT_BASE_URL}'
#    expose:
#      - "3000"
#    volumes:
#      - ./path/to/your/single-page-app:/app
#    command: sh -c 'npm install && npm run start'

#  memcached:
#    container_name: "${PROJECT_NAME}_memcached"
#    image: wodby/memcached:$MEMCACHED_TAG

#  opensmtpd:
#    container_name: "${PROJECT_NAME}_opensmtpd"
#    image: wodby/opensmtpd:$OPENSMTPD_TAG

#  rsyslog:
#    container_name: "${PROJECT_NAME}_rsyslog"
#    image: wodby/rsyslog:$RSYSLOG_TAG

#  xhprof:
#    image: wodby/xhprof:$XHPROF_TAG
#    restart: always
#    volumes:
#      - files:/mnt/files
#    labels:
#      - 'traefik.backend=${PROJECT_NAME}_xhprof'
#      - 'traefik.port=8080'
#      - 'traefik.frontend.rule=Host:xhprof.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=${PROJECT_NAME}_portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '8000:80'
#      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

#volumes:
## Docker-sync for macOS users
#  docker-sync:
#    external: true
## For Xdebug profiler
#  files:

Issue with WordPress trademark?

Hi Chingis,
did you know, the WordPress Foundation Trademark Usage Policy has a strikt regulation for the use of "WordPress" in domain names:

"Please do not use WordPress or WordCamp as part of a domain name."

Source: http://wordpressfoundation.org/trademark-policy/

I think, it is better if you rename your domain in: docker4wp.org. This is the normal way to name WordPress in domains.

Hope this was helpful :-)

Can't enable PHP 7.2

Trying to set Docker to load PHP 7.2.
.env file has these set:
WORDPRESS_TAG=5-4.12.0
PHP_TAG=7.2-dev-4.12.0

But still loading PHP 7.3.2. Hoping to have 7.2 load in order to use XDebug in local development.

I've ran make prune but PHP never seems to change.

Codebase

Vanilla WordPress

Host OS

Linux - Ubuntu 18.04.1 LTS

Docker info output

Containers: 33
 Running: 7
 Paused: 0
 Stopped: 26
Images: 20
Server Version: 18.09.1
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
runc version: 96ec2177ae841256168fcf76954f7177af9446eb
init version: fec3683
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.15.0-45-generic
Operating System: Ubuntu 18.04.1 LTS
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 31.27GiB
Name: Thor
ID: WWOS:KNGT:SH4E:B6GO:UQME:QVDZ:KENI:T7FI:VCTE:5UVX:FCCQ:WZDA
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

WARNING: No swap limit support

Docker compose file

version: "3"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
    volumes:
      - ./database:/var/lib/mysql

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
      PHP_FPM_USER: wodby
      PHP_FPM_GROUP: wodby
      PHP_XDEBUG: 1
      PHP_XDEBUG_DEFAULT_ENABLE: 1
      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
      PHP_XDEBUG_SESSION: xdebug-atom
      PHP_XDEBUG_REMOTE_HOST: 10.0.0.20
      PHP_XDEBUG_REMOTE_LOG: /var/www/html/xdebug.log
    volumes:
      - ./html:/var/www/html
      - files:/mnt/files

  apache:
    image: wodby/apache:$APACHE_TAG
    container_name: "${PROJECT_NAME}_apache"
    depends_on:
      - php
    environment:
      APACHE_LOG_LEVEL: debug
      APACHE_BACKEND_HOST: php
      APACHE_VHOST_PRESET: php
    volumes:
      - ./html:/var/www/html
    labels:
      - 'traefik.backend=${PROJECT_NAME}_apache'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  webgrind:
    image: wodby/webgrind:$WEBGRIND_TAG
    container_name: "${PROJECT_NAME}_webgrind"
    environment:
      WEBGRIND_PROFILER_DIR: /mnt/files/xdebug/profiler
    labels:
      - 'traefik.backend=${PROJECT_NAME}_webgrind'
      - 'traefik.port=8080'
      - 'traefik.frontend.rule=Host:webgrind.${PROJECT_BASE_URL}'
    volumes:
      - files:/mnt/files

  pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=${PROJECT_NAME}_pma'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=${PROJECT_NAME}_portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '8000:80'
      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

volumes:
  files:

Docker compose override file

version: "3"

services:
  php:
    image: wodby/wordpress:$WORDPRESS_TAG
    environment:
      PHP_FPM_CLEAR_ENV: "no"
    volumes:
      - ./html:/var/www/html

  apache:
    volumes:
      - ./html:/var/www/html

volumes:
  codebase:

Can't enable Xdebug when using the 7.2 branch

Hi Chingis, thanks for your excellent work. I'm having a small problem with docker4wordpress, hope you can give me a hint.

I've been trying to enable xdebug without success. As you can see in the docker-compose.yml info (at the bottom) the definition includes the required flags, plus the ones required for macOS:

PHP_XDEBUG: 1
PHP_XDEBUG_DEFAULT_ENABLE: 1
PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
PHP_XDEBUG_REMOTE_HOST: "10.254.254.254"
PHP_XDEBUG_PROFILER_OUTPUT_DIR: /mnt/files/xdebug/profiler
PHP_XDEBUG_TRACE_OUTPUT_DIR: /mnt/files/xdebug/traces

However, my IDE (PHPStorm) can't see the debugger. It looks like no xdebug extension is loaded, since the output of php_info() doesn't include any information about it:

PHP version: 7.2.0

PHP CLI:
/usr/local/bin/php
PHP CGI: Not Installed (php-cgi sapi is necessary to use built-in web server) 

Loaded Configuration File: Not Found

Additional .ini files parsed:
/usr/local/etc/php/conf.d/docker-php-ext-amqp.ini
/usr/local/etc/php/conf.d/docker-php-ext-apcu.ini
/usr/local/etc/php/conf.d/docker-php-ext-ast.ini
/usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini
/usr/local/etc/php/conf.d/docker-php-ext-bz2.ini
/usr/local/etc/php/conf.d/docker-php-ext-calendar.ini
/usr/local/etc/php/conf.d/docker-php-ext-exif.ini
/usr/local/etc/php/conf.d/docker-php-ext-gd.ini
/usr/local/etc/php/conf.d/docker-php-ext-geoip.ini
/usr/local/etc/php/conf.d/docker-php-ext-imagick.ini
/usr/local/etc/php/conf.d/docker-php-ext-imap.ini
/usr/local/etc/php/conf.d/docker-php-ext-intl.ini
/usr/local/etc/php/conf.d/docker-php-ext-ldap.ini
/usr/local/etc/php/conf.d/docker-php-ext-mcrypt.ini
/usr/local/etc/php/conf.d/docker-php-ext-memcached.ini
/usr/local/etc/php/conf.d/docker-php-ext-mongodb.ini
/usr/local/etc/php/conf.d/docker-php-ext-mysqli.ini
/usr/local/etc/php/conf.d/docker-php-ext-oauth.ini
/usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
/usr/local/etc/php/conf.d/docker-php-ext-pcntl.ini
/usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini
/usr/local/etc/php/conf.d/docker-php-ext-pdo_pgsql.ini
/usr/local/etc/php/conf.d/docker-php-ext-pgsql.ini
/usr/local/etc/php/conf.d/docker-php-ext-redis.ini
/usr/local/etc/php/conf.d/docker-php-ext-soap.ini
/usr/local/etc/php/conf.d/docker-php-ext-sockets.ini
/usr/local/etc/php/conf.d/docker-php-ext-uploadprogress.ini
/usr/local/etc/php/conf.d/docker-php-ext-xmlrpc.ini
/usr/local/etc/php/conf.d/docker-php-ext-xsl.ini
/usr/local/etc/php/conf.d/docker-php-ext-yaml.ini
/usr/local/etc/php/conf.d/docker-php-ext-zip.ini

Debugger extension: Not Found

Loaded extensions:  amqp, apcu, ast, bcmath, bz2, calendar, Core, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, geoip, hash, iconv, imagick, imap, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, mysqli, mysqlnd, OAuth, openssl, pcntl, pcre, PDO, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, readline, redis, Reflection, session, SimpleXML, soap, sockets, SPL, sqlite3, standard, tokenizer, uploadprogress, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib

I've tried using one of to other images suggested (like wodby/wordpress-php:7.2-3.3.1), with no luck. Even tried using wodby/php directly –which seems to work fine BTW– but still, it won't load xdebug. As a side note, I've been using your docker4drupal image for a while with fantastic results, and xdebug works just fine there.

Any help will be greatly appreciated, many thanks in advance.

Codebase

Tried both (first with the default named volume, then with my own codebase).

Host OS

macOS Sierra

Docker info output

Containers: 16
 Running: 10
 Paused: 0
 Stopped: 6
Images: 234
Server Version: 17.12.0-ce
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 480
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 89623f28b87a6004d4b785663257362d1658a729
runc version: b2567b37d7b75eb4cf325b77297b140ea686ce8f
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.60-linuxkit-aufs
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.855GiB
Name: linuxkit-025000000001
ID: NHNB:QGFY:NNWC:7YBC:J5B5:KQXR:4FB5:EIMQ:KDAX:CRRS:M2N2:KRVV
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
HTTP Proxy: docker.for.mac.http.internal:3128
HTTPS Proxy: docker.for.mac.http.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

Docker compose file

version: "2"

services:
  wordpress_php:
    image: wodby/wordpress:4-7.2-3.3.1
    container_name: wordpress_php
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      PHP_FPM_CLEAR_ENV: "no"
      DB_HOST: mysql
      DB_USER: XXX
      DB_PASSWORD: XXX
      DB_NAME: wordpress
      DB_DRIVER: mysql
      PHP_XDEBUG: 1
      PHP_XDEBUG_DEFAULT_ENABLE: 1
      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
      PHP_XDEBUG_REMOTE_HOST: "10.254.254.254"
      PHP_XDEBUG_PROFILER_OUTPUT_DIR: /mnt/files/xdebug/profiler
      PHP_XDEBUG_TRACE_OUTPUT_DIR: /mnt/files/xdebug/traces
      PHP_BLACKFIRE: 1
    external_links:
      - mysql
    networks:
      - dockernet
    volumes:
      - ./html:/var/www/html:cached
  web:
    image: wodby/wordpress-nginx:4-1.13-3.0.2
    container_name: wordpress
    environment:
      NGINX_STATIC_CONTENT_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: wordpress_php
    volumes:
      - ./html:/var/www/html:cached
    depends_on:
      - wordpress_php
    external_links:
      - mysql
    networks:
      - dockernet
    labels:
      - 'traefik.enable=true'
      - 'traefik.backend=wordpress'
      - 'traefik.frontend.rule=Host:wordpress.test,www.wordpress.test'
      - 'traefik.docker.network=dockernet'
      - 'traefik.port=80'

networks:
  dockernet:
    external: true

Logs output

wordpress_php    | [12-Jan-2018 18:21:33] NOTICE: fpm is running, pid 1
wordpress_php    | [12-Jan-2018 18:21:33] NOTICE: ready to handle connections
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: using the "epoll" event method
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: nginx/1.13.7
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: built by gcc 6.3.0 (Alpine 6.3.0) 
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: OS: Linux 4.9.60-linuxkit-aufs
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: start worker processes
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: start worker process 28
wordpress        | 2018/01/12 18:21:33 [notice] 1#1: start worker process 29

Fix mounted codebase user permission

Codebase

Mounted codebase

Host OS

Ubuntu 16.04.4 LTS

Docker info output

Containers: 7
 Running: 6
 Paused: 0
 Stopped: 1
Images: 7
Server Version: 17.12.1-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9b55aab90508bd389d7654c4baf173a981477d55
runc version: 9f9c96235cc97674e935002fc3d78361b696a69e
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-116-generic
Operating System: Ubuntu 16.04.4 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 974.3MiB
Name: ubuntu
ID: 3KM2:ZLVO:CBRT:4TJS:MGPI:TQGP:IYO3:JCUZ:MVXV:RLCQ:YOC7:FVM6
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
HTTP Proxy: http://usr:pwd@ip:port/
HTTPS Proxy: http://usr:pwd@ip:port/
No Proxy: localhost,127.0.0.1,localaddress,.localdomain.com
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: No swap limit support

Docker compose file

version: "2"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    ports:
      - '53306:3306'
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
    volumes:
      - /home/user/mariadb/mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
      - /home/user/mariadb/data:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
    volumes:
      - /home/user/mywebsite:/var/www/html

  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

  apache:
    image: wodby/php-apache:$APACHE_TAG
    container_name: "${PROJECT_NAME}_apache"
    depends_on:
      - php
    environment:
      APACHE_LOG_LEVEL: debug
      APACHE_BACKEND_HOST: php
    volumes:
      - /home/user/mywebsite:/var/www/html
    labels:
      - 'traefik.backend=apache'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '80:80'
      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

I'm running 5.0.1 docker4wordpress with codebase installation.
I've loaded all my old wordpress files and database to volumes and mariadb.
Wordpress starts, but I don't have permission to update plugins etc. from wordpress.
All my files in volume "/home/user/mywebsite" are owned by user MyUser[1000] and group MyGroup[1000].
Wordpress container wants to write with group alpine-www-data [82] and user [82].
Launching groups alpine-www-data message is show groups: ‘alpine-www-data’: no such user

How can I fix these permission issues?

ERR_CONNECTION_REFUSED. Failed to connect to localhost port 80

Preface

Hi guys,

I am getting an ERR_CONNECTION_REFUSED error, when trying to access http://wp.docker.localhost/. I think it has or might have to do with the settings and permissions on my machine, but can't figure out, if that actually is the case and if so how to solve it.
I trial and error-ed different settings with docker-sync and user-guided caching, but none worked. (Only activating docker-sync made phpmyadmin accessible, but threw a nginx 403 error on the localhost site. Activating user-guided caching resolved the nginx permission issue, but resulted in the ERR_CONNECTION_REFUSED.) Since that error persists, I guess/ed that the main issue lies somewhere else, and tried figuring out where that was, but ...
after hour-long google searches, looking for the needle in the haystack, which felt more like digging through a manure heap, I feel like it makes more sense asking you guys for at least some kind of guidance into the right direction, or (of course that'd be even more amazing) some kind of solution.

Looking forward to your advice!

Issue Description

Inserting curl -I -L localhost into the terminal returns:
curl: (7) Failed to connect to localhost port 80: Connection refused.

Debug Details

Codebase

Mounted codebase

Host OS

macOS Mojave 10.14.5

Docker info output

Containers: 8
 Running: 8
 Paused: 0
 Stopped: 0
Images: 61
Server Version: 18.09.2
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
runc version: 09c8266bf2fcf9519a651b04ae54c967b9ab86ec
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.952GiB
Name: linuxkit-025000000001
ID: PDWW:VU2G:KVAU:J6PF:JHZH:QSPE:LKHW:KVFH:QAP7:TRG3:33VR:T4NM
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 113
 Goroutines: 167
 System Time: 2019-05-27T22:37:14.834332618Z
 EventsListeners: 4
HTTP Proxy: gateway.docker.internal:3128
HTTPS Proxy: gateway.docker.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine 

Docker compose file

version: "3"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
    volumes:
      - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
#      - /path/to/mariadb/data/on/host:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
      PHP_FPM_USER: wodby
      PHP_FPM_GROUP: wodby
## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
#      PHP_XDEBUG: 1
#      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
#      PHP_IDE_CONFIG: serverName=my-ide
#      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
#      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
#      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
    volumes:
      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
      - ./:/var/www/html:cached # User-guided caching
      - docker-sync:/var/www/html # Docker-sync
## For XHProf and Xdebug profiler traces
#      - files:/mnt/files

  nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
      #NGINX_SERVER_ROOT: /var/www/html/subdir
    volumes:
      - ./:/var/www/html
# Options for macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
      - ./:/var/www/html:cached # User-guided caching
      - docker-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=${PROJECT_NAME}_nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=${PROJECT_NAME}_mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'


  pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=${PROJECT_NAME}_pma'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=${PROJECT_NAME}_portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '8000:80'
#      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

volumes:
# Docker-sync for macOS users
  docker-sync:
    external: true
## For Xdebug profiler
#  files:

Logs output

Attaching to my_wordpress_project_nginx, my_wordpress_project_pma, my_wordpress_project_php, my_wordpress_project_mailhog, my_wordpress_project_portainer, my_wordpress_project_traefik, my_wordpress_project_mariadb
my_wordpress_project_pma | phpMyAdmin not found in /var/www/html - copying now...
my_wordpress_project_pma | Complete! phpMyAdmin has been successfully copied to /var/www/html
my_wordpress_project_pma | /usr/lib/python2.7/site-packages/supervisor/options.py:461: UserWarning: Supervisord is running as root and it is searching for its configuration file in default locations (including its current working directory); you probably want to specify a "-c" argument specifying an absolute path to a configuration file for improved security.
my_wordpress_project_pma |   'Supervisord is running as root and it is searching '
my_wordpress_project_pma | 2019-05-27 23:08:18,997 CRIT Supervisor is running as root.  Privileges were not dropped because no user is specified in the config file.  If you intend to run as root, you can set user=root in the config file to avoid this message.
my_wordpress_project_pma | 2019-05-27 23:08:18,997 INFO Included extra file "/etc/supervisor.d/nginx.ini" during parsing
my_wordpress_project_pma | 2019-05-27 23:08:18,997 INFO Included extra file "/etc/supervisor.d/php.ini" during parsing
my_wordpress_project_pma | 2019-05-27 23:08:19,003 INFO RPC interface 'supervisor' initialized
my_wordpress_project_pma | 2019-05-27 23:08:19,004 CRIT Server 'unix_http_server' running without any HTTP authentication checking
my_wordpress_project_pma | 2019-05-27 23:08:19,004 INFO supervisord started with pid 1
my_wordpress_project_pma | 2019-05-27 23:08:20,007 INFO spawned: 'php-fpm' with pid 21
my_wordpress_project_pma | 2019-05-27 23:08:20,009 INFO spawned: 'nginx' with pid 22
my_wordpress_project_pma | [27-May-2019 23:08:20] NOTICE: fpm is running, pid 21
my_wordpress_project_pma | [27-May-2019 23:08:20] NOTICE: ready to handle connections
my_wordpress_project_pma | 2019-05-27 23:08:21,040 INFO success: php-fpm entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
my_wordpress_project_pma | 2019-05-27 23:08:21,040 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
my_wordpress_project_portainer | 2019/05/27 21:02:18 Starting Portainer 1.20.2 on :9000
my_wordpress_project_portainer | 2019/05/27 22:30:12 Templates already registered inside the database. Skipping template import.
my_wordpress_project_portainer | 2019/05/27 22:30:12 Instance already has defined endpoints. Skipping the endpoint defined via CLI.
my_wordpress_project_portainer | 2019/05/27 22:30:12 Starting Portainer 1.20.2 on :9000
my_wordpress_project_portainer | 2019/05/27 22:35:23 Templates already registered inside the database. Skipping template import.
my_wordpress_project_portainer | 2019/05/27 22:35:23 Instance already has defined endpoints. Skipping the endpoint defined via CLI.
my_wordpress_project_portainer | 2019/05/27 22:35:23 Starting Portainer 1.20.2 on :9000
my_wordpress_project_mailhog | 2019/05/27 22:19:35 Using in-memory storage
my_wordpress_project_mailhog | 2019/05/27 22:19:35 [SMTP] Binding to address: 0.0.0.0:1025
my_wordpress_project_mailhog | 2019/05/27 22:19:35 Serving under http://0.0.0.0:8025/
my_wordpress_project_mailhog | [HTTP] Binding to address: 0.0.0.0:8025
my_wordpress_project_mailhog | Creating API v1 with WebPath:
my_wordpress_project_mailhog | Creating API v2 with WebPath:
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | 2019/05/27 22:30:11 Using in-memory storage
my_wordpress_project_mailhog | 2019/05/27 22:30:11 [SMTP] Binding to address: 0.0.0.0:1025
my_wordpress_project_mailhog | 2019/05/27 22:30:11 Serving under http://0.0.0.0:8025/
my_wordpress_project_mailhog | [HTTP] Binding to address: 0.0.0.0:8025
my_wordpress_project_mailhog | Creating API v1 with WebPath:
my_wordpress_project_mailhog | Creating API v2 with WebPath:
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [HTTP] Binding to address: 0.0.0.0:8025
my_wordpress_project_mailhog | Creating API v1 with WebPath:
my_wordpress_project_mailhog | Creating API v2 with WebPath:
my_wordpress_project_mailhog | 2019/05/27 22:35:22 Using in-memory storage
my_wordpress_project_mailhog | 2019/05/27 22:35:22 [SMTP] Binding to address: 0.0.0.0:1025
my_wordpress_project_mailhog | 2019/05/27 22:35:22 Serving under http://0.0.0.0:8025/
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_mailhog | [APIv1] KEEPALIVE /api/v1/events
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Using TOML configuration file /dev/null"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=warning msg="web provider configuration is deprecated, you should use these options : api, rest provider, ping and metrics"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Traefik version v1.7.11 built on 2019-04-26_08:42:33AM"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="\nStats collection is disabled.\nHelp us improve Traefik by turning this feature on :)\nMore details on: https://docs.traefik.io/basics/#collected-data\n"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Preparing server traefik &{Address::8080 TLS:<nil> Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] WhiteList:<nil> Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc0002d3a60} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Preparing server http &{Address::80 TLS:<nil> Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] WhiteList:<nil> Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc0002d3a00} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Starting provider configuration.ProviderAggregator {}"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Starting server on :8080"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Starting server on :80"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Starting provider *docker.Provider {\"Watch\":true,\"Filename\":\"\",\"Constraints\":null,\"Trace\":false,\"TemplateVersion\":2,\"DebugLogGeneratedTemplate\":false,\"Endpoint\":\"unix:///var/run/docker.sock\",\"Domain\":\"\",\"TLS\":null,\"ExposedByDefault\":true,\"UseBindPortIP\":false,\"SwarmMode\":false,\"Network\":\"\",\"SwarmModeRefreshSeconds\":15}"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T21:02:08Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T21:02:12Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T21:02:12Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T21:14:49Z" level=info msg="Skipping same configuration for provider docker"
my_wordpress_project_traefik | time="2019-05-27T21:14:50Z" level=info msg="Skipping same configuration for provider docker"
my_wordpress_project_traefik | time="2019-05-27T21:54:42Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T21:54:42Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T21:55:28Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T21:55:28Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:17:45Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:17:45Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:17:47Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:17:47Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:17:49Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:17:49Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:17:51Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:17:51Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:19:34Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:19:34Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:19:36Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:19:36Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:19:38Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:19:38Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:20:37Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:20:37Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:20:39Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:20:39Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:20:55Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:20:55Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:20:57Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:20:57Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:20:59Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:20:59Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:21:41Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:21:41Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:21:43Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:21:43Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:21:45Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:21:45Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:25:22Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:25:22Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:25:24Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:25:24Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:25:26Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:25:26Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:26:16Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:26:16Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:26:18Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:26:18Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:26:20Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:26:20Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:30:08Z" level=info msg="I have to go..."
my_wordpress_project_traefik | time="2019-05-27T22:30:08Z" level=info msg="Stopping server gracefully"
my_wordpress_project_traefik | time="2019-05-27T22:30:08Z" level=info msg="Server stopped"
my_wordpress_project_traefik | time="2019-05-27T22:30:08Z" level=info msg="Shutting down"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Using TOML configuration file /dev/null"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=warning msg="web provider configuration is deprecated, you should use these options : api, rest provider, ping and metrics"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Traefik version v1.7.11 built on 2019-04-26_08:42:33AM"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="\nStats collection is disabled.\nHelp us improve Traefik by turning this feature on :)\nMore details on: https://docs.traefik.io/basics/#collected-data\n"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Preparing server http &{Address::80 TLS:<nil> Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] WhiteList:<nil> Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc0000122e0} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Preparing server traefik &{Address::8080 TLS:<nil> Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] WhiteList:<nil> Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc000012320} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Starting server on :80"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Starting provider configuration.ProviderAggregator {}"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Starting server on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Starting provider *docker.Provider {\"Watch\":true,\"Filename\":\"\",\"Constraints\":null,\"Trace\":false,\"TemplateVersion\":2,\"DebugLogGeneratedTemplate\":false,\"Endpoint\":\"unix:///var/run/docker.sock\",\"Domain\":\"\",\"TLS\":null,\"ExposedByDefault\":true,\"UseBindPortIP\":false,\"SwarmMode\":false,\"Network\":\"\",\"SwarmModeRefreshSeconds\":15}"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:30:12Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:30:14Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:30:14Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:35:06Z" level=info msg="I have to go..."
my_wordpress_project_traefik | time="2019-05-27T22:35:06Z" level=info msg="Stopping server gracefully"
my_wordpress_project_traefik | time="2019-05-27T22:35:06Z" level=info msg="Server stopped"
my_wordpress_project_traefik | time="2019-05-27T22:35:06Z" level=info msg="Shutting down"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Using TOML configuration file /dev/null"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=warning msg="web provider configuration is deprecated, you should use these options : api, rest provider, ping and metrics"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Traefik version v1.7.11 built on 2019-04-26_08:42:33AM"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="\nStats collection is disabled.\nHelp us improve Traefik by turning this feature on :)\nMore details on: https://docs.traefik.io/basics/#collected-data\n"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Preparing server traefik &{Address::8080 TLS:<nil> Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] WhiteList:<nil> Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc00035b920} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Preparing server http &{Address::80 TLS:<nil> Redirect:<nil> Auth:<nil> WhitelistSourceRange:[] WhiteList:<nil> Compress:false ProxyProtocol:<nil> ForwardedHeaders:0xc00035b8c0} with readTimeout=0s writeTimeout=0s idleTimeout=3m0s"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Starting provider configuration.ProviderAggregator {}"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Starting server on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Starting server on :80"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Starting provider *docker.Provider {\"Watch\":true,\"Filename\":\"\",\"Constraints\":null,\"Trace\":false,\"TemplateVersion\":2,\"DebugLogGeneratedTemplate\":false,\"Endpoint\":\"unix:///var/run/docker.sock\",\"Domain\":\"\",\"TLS\":null,\"ExposedByDefault\":true,\"UseBindPortIP\":false,\"SwarmMode\":false,\"Network\":\"\",\"SwarmModeRefreshSeconds\":15}"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:35:23Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:35:25Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:35:25Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:36:16Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:36:16Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:36:18Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:36:18Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:36:20Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T22:36:20Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:36:22Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T22:36:22Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T23:08:14Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T23:08:14Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T23:08:14Z" level=info msg="Skipping same configuration for provider docker"
my_wordpress_project_traefik | time="2019-05-27T23:08:16Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T23:08:16Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T23:08:18Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T23:08:18Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_traefik | time="2019-05-27T23:08:20Z" level=info msg="Server configuration reloaded on :8080"
my_wordpress_project_traefik | time="2019-05-27T23:08:20Z" level=info msg="Server configuration reloaded on :80"
my_wordpress_project_nginx | shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: using the "epoll" event method
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: nginx/1.15.12
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: built by gcc 6.4.0 (Alpine 6.4.0)
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: OS: Linux 4.9.125-linuxkit
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: start worker processes
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: start worker process 37
my_wordpress_project_nginx | 2019/05/27 23:08:19 [notice] 1#1: start worker process 38
my_wordpress_project_mariadb | Initializing database
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] /usr/bin/mysqld (mysqld 10.1.40-MariaDB) starting as process 59 ...
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Setting file ./ibdata1 size to 10 MB
my_wordpress_project_mariadb | 2019-05-27 21:02:08 139868457671560 [Note] InnoDB: Setting log file ./ib_logfile101 size to 128 MB
my_wordpress_project_mariadb | 2019-05-27 21:02:12 139868457671560 [Note] InnoDB: Setting log file ./ib_logfile1 size to 128 MB
my_wordpress_project_mariadb | 2019-05-27 21:02:16 139868457671560 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
my_wordpress_project_mariadb | 2019-05-27 21:02:16 139868457671560 [Warning] InnoDB: New log files created, LSN=45781
my_wordpress_project_mariadb | 2019-05-27 21:02:16 139868457671560 [Note] InnoDB: Doublewrite buffer not found: creating new
my_wordpress_project_mariadb | 2019-05-27 21:02:16 139868457671560 [Note] InnoDB: Doublewrite buffer created
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Warning] InnoDB: Creating foreign key constraint system tables.
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Note] InnoDB: Foreign key constraint system tables created
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Note] InnoDB: Creating tablespace and datafile system tables.
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Note] InnoDB: Tablespace and datafile system tables created.
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 21:02:18 139868457671560 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 0
my_wordpress_project_mariadb | 2019-05-27 21:02:19 139867871128296 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] /usr/bin/mysqld (mysqld 10.1.40-MariaDB) starting as process 87 ...
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 21:02:27 140198463384456 [Note] InnoDB: Highest supported file format is Barracuda.
my_wordpress_project_mariadb | 2019-05-27 21:02:29 140198463384456 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 21:02:29 140198463384456 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 21:02:29 140198463384456 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 1616730
my_wordpress_project_mariadb | 2019-05-27 21:02:29 140197883927272 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] /usr/bin/mysqld (mysqld 10.1.40-MariaDB) starting as process 116 ...
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Highest supported file format is Barracuda.
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637690465160 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 1616740
my_wordpress_project_mariadb | 2019-05-27 21:02:32 140637111007976 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
my_wordpress_project_mariadb | To do so, start the server, then issue the following commands:
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | '/usr/bin/mysqladmin' -u root password 'new-password'
my_wordpress_project_mariadb | '/usr/bin/mysqladmin' -u root -h  password 'new-password'
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | Alternatively you can run:
my_wordpress_project_mariadb | '/usr/bin/mysql_secure_installation'
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | which will also give you the option of removing the test
my_wordpress_project_mariadb | databases and anonymous user created by default.  This is
my_wordpress_project_mariadb | strongly recommended for production servers.
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | See the MariaDB Knowledgebase at http://mariadb.com/kb or the
my_wordpress_project_mariadb | MySQL manual for more instructions.
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | Please report any problems at http://mariadb.org/jira
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | The latest information about MariaDB is available at http://mariadb.org/.
my_wordpress_project_mariadb | You can find additional information about the MySQL part at:
my_wordpress_project_mariadb | http://dev.mysql.com
my_wordpress_project_mariadb | Consider joining MariaDB's strong and vibrant community:
my_wordpress_project_mariadb | https://mariadb.org/get-involved/
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | Database initialized
my_wordpress_project_mariadb | MySQL init process in progress...
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] mysqld (mysqld 10.1.40-MariaDB) starting as process 149 ...
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Highest supported file format is Barracuda.
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 1616750
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715381717736 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] Plugin 'FEEDBACK' is disabled.
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Warning] 'user' entry 'root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Warning] 'user' entry '@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Warning] 'proxies_priv' entry '@% root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] Reading of all Master_info entries succeded
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] Added new Master_info '' to hash table
my_wordpress_project_mariadb | 2019-05-27 21:02:35 139715961174920 [Note] mysqld: ready for connections.
my_wordpress_project_mariadb | Version: '10.1.40-MariaDB'  socket: '/var/run/mysqld/mysqld.sock'  port: 0  MariaDB Server
my_wordpress_project_mariadb | 2019-05-27 21:02:37 139715380865768 [Warning] 'proxies_priv' entry '@% root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 21:02:37 139715380865768 [Warning] 'proxies_priv' entry '@% root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | /usr/local/bin/init_mariadb: running /docker-entrypoint-initdb.d/backup.sql
my_wordpress_project_mariadb |
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | 2019-05-27 21:02:42 139715380546280 [Note] mysqld: Normal shutdown
my_wordpress_project_mariadb | 2019-05-27 21:02:42 139715380546280 [Note] Event Scheduler: Purging the queue. 0 events
my_wordpress_project_mariadb | 2019-05-27 21:02:42 139715382094568 [Note] InnoDB: FTS optimize thread exiting.
my_wordpress_project_mariadb | 2019-05-27 21:02:42 139715380546280 [Note] InnoDB: Starting shutdown...
my_wordpress_project_mariadb | 2019-05-27 21:02:43 139715380546280 [Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer pool
my_wordpress_project_php | [27-May-2019 23:08:16] NOTICE: fpm is running, pid 1
my_wordpress_project_php | [27-May-2019 23:08:16] NOTICE: ready to handle connections
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139715380546280 [Note] InnoDB: Shutdown completed; log sequence number 32758046
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139715380546280 [Note] mysqld: Shutdown complete
my_wordpress_project_mariadb |
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | MySQL init process done. Ready for start up.
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] mysqld (mysqld 10.1.40-MariaDB) starting as process 1 ...
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Highest supported file format is Barracuda.
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 32758046
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687037827816 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] Plugin 'FEEDBACK' is disabled.
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] Server socket created on IP: '0.0.0.0'.
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Warning] 'proxies_priv' entry '@% root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] Reading of all Master_info entries succeded
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] Added new Master_info '' to hash table
my_wordpress_project_mariadb | 2019-05-27 21:02:46 139687617285000 [Note] mysqld: ready for connections.
my_wordpress_project_mariadb | Version: '10.1.40-MariaDB'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MariaDB Server
my_wordpress_project_mariadb | 2019-05-27 22:30:08 139687035996904 [Note] mysqld: Normal shutdown
my_wordpress_project_mariadb | 2019-05-27 22:30:08 139687035996904 [Note] Event Scheduler: Purging the queue. 0 events
my_wordpress_project_mariadb | 2019-05-27 22:30:08 139687038204648 [Note] InnoDB: FTS optimize thread exiting.
my_wordpress_project_mariadb | 2019-05-27 22:30:08 139687035996904 [Note] InnoDB: Starting shutdown...
my_wordpress_project_mariadb | 2019-05-27 22:30:09 139687035996904 [Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer pool
my_wordpress_project_mariadb | 2019-05-27 22:30:10 139687035996904 [Note] InnoDB: Shutdown completed; log sequence number 32758066
my_wordpress_project_mariadb | 2019-05-27 22:30:10 139687035996904 [Note] mysqld: Shutdown complete
my_wordpress_project_mariadb |
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] mysqld (mysqld 10.1.40-MariaDB) starting as process 1 ...
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Highest supported file format is Barracuda.
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 32758066
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139791422647016 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] Plugin 'FEEDBACK' is disabled.
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] Server socket created on IP: '0.0.0.0'.
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Warning] 'proxies_priv' entry '@% root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] Reading of all Master_info entries succeded
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] Added new Master_info '' to hash table
my_wordpress_project_mariadb | 2019-05-27 22:30:14 139792002104200 [Note] mysqld: ready for connections.
my_wordpress_project_mariadb | Version: '10.1.40-MariaDB'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MariaDB Server
my_wordpress_project_mariadb | 2019-05-27 22:35:06 139791421795048 [Note] mysqld: Normal shutdown
my_wordpress_project_mariadb | 2019-05-27 22:35:06 139791421795048 [Note] Event Scheduler: Purging the queue. 0 events
my_wordpress_project_mariadb | 2019-05-27 22:35:06 139791423023848 [Note] InnoDB: FTS optimize thread exiting.
my_wordpress_project_mariadb | 2019-05-27 22:35:06 139791421795048 [Note] InnoDB: Starting shutdown...
my_wordpress_project_mariadb | 2019-05-27 22:35:07 139791421795048 [Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer pool
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] mysqld (mysqld 10.1.40-MariaDB) starting as process 1 ...
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Using mutexes to ref count buffer pool pages
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: The InnoDB memory heap is disabled
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Compressed tables use zlib 1.2.11
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Using Linux native AIO
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Using SSE crc32 instructions
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Initializing buffer pool, size = 128.0M
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Completed initialization of buffer pool
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Highest supported file format is Barracuda.
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: The log sequence number 32758066 in ibdata file do not match the log sequence number 32758076 in the ib_logfiles!
my_wordpress_project_mariadb | 2019-05-27 22:35:23 139725442296712 [Note] InnoDB: Restoring possible half-written data pages from the doublewrite buffer...
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] InnoDB: 128 rollback segment(s) are active.
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] InnoDB: Waiting for purge to start
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.43-84.3 started; log sequence number 32758076
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139724862839528 [Note] InnoDB: Dumping buffer pool(s) not yet started
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Plugin 'FEEDBACK' is disabled.
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Recovering after a crash using tc.log
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Starting crash recovery...
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Crash recovery finished.
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Server socket created on IP: '0.0.0.0'.
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Warning] 'proxies_priv' entry '@% root@bc8ade64a4a7' ignored in --skip-name-resolve mode.
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Reading of all Master_info entries succeded
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] Added new Master_info '' to hash table
my_wordpress_project_mariadb | 2019-05-27 22:35:24 139725442296712 [Note] mysqld: ready for connections.
my_wordpress_project_mariadb | Version: '10.1.40-MariaDB'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MariaDB Server

Additional

<curl -I -L localhost> returns
<curl: (7) Failed to connect to localhost port 80: Connection refused>.

"/etc/hosts/" file looks like this:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255	broadcasthost
::1             localhost 

127.0.0.1 wp.docker.localhost
127.0.0.1 wordpress.test
127.0.0.1 phpmyadmin.test
127.0.0.1 pma.wp.docker.localhost:8000

BrowserSync with Nginx and Traefik Reverse Proxy

I'm unable to run BrowserSync with the Traefik reverse proxy. BrowserSync doesn't know what url to proxy and I'm not sure what to put there. I've tried every combination I can think of.

I've opened a similar ticket here with no response: BrowserSync/browser-sync#1506

And I opened the issue here with no response: https://discourse.roots.io/t/sage-9-with-docker/13476

Codebase

Built-in vanilla WordPress

Host OS

e.g. macOS Sierra

Docker info output

❯ docker info
Containers: 154
 Running: 6
 Paused: 0
 Stopped: 148
Images: 79
Server Version: 17.09.1-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 06b9cb35161009dcb7123345749fef02f7cea8e0
runc version: 3f2f8b84a77f73d38244dd690525642a72156c64
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.49-moby
Operating System: Alpine Linux v3.5
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.952GiB
Name: moby
ID: KUCE:ESTY:LMPJ:K7RX:44U7:BBLW:OFT6:EMVR:BKX2:XY23:FD6M:H6J4
Docker Root Dir: /var/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 70
 Goroutines: 74
 System Time: 2019-08-02T14:36:44.907726493Z
 EventsListeners: 3
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

Docker compose file

Make sure you remove all commented services.

version: "3"

services:
    mariadb:
        image: wodby/mariadb:$MARIADB_TAG
        container_name: "${PROJECT_NAME}_mariadb"
        stop_grace_period: 30s
        environment:
            MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
            MYSQL_DATABASE: $PROJECT_NAME
            MYSQL_USER: $DB_USER
            MYSQL_PASSWORD: $DB_PASSWORD
        volumes:
        - ./init/db:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
        - ./data/db:/var/lib/mysql # I want to manage volumes manually.

    php:
        image: wodby/wordpress-php:$PHP_TAG
        container_name: "${PROJECT_NAME}_php"
        environment:
            WP_ENV: $ENV
            PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
            DB_HOST: $DB_HOST
            DB_USER: $DB_USER
            DB_PASSWORD: $DB_PASSWORD
            DB_NAME: $PROJECT_NAME
            PHP_FPM_USER: wodby
            PHP_FPM_GROUP: wodby
            ## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
        #      PHP_XDEBUG: 1
        #      PHP_XDEBUG_DEFAULT_ENABLE: 1
        #      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
        #      PHP_IDE_CONFIG: serverName=my-ide
        #      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
        #      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
        #      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
        volumes:
        - ./config/php/php.ini:/usr/local/etc/php/php.ini
        - ./www:/var/www/html
    #      - ./data/bin/build.sh:/usr/local/bin/build.sh
    #    command: /bin/ash -c "/usr/local/bin/build.sh"

    nginx:
        image: wodby/nginx:$NGINX_TAG
        container_name: "${PROJECT_NAME}_nginx"
        environment:
            NGINX_STATIC_OPEN_FILE_CACHE: "off"
            NGINX_ERROR_LOG_LEVEL: debug
            NGINX_BACKEND_HOST: php
            NGINX_VHOST_PRESET: wordpress
            #NGINX_SERVER_ROOT: /var/www/html/subdir
        depends_on:
        - php
        volumes:
        - ./www:/var/www/html
        ports:
        - "5000:5000"
        - "5001:5001"
        labels:
        - 'traefik.backend=${PROJECT_NAME}_nginx'
        - 'traefik.port=80'
        - 'traefik.frontend.rule=Host:${PROJECT_NAME}.docker.localhost'
    #      - 'traefik.frontend.rule=HostRegexp:{subdomain:.+}.${PROJECT_NAME}.docker.localhost,${PROJECT_NAME}.docker.localhost'

    pma:
        image: phpmyadmin/phpmyadmin
        container_name: "${PROJECT_NAME}_pma"
        environment:
            PMA_HOST: mariadb
            PMA_USER: user
            PMA_PASSWORD: password
            PHP_UPLOAD_MAX_FILESIZE: 1G
            PHP_MAX_INPUT_VARS: 1G
        labels:
        - 'traefik.backend=${PROJECT_NAME}_pma'
        - 'traefik.port=80'
        - 'traefik.frontend.rule=Host:pma.${PROJECT_NAME}.docker.localhost'

    mailhog:
        image: mailhog/mailhog
        container_name: "${PROJECT_NAME}_mailhog"
        labels:
        - 'traefik.backend=${PROJECT_NAME}_mailhog'
        - 'traefik.port=8025'
        - 'traefik.frontend.rule=Host:mailhog.${PROJECT_NAME}.docker.localhost'

Docker --parallel flag is now deprecated

Since last Docker update i see warning message about parallel param.
This has been made as the default behavior:

docker-compose pull is now performed in parallel by default. You can opt out using the --no-parallel flag. The --parallel flag is now deprecated and will be removed in a future version.

https://github.com/docker/compose/blob/master/CHANGELOG.md#1210-2018-04-10

It should be removed from this script.

My docker info:

Engine: 18.03.1-ce
Compose: 1.21.1
Machine: 0.14.0
Notary: 0.6.1
Credential Helper: 0.6.0

Newbie Questions

Hello,

I am a bit new to docker so excuse me my may stupid questions :) But I hope you can answer me some. I have successfully installed the vanilla wp docker on my Debian 9.3.

How do I edit the Config files?

For example where can I edit the php.ini / nginx settings? When I do a find I oly get strange folder points:

find / -name "php.ini"
/var/lib/docker/overlay2/f6f34790839e5d2010cc72eeaa8aa10303e202be68fec6b977653a4ab8a0bb8b/diff/etc/supervisor.d/php.ini
/var/lib/docker/overlay2/f6f34790839e5d2010cc72eeaa8aa10303e202be68fec6b977653a4ab8a0bb8b/diff/etc/php.ini
/var/lib/docker/overlay2/440f1f536d60460793085b144aa59da814df6e3eb5708d44b9c16fe1b0168fda/merged/etc/supervisor.d/php.ini
/var/lib/docker/overlay2/440f1f536d60460793085b144aa59da814df6e3eb5708d44b9c16fe1b0168fda/merged/etc/php.ini

How do I best create / develop own plugins / themes?

I found out, that the files are located somewhere in "/var/lib/docker/volumes/XXX_codebase/_data/". Do I need to create a FTP service and edit files directly there?

How do I update the docker?

Let's say a new PHP version comes out, how do I best update my docker? Simply replace the php line in my docker-compose.yml and restart docker? Do any files get lost (e.g. modified php.ini)?

How do I backup docker wordpress?

How do I best backup my wordpress docker? Backup files and database?

How can I secure the access?

When I go to pma.XXX.com everybody from public can go into my phpmyadmin. How can I prevent this?

How can I create a staging version?

How do I create a staging version of this docker? Something where I can play around with code and if okay, push to the production docker?

Sorry for my newbie questions - hope you can help me!

403 error at localhost:8000 after installation

  • Docker for Windows version 1.12.0-stable (build: 5968)

After I docker-compose build, docker-compose create, and docker-compose start, Nginx is logging that directory index is forbidden. (note, I have to do this instead of docker-compose up due to a different issue currently affecting docker for windows)

When I connect to the wpdocker4wp_php shell I don't see any files in /var/www/html, only the directory 'docker-runtime', even though kitematic is showing that I the host directory is properly shared.

In addition, "docker-runtime" is not created in the host directory, which I thought should happen based on the install instructions.

Use unix line endings

Many files such as wp-config.php seem to have Windows line endings. This clutters the file when viewed with ^M displayed on every line when using vi/vim. Please consider switching to standard unix line endings only. Thank you.

403 forbidden at wp.docker.localhost:8000

Codebase

Built-in vanilla WordPress

Host OS

Fedora 28

Docker info output

Containers: 6
 Running: 5
 Paused: 0
 Stopped: 1
Images: 6
Server Version: 1.13.1
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: journald
Cgroup Driver: systemd
Plugins: 
 Volume: local
 Network: bridge host macvlan null overlay
 Authorization: rhel-push-plugin
Swarm: inactive
Runtimes: oci runc
Default Runtime: oci
Init Binary: /usr/libexec/docker/docker-init-current
containerd version: c301b045f9faddcf7693229601303639af6b0885 (expected: aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1)
runc version: c301b045f9faddcf7693229601303639af6b0885-dirty (expected: 9df8b306d01f59d3a8029be411de015b7304dd8f)
init version: N/A (expected: 949e6facb77383876aeff8a6944dde66b3089574)
Security Options:
 seccomp
  WARNING: You're not using the default seccomp profile
  Profile: /etc/docker/seccomp.json
 selinux
Kernel Version: 4.16.7-300.fc28.x86_64
Operating System: Fedora 28 (Workstation Edition)
OSType: linux
Architecture: x86_64
Number of Docker Hooks: 3
CPUs: 4
Total Memory: 7.664 GiB
Name: localhost.localdomain
ID: 77UA:53DX:SURV:H7EZ:M44C:GPB3:ODZR:QQRS:HFTB:WUJF:HSP4:X34C
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: true
Registries: docker.io (secure), registry.fedoraproject.org (secure), quay.io (secure), registry.access.redhat.com (secure), docker.io (secure)

Docker compose file

unmodified from your github

I follow the instructions in quick start Option 1: Run Vanilla WordPress from Image.

When it did not work I also edited my hosts file to add 127.0.0.1 wp.docker.localhost and tried 127.0.0.1 http://wp.docker.localhost:8000

I can't get past 403 forbidden at wp.docker.localhost:8000.

portainer.wp.docker.localhost works fine and shows all the containers running apart from the my_wordpress_project_php which says stopped. If i start it then nothing changes.

Multisite subsites giving ERR_TOO_MANY_REDIRECTS

Codebase

Mounted vanilla multisite codebase

Host OS

macOS Sierra

Docker info output

Containers: 5
 Running: 5
 Paused: 0
 Stopped: 0
Images: 21
Server Version: 17.09.0-ce-rc1
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 06b9cb35161009dcb7123345749fef02f7cea8e0
runc version: 3f2f8b84a77f73d38244dd690525642a72156c64
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.46-moby
Operating System: Alpine Linux v3.5
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.952GiB
Name: moby
ID: PJNX:RV35:2FY7:MOO4:STFK:UB27:2JWX:IVTR:JLHF:JAKN:UKT7:X3PA
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 66
 Goroutines: 72
 System Time: 2017-09-18T19:36:33.885137581Z
 EventsListeners: 2
No Proxy: *.local, 169.254/16
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

Docker compose file

version: "2"

services:
  mariadb:
    image: wodby/mariadb:10.1-2.3.3
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: <project-name>
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    volumes:
      - /path/to/project/init/db:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
      - /path/to/project/data/db:/var/lib/mysql # I want to manage volumes manually.

  php:
#    image: wodby/wordpress:4-7.1-2.2.0
    image: wodby/wordpress-php:7.1-2.2.0
    environment:
      SHORT_OPEN_TAG: "On"
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      PHP_XDEBUG: 1
      PHP_XDEBUG_DEFAULT_ENABLE: 1
      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0         # This is needed to respect remote.host setting bellow
      PHP_XDEBUG_REMOTE_HOST: "10.254.254.254"  # You will also need to 'sudo ifconfig lo0 alias 10.254.254.254'
    volumes:
#      - /Users/ninja/Sites/codegeek/viasat-dealer/www:/var/www/html
      - docker-sync-<project-name>:/var/www/html # Docker-sync

  nginx:
    image: wodby/wordpress-nginx:4-1.13-2.2.0
    environment:
      NGINX_STATIC_CONTENT_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_SERVER_ROOT: /var/www/html
    volumes:
#      - /path/to/project/www:/var/www/html
      - docker-sync-<project-name>:/var/www/html # Docker-sync
    depends_on:
      - php
    labels:
      - 'traefik.backend=<project-name>_nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:<project-name>.docker.localhost'

volumes:
  docker-sync-<project-name>:
    external: true

Logs output

nginx_1    | 2017/09/18 19:36:02 [notice] 24#24: *123 "/wp-admin$" does not match "/test/wp-admin/", client: 172.27.0.5, server: wordpress, request: "GET /test/wp-admin/ HTTP/1.1", host: "<project-name>.docker.localhost"
nginx_1    | 2017/09/18 19:36:02 [notice] 24#24: *123 "/wp-admin$" does not match "/index.php", client: 172.27.0.5, server: wordpress, request: "GET /test/wp-admin/ HTTP/1.1", host: "<project-name>.docker.localhost"
nginx_1    | 172.27.0.5 - - [18/Sep/2017:19:36:02 +0000] "GET /test/wp-admin/ HTTP/1.1" 302 5 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"
nginx_1    | 2017/09/18 19:36:02 [notice] 24#24: *123 "/wp-admin$" does not match "/test/wp-admin/", client: 172.27.0.5, server: wordpress, request: "GET /test/wp-admin/ HTTP/1.1", host: "<project-name>.docker.localhost"
nginx_1    | 2017/09/18 19:36:02 [notice] 24#24: *123 "/wp-admin$" does not match "/index.php", client: 172.27.0.5, server: wordpress, request: "GET /test/wp-admin/ HTTP/1.1", host: "<project-name>.docker.localhost"
nginx_1    | 172.27.0.5 - - [18/Sep/2017:19:36:03 +0000] "GET /test/wp-admin/ HTTP/1.1" 302 5 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"

Cannot mount mariadb volume

Hi,

I'm trying to create a bind mount to persist mariadb data on my host. Having this in my mariadb service definition in docker-compose.yml:

    volumes:
     - ./db-volume-data:/var/lib/mysql

I created the folder db-volume-data in the root directory. mariadb containers fails with the following error:

Initializing database
2019-09-14  9:54:56 0 [Warning] InnoDB: Failed to set O_DIRECT on file./ibdata1; OPEN: Invalid argument, continuing anyway. O_DIRECT is known to result in 'Invalid argument' on Linux on tmpfs, see MySQL Bug#26662.
2019-09-14  9:54:56 0 [ERROR] InnoDB: The Auto-extending innodb_system data file './ibdata1' is of a different size 0 pages than specified in the .cnf file: initial 640 pages, max 655360 (relevant if non-zero) pages!
2019-09-14  9:54:56 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2019-09-14  9:54:57 0 [ERROR] Plugin 'InnoDB' init function returned error.
2019-09-14  9:54:57 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2019-09-14  9:54:57 0 [ERROR] Unknown/unsupported storage engine: InnoDB
2019-09-14  9:54:57 0 [ERROR] Aborting
Installation of system tables failed!  Examine the logs in
/var/lib/mysql/ for more information.
The problem could be conflicting information in an external
my.cnf files. You can ignore these by doing:
    shell> /usr/bin/mysql_install_db --defaults-file=~/.my.cnf
You can also try to start the mysqld daemon with:
    shell> /usr/bin/mysqld --skip-grant-tables --general-log &
and use the command line tool /usr/bin/mysql
to connect to the mysql database and look at the grant tables:
    shell> /usr/bin/mysql -u root mysql
    mysql> show tables;
Try 'mysqld --help' if you have problems with paths.  Using
--general-log gives you a log in /var/lib/mysql/ that may be helpful.
The latest information about mysql_install_db is available at
https://mariadb.com/kb/en/installing-system-tables-mysql_install_db
You can find the latest source at https://downloads.mariadb.org and
the maria-discuss email list at https://launchpad.net/~maria-discuss
Please check all of the above before submitting a bug report
at http://mariadb.org/jira

Happens for both vanilla installs and mounted wordpress. I'm on Linux Mint 18.3, which is based on Ubuntu 16.04. Even tried to slap a 777 on the db-volume-data folder, did not help.

Any insights here would be greatly appreciated, as this problem renders your (very promising-looking!) product useless. I don't want to lose my data every time I docker-compose down

Thanks a lot in advance!

Run different instances

How can you create multiple instances of this image?

I've tried changing the ports but it gives me a 503.

nginx: "/wp-admin$" does not match x

Codebase

Mounted codebase

Host OS

Ubuntu 18.04

Docker info output

Containers: 9
 Running: 0
 Paused: 0
 Stopped: 9
Images: 9
Server Version: 18.06.1-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-109-generic
Operating System: Ubuntu 16.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 2.937GiB
Name: n0xious
ID: FZR4:GYMI:R7DP:F2RS:TY6V:S47S:MHY2:ADII:XBJA:EZOD:ZRCP:F2PX
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: No swap limit support

Docker compose file

version: "3"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD

  php:
    image: wodby/wordpress-php:$PHP_TAG
    command: "php-fpm -R"
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
    volumes:
      - ./wp-data:/var/www/html

  nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
    volumes:
      - ./wp-data:/var/www/html
    labels:
      - 'traefik.backend=nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'
  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

  varnish:
    image: wodby/varnish:$VARNISH_TAG
    container_name: "${PROJECT_NAME}_varnish"
    depends_on:
      - nginx
    environment:
      VARNISH_SECRET: secret
      VARNISH_BACKEND_HOST: nginx
      VARNISH_BACKEND_PORT: 80
      VARNISH_PURGE_KEY: key
      VARNISH_CONFIG_PRESET: wordpress
      VARNISH_PURGE_EXTERNAL_REQUEST_HEADER: X-Real-IP
    labels:
      - 'traefik.backend=varnish'
      - 'traefik.port=6081'
      - 'traefik.frontend.rule=Host:varnish.${PROJECT_BASE_URL}'

  redis:
    container_name: "${PROJECT_NAME}_redis"
    image: wodby/redis:$REDIS_TAG

  pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=pma'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: --api --docker --acme.email="[email protected]"
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./traefik.toml:/traefik.toml
      - ./acme.json:/acme.json

Logs output

The nginx container logs are filled with errors like /wp-admin$ does not match x. Is this normal behaviour? How do I go about "fixing" this?

my_wordpress_project_nginx | 2018/10/21 11:16:52 [notice] 46#46: *3 "/wp-admin$" does not match "/", client: 172.20.0.6, server: default, request: "GET /?p=9 HTTP/1.1", host: "example.com", referrer: "https://example.com/"
my_wordpress_project_nginx | 2018/10/21 11:16:52 [notice] 46#46: *3 "/wp-admin$" does not match "/index.php", client: 172.20.0.6, server: default, request: "GET /?p=9 HTTP/1.1", host: "example.com", referrer: "https://example.com/"
my_wordpress_project_php | 172.20.0.9 -  21/Oct/2018:11:16:52 +0000 "GET /index.php" 200
my_wordpress_project_nginx | 172.20.0.6 - - [21/Oct/2018:11:16:52 +0000] "GET /?p=9 HTTP/1.1" 200 6485 "https://example.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"

Allow access to Mariadb from host applications (binding?)

What I'm trying to accomplish: I'm trying to access the Mariadb database from Windows apps such as PhpStorm or SQLyog with 10.0.75.1 as the host address and 3306 as the port.

Problem: I haven't been able to connect from them despite triple-checking credentials. I can check that the database is up and running from PHPMyAdmin or WordPress. Thus I suspect it's a binding problem, so I wanted to add bind-address=0.0.0.0 to the cnf file. Since I'd rather not mess with images/Dockerfile, I added the following to the volumes section of my db container in the docker-compose file:

  • ./client/mariadb-init/conf:/etc/mysql/conf.d

In /client/mariadb-init/conf (i.e. the directory on my Windows host) I have a config-file.cnf file with the bind settings referenced above. I restarted the container with the expectation that I'd have overridden the bind setting with my file, on top of whatever else is in the default my.cnf.

The container log shows "[Note] Server socket created on IP: '0.0.0.0'." which looked encouraging but MariaDB remains unreachable from the host.

References:

Once that's resolved I guess I may also need to grant privileges to the wordpress MySQL user but I can always do that through PhpMyAdmin.

Mariadb vs MySQL

My current live site is running on mysql 5.5 and it appears this set of containers uses mariadb 10.1.

To your knowledge should I have any issue importing into mariadb from mysql production exports and then re-exporting from mariadb to import back into mysql in production?

If this is unknown is there any way to swap out a mysql container for your mariadb to ensure parity of imports/exports from my live environment to dev?

By the way, I just want to say I really appreciate the work that's been put into this. It makes setting up a wordpress stack on windows so much cleaner.

Pending request in any browser except Chrome

So I have a weird problem accessing docker4wordpress setup with any browser (or curl) except Google Chrome. I'm not sure if it's reproducible outside of my machine, but here it is.

Steps to reproduce:

git clone https://github.com/wodby/docker4wordpress.git
cd docker4wordpress
docker-compose up

After all containers are provisioned and ready, I can go ahead and start WordPress installation with Google Chrome with no problem whatsoever, but if I try to access the same url (wp.docker.locahost:8000) with Firefox, Safari curl I have connection timeout.

Now if I change NGINX container host label for Traefik to:

'traefik.frontend.rule=Host:localhost'

then I can access the URL (http://localhost:8000) from everywhere.

It seems that the problem is that Traefik does not proxy request properly (actually I have no idea).

Does anyone have this problem? Any way to solve it?

Thanks

PHP, NginX and MariaDB exit with "effective uid is not 0"

Codebase

mounted codebase

Host OS

Ubuntu

Docker info output

Containers: 54
 Running: 9
 Paused: 0
 Stopped: 45
Images: 23
Server Version: 18.02.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9b55aab90508bd389d7654c4baf173a981477d55
runc version: 9f9c96235cc97674e935002fc3d78361b696a69e
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.13.0-36-generic
Operating System: Ubuntu 17.10
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 15.59GiB
Name: arya
ID: 5T32:3DZU:JZFC:6V5N:HFNX:7DLC:CBQG:VMCF:WGSW:PSRH:ADHS:TIVL
Docker Root Dir: /mnt/7ff60ee9-0ff1-4d74-8dcc-e3c5f53a4810/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: No swap limit support

Docker compose file

version: "2"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
#    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
    volumes:
      - ./docker-database/mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
      - ./docker-database/mariadb:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
      PHP_XDEBUG: 1
      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_BLACKFIRE: 1
    volumes:
      - ./public_html:/var/www/html

  nginx:
    image: wodby/wordpress-nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
      NGINX_STATIC_CONTENT_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
    volumes_from: 
      - php
    labels:
      - 'traefik.backend=savoirville_nginx_1'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=savoirville_mailhog_1'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

  pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=savoirville_pma_1'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=savoirville_portainer_1'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

Logs output

sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privileges?

Add Documentation for Enabling WP-CLI via make commands

In the docker4drupal documentation, there is support for the Drush cli via the Makefile. It would be beneficial to have similar documentation on the WordPress side to support those of us that manage existing codebases and projects that are deployed on Pantheon and similar that don't use the wp-cli variant of a wp image.

Ownership

wordpress-php creates uid and gid 82 (www-data), but wordpress-nginx doesn't create uid 82, only the gid. This causes the famous 'asking for ftp credentials' when adding or deleting plugins/themes.

localhost:8000 -> Nginx 403 Forbidden

I have an 403 when I try to it Wordpress.

I did not change something in the compose file except activated redis and memcached.

PMA and MailHog work fine.

Permalink Post Name gives a 404 error

Description: Permalink Plain work, Permalink Post Name gives a 404 error as seen on the log when viewing an archive or post page.

screen shot 2018-12-18 at 3 28 50 pm

Codebase

mounted codebase

Host OS

macOS Mojave

Docker info output

Containers: 9
 Running: 7
 Paused: 0
 Stopped: 2
Images: 25
Server Version: 18.09.0
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.952GiB
Name: linuxkit-025000000001
ID: 6EGB:5FO7:5ZYO:QWNR:3WKZ:XFGV:ZJOZ:JBTQ:FTOW:X374:GBSZ:HC4S
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 83
 Goroutines: 99
 System Time: 2018-12-19T05:06:42.8564953Z
 EventsListeners: 3
HTTP Proxy: gateway.docker.internal:3128
HTTPS Proxy: gateway.docker.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

Docker compose file


services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
#    volumes:
#      - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
#      - /path/to/mariadb/data/on/host:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
#      PHP_XDEBUG: 1
#      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
#      PHP_IDE_CONFIG: serverName=my-ide
#      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
#      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
#      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
    volumes:
      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
#      - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
## For XHProf and Xdebug profiler traces
#      - files:/mnt/files

  nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
#      NGINX_PAGESPEED: "on"
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
    volumes:
      - ./:/var/www/html
# Options for macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
#      - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

#  postgres:
#    image: wodby/postgres:$POSTGRES_TAG
#    container_name: "${PROJECT_NAME}_postgres"
#    stop_grace_period: 30s
#    environment:
#      POSTGRES_PASSWORD: $DB_PASSWORD
#      POSTGRES_DB: $DB_NAME
#      POSTGRES_USER: $DB_USER
#    volumes:
#      - ./postgres-init:/docker-entrypoint-initdb.d # Place init file(s) here.
#      - /path/to/postgres/data/on/host:/var/lib/postgresql/data # I want to manage volumes manually.

#  apache:
#    image: wodby/apache:$APACHE_TAG
#    container_name: "${PROJECT_NAME}_apache"
#    depends_on:
#      - php
#    environment:
#      APACHE_LOG_LEVEL: debug
#      APACHE_BACKEND_HOST: php
#      APACHE_VHOST_PRESET: php
#    volumes:
#      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
##      - ./:/var/www/html:cached # User-guided caching
##      - docker-sync:/var/www/html # Docker-sync
#    labels:
#      - 'traefik.backend=apache'
#      - 'traefik.port=80'
#      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

#  varnish:
#    image: wodby/varnish:$VARNISH_TAG
#    container_name: "${PROJECT_NAME}_varnish"
#    depends_on:
#      - nginx
#    environment:
#      VARNISH_SECRET: secret
#      VARNISH_BACKEND_HOST: nginx
#      VARNISH_BACKEND_PORT: 80
#      VARNISH_PURGE_KEY: key
#      VARNISH_CONFIG_PRESET: wordpress
#      VARNISH_PURGE_EXTERNAL_REQUEST_HEADER: X-Real-IP
#    labels:
#      - 'traefik.backend=varnish'
#      - 'traefik.port=6081'
#      - 'traefik.frontend.rule=Host:varnish.${PROJECT_BASE_URL}'

#  redis:
#    container_name: "${PROJECT_NAME}_redis"
#    image: wodby/redis:$REDIS_TAG

  adminer:
    container_name: "${PROJECT_NAME}_adminer"
    image: wodby/adminer:$ADMINER_TAG
    environment:
# For PostgreSQL:
#      ADMINER_DEFAULT_DB_DRIVER: pgsql
      ADMINER_DEFAULT_DB_HOST: $DB_HOST
      ADMINER_DEFAULT_DB_NAME: $DB_NAME
    labels:
      - 'traefik.backend=adminer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:adminer.${PROJECT_BASE_URL}'

#  webgrind:
#    image: wodby/webgrind:$WEBGRIND_TAG
#    container_name: "${PROJECT_NAME}_webgrind"
#    environment:
#      WEBGRIND_PROFILER_DIR: /mnt/files/xdebug/profiler
#    labels:
#      - 'traefik.backend=webgrind'
#      - 'traefik.port=8080'
#      - 'traefik.frontend.rule=Host:webgrind.${PROJECT_BASE_URL}'
#    volumes:
#      - files:/mnt/files

#  pma:
#    image: phpmyadmin/phpmyadmin
#    container_name: "${PROJECT_NAME}_pma"
#    environment:
#      PMA_HOST: $DB_HOST
#      PMA_USER: $DB_USER
#      PMA_PASSWORD: $DB_PASSWORD
#      PHP_UPLOAD_MAX_FILESIZE: 1G
#      PHP_MAX_INPUT_VARS: 1G
#    labels:
#      - 'traefik.backend=pma'
#      - 'traefik.port=80'
#      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

#  athenapdf:
#    image: arachnysdocker/athenapdf-service:$ATHENAPDF_TAG
#    container_name: "${PROJECT_NAME}_athenapdf"
#    environment:
#      WEAVER_AUTH_KEY: weaver-auth-key
#      WEAVER_ATHENA_CMD: "athenapdf -S"
#      WEAVER_MAX_WORKERS: 10
#      WEAVER_MAX_CONVERSION_QUEUE: 50
#      WEAVER_WORKER_TIMEOUT: 90
#      WEAVER_CONVERSION_FALLBACK: "false"

#  blackfire:
#    image: blackfire/blackfire
#    container_name: "${PROJECT_NAME}_blackfire"
#    environment:
#      BLACKFIRE_SERVER_ID: XXXXX
#      BLACKFIRE_SERVER_TOKEN: YYYYY

#  solr:
#    image: wodby/solr:$SOLR_TAG
#    container_name: "${PROJECT_NAME}_solr"
#    environment:
#      SOLR_HEAP: 1024m
#    labels:
#      - 'traefik.backend=solr'
#      - 'traefik.port=8983'
#      - 'traefik.frontend.rule=Host:solr.${PROJECT_BASE_URL}'

#  elasticsearch:
#    image: wodby/elasticsearch:$ELASTICSEARCH_TAG
#    environment:
#      ES_JAVA_OPTS: "-Xms500m -Xmx500m"
#    ulimits:
#      memlock:
#        soft: -1
#        hard: -1

#  kibana:
#    image: wodby/kibana:$KIBANA_TAG
#    depends_on:
#      - elasticsearch
#    labels:
#      - 'traefik.backend=kibana'
#      - 'traefik.port=5601'
#      - 'traefik.frontend.rule=Host:kibana.php.docker.localhost'

#  node:
#    image: wodby/node:$NODE_TAG
#    container_name: "${PROJECT_NAME}_node"
#    working_dir: /app
#    labels:
#      - 'traefik.backend=node'
#      - 'traefik.port=3000'
#      - 'traefik.frontend.rule=Host:front.${PROJECT_BASE_URL}'
#    expose:
#      - "3000"
#    volumes:
#      - ./path/to/your/single-page-app:/app
#    command: sh -c 'npm install && npm run start'

#  memcached:
#    container_name: "${PROJECT_NAME}_memcached"
#    image: wodby/memcached:$MEMCACHED_TAG

#  opensmtpd:
#    container_name: "${PROJECT_NAME}_opensmtpd"
#    image: wodby/opensmtpd:$OPENSMTPD_TAG

#  rsyslog:
#    container_name: "${PROJECT_NAME}_rsyslog"
#    image: wodby/rsyslog:$RSYSLOG_TAG

#  xhprof:
#    image: wodby/xhprof:$XHPROF_TAG
#    restart: always
#    volumes:
#      - files:/mnt/files
#    labels:
#      - 'traefik.backend=xhprof'
#      - 'traefik.port=8080'
#      - 'traefik.frontend.rule=Host:xhprof.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '8000:80'
#      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

#volumes:
## Docker-sync for macOS users
#  docker-sync:
#    external: true
## For Xdebug profiler
#  files:

Logs output


12018/12/19 05:29:08 [error] 44#44: *752 open() "/var/www/html/wp-content/plugins/official-facebook-pixel/core/css/admin.css" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /web/wp-content/plugins/official-facebook-pixel/core/css/admin.css?ver=5.0.1 HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php",
2018/12/19 05:29:14 [notice] 44#44: *752 "/wp-admin$" does not match "/web/wp-admin/options-permalink.php", client: 172.25.0.2, server: default, request: "POST /web/wp-admin/options-permalink.php HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php",
172.25.0.2 - - [19/Dec/2018:05:29:15 +0000] "POST /web/wp-admin/options-permalink.php HTTP/1.1" 302 5 "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15",
2018/12/19 05:29:15 [notice] 44#44: *752 "/wp-admin$" does not match "/web/wp-admin/options-permalink.php", client: 172.25.0.2, server: default, request: "GET /web/wp-admin/options-permalink.php?settings-updated=true HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php",
172.25.0.2 - - [19/Dec/2018:05:29:15 +0000] "GET /web/wp-admin/options-permalink.php?settings-updated=true HTTP/1.1" 200 13319 "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15",
2018/12/19 05:29:15 [notice] 44#44: *752 "/wp-admin$" does not match "/web/wp-content/plugins/official-facebook-pixel/core/css/admin.css", client: 172.25.0.2, server: default, request: "GET /web/wp-content/plugins/official-facebook-pixel/core/css/admin.css?ver=5.0.1 HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php?settings-updated=true",
2018/12/19 05:29:15 [notice] 44#44: *752 "^/[_0-9a-zA-Z-]+(/wp-.*)" matches "/web/wp-content/plugins/official-facebook-pixel/core/css/admin.css", client: 172.25.0.2, server: default, request: "GET /web/wp-content/plugins/official-facebook-pixel/core/css/admin.css?ver=5.0.1 HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php?settings-updated=true",
2018/12/19 05:29:15 [notice] 44#44: *752 rewritten data: "/wp-content/plugins/official-facebook-pixel/core/css/admin.css", args: "ver=5.0.1", client: 172.25.0.2, server: default, request: "GET /web/wp-content/plugins/official-facebook-pixel/core/css/admin.css?ver=5.0.1 HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php?settings-updated=true",
2018/12/19 05:29:15 [error] 44#44: *752 open() "/var/www/html/wp-content/plugins/official-facebook-pixel/core/css/admin.css" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /web/wp-content/plugins/official-facebook-pixel/core/css/admin.css?ver=5.0.1 HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php?settings-updated=true",
2018/12/19 05:29:57 [notice] 44#44: *752 "/wp-admin$" does not match "/", client: 172.25.0.2, server: default, request: "GET / HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:29:57 [error] 44#44: *752 directory index of "/var/www/html/" is forbidden, client: 172.25.0.2, server: default, request: "GET / HTTP/1.1", host: "wp.brs10.localhost:8000",
172.25.0.2 - - [19/Dec/2018:05:29:57 +0000] "GET / HTTP/1.1" 403 118 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:29:57 [notice] 44#44: *752 "/wp-admin$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:29:57 [notice] 44#44: *752 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:29:57 [notice] 44#44: *752 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:29:57 [notice] 44#44: *752 "/wp-admin$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:29:57 [info] 44#44: *752 client 172.25.0.2 closed keepalive connection,
172.25.0.2 - - [19/Dec/2018:05:29:57 +0000] "GET /favicon.ico HTTP/1.1" 200 43 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:30:02 [notice] 44#44: *758 "/wp-admin$" does not match "/web/", client: 172.25.0.2, server: default, request: "GET /web/ HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:30:02 [notice] 44#44: *758 "/wp-admin$" does not match "/web/index.php", client: 172.25.0.2, server: default, request: "GET /web/ HTTP/1.1", host: "wp.brs10.localhost:8000",
172.25.0.2 - - [19/Dec/2018:05:30:05 +0000] "GET /web/ HTTP/1.1" 200 7623 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:30:05 [notice] 44#44: *758 "/wp-admin$" does not match "/web/wp-content/uploads/beans/compiler/uikit/79989da-0242a51.css", client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/beans/compiler/uikit/79989da-0242a51.css?ver=5.0.1 HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 44#44: *758 "/wp-admin$" does not match "/web/wp-content/uploads/2018/09/rejuve2.png", client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/rejuve2.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [error] 46#46: *763 open() "/var/www/html/wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step1-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 45#45: *760 "/wp-admin$" does not match "/web/wp-content/uploads/2018/09/lynn.png", client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/lynn.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [error] 46#46: *764 open() "/var/www/html/wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step2-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 47#47: *761 "/wp-admin$" does not match "/web/wp-content/uploads/2018/09/roottie.png", client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/roottie.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [error] 46#46: *763 open() "/var/www/html/wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step4-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [error] 46#46: *764 open() "/var/www/html/wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step3-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png", client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [error] 46#46: *763 open() "/var/www/html/wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png" failed (2: No such file or directory), client: 172.25.0.2, server: default, request: "GET /wp-content/themes/brs_understrap_child/imgs/how/step5-placeholder.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [info] 44#44: *758 sendfile() failed (32: Broken pipe) while sending response to client, client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/rejuve2.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [info] 45#45: *760 sendfile() failed (32: Broken pipe) while sending response to client, client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/lynn.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [info] 47#47: *761 sendfile() failed (32: Broken pipe) while sending response to client, client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/roottie.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *763 "/wp-admin$" does not match "/web/brs/imgs/contact.png", client: 172.25.0.2, server: default, request: "GET /web/brs/imgs/contact.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [info] 46#46: *763 client 172.25.0.2 closed keepalive connection,
2018/12/19 05:30:05 [notice] 47#47: *762 "/wp-admin$" does not match "/web/wp-content/uploads/2018/09/evolved.png", client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/evolved.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [info] 47#47: *762 sendfile() failed (32: Broken pipe) while sending response to client, client: 172.25.0.2, server: default, request: "GET /web/wp-content/uploads/2018/09/evolved.png HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [notice] 46#46: *764 "/wp-admin$" does not match "/web/wp-content/plugins/super-progressive-web-apps/public/js/register-sw.js", client: 172.25.0.2, server: default, request: "GET /web/wp-content/plugins/super-progressive-web-apps/public/js/register-sw.js HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:05 [info] 46#46: *764 client 172.25.0.2 closed keepalive connection,
2018/12/19 05:30:07 [notice] 44#44: *765 "/wp-admin$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "/wp-admin$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "/wp-admin$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:07 [notice] 44#44: *765 "/wp-admin$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
172.25.0.2 - - [19/Dec/2018:05:30:07 +0000] "GET /web/category/all/ HTTP/1.1" 404 118 "http://wp.brs10.localhost:8000/web/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:30:11 [notice] 44#44: *765 "/wp-admin$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "/wp-admin$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "/wp-admin$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
172.25.0.2 - - [19/Dec/2018:05:30:11 +0000] "GET /web/category/all/ HTTP/1.1" 404 118 "http://wp.brs10.localhost:8000/web/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:30:11 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "/wp-admin$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:30:11 [notice] 44#44: *765 "/wp-admin$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:30:11 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:30:11 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:30:11 [notice] 44#44: *765 "/wp-admin$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
172.25.0.2 - - [19/Dec/2018:05:30:11 +0000] "GET /favicon.ico HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:30:16 [notice] 44#44: *765 "/wp-admin$" does not match "/web/wp-admin/admin-ajax.php", client: 172.25.0.2, server: default, request: "POST /web/wp-admin/admin-ajax.php HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php",
172.25.0.2 - - [19/Dec/2018:05:30:17 +0000] "POST /web/wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15",
2018/12/19 05:31:01 [notice] 44#44: *765 "/wp-admin$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "/wp-admin$" does not match "/web/category/all/", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "/wp-admin$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
172.25.0.2 - - [19/Dec/2018:05:31:01 +0000] "GET /web/category/all/ HTTP/1.1" 404 118 "http://wp.brs10.localhost:8000/web/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:31:01 [notice] 44#44: *765 "/wp-admin$" does not match "/index.php", client: 172.25.0.2, server: default, request: "GET /web/category/all/ HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/",
2018/12/19 05:31:01 [notice] 44#44: *765 "/wp-admin$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:31:01 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/wp-.*)" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:31:01 [notice] 44#44: *765 "^/[_0-9a-zA-Z-]+(/.*\.php)$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
2018/12/19 05:31:01 [notice] 44#44: *765 "/wp-admin$" does not match "/favicon.ico", client: 172.25.0.2, server: default, request: "GET /favicon.ico HTTP/1.1", host: "wp.brs10.localhost:8000",
172.25.0.2 - - [19/Dec/2018:05:31:01 +0000] "GET /favicon.ico HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:64.0) Gecko/20100101 Firefox/64.0",
2018/12/19 05:32:20 [notice] 44#44: *767 "/wp-admin$" does not match "/web/wp-admin/admin-ajax.php", client: 172.25.0.2, server: default, request: "POST /web/wp-admin/admin-ajax.php HTTP/1.1", host: "wp.brs10.localhost:8000", referrer: "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php",
172.25.0.2 - - [19/Dec/2018:05:32:22 +0000] "POST /web/wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://wp.brs10.localhost:8000/web/wp-admin/options-permalink.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15",

Redis won't connect with WP plugin

When I added define('WP_REDIS_HOST', 'redis'); to my wp-config.php file, the Redis Object Cache settings page would stay "Status: Not Connected" after clicking the "Enable Object Cache" button.

Once I changed wp-config to define('WP_REDIS_HOST', '127.0.0.1'), the Redis Object Cache plugin setting page did show Status: Connected. I disconnected just to test again with "redis", wouldn't work, I put 127.0.0.1 again which now doesn't work anymore!

Kitematic shows the Redis container log with "the server is now ready to accept connections on port 6379." If I run "docker exec -it mywordpress_redis_1 redis-cli" from the command line, I do get a prompt showing "127.0.0.1:6379"

In the WP plugin the Servers table shows 1 entry:
Alias Protocol Host Port Database Password
Master TCP 127.0.0.1 6379 0 No

I then set a password under environment: in the docker-compose redis: service, followed by docker-compose up -d. I then added that same password to wp-config, now the plugin settings show:
Alias Protocol Host Port Database Password
Master TCP 127.0.0.1 6379 0 Yes

But I still can't connect. I also set WP_REDIS_PORT and WP_REDIS_DATABASE for good measure, no dice.

This is with Redis 3.2.3 and, Redis Object Cache 1.3.4 under WP 4.6.1, with a slightly modified version of your package (I run WP as a container from the wordpress-fpm image) under the latest Docker for Windows.

Edit apache httpd.conf

Codebase

Built-in vanilla WordPress

Host OS

Ubuntu 16.04

I'm trying docker4wordpress with apache.
How can I edit httpd.conf?

For example I need to add modules or modify settigs not included in the provided Environment Variables.
When I try to edit it with a bash inside apache container I was prompted to insert wodby password, but I don't find it anywere.

Thanks

MacOS permissions issue (-dev-macos is not working)

Hello guys,

I've moved my project to a new MacOS machine and now it seems that I have a permissions issue.
I will be very appreciated for any help.

Thank you.

Issue Description

The whole wp-content/upload folder is not writable. This issue persists even with additional steps from your local development docs (I'm using -dev-macos PHP tag).

Please note also, that I'm using: docker4wordpress + wordpress-composer (WP 5.0.1) + docker-sync.

Debug Details

Codebase

mounted codebase

Host OS

macOS Mojave 10.14.2

PHP .env variables

### --- PHP ----

#PHP_TAG=7.2-dev-4.9.3
#PHP_TAG=7.1-dev-4.9.3
#PHP_TAG=5.6-dev-4.9.3
PHP_TAG=7.2-dev-macos-4.9.3
#PHP_TAG=7.1-dev-macos-4.9.3
#PHP_TAG=5.6-dev-macos-4.9.3

docker-sync.yml output

version: "2"

syncs:
  docker-sync:
    src: './'
    sync_userid: '501'
    sync_excludes: ['.gitignore', '.git/', '.idea/']
#  docker-sync-another-project:
#    src: '/absolute/path/to/project/codebase'
#    sync_userid: '1000'
#    sync_excludes: ['.gitignore', '.git/', '.idea/']

Docker info output

Containers: 8
 Running: 8
 Paused: 0
 Stopped: 0
Images: 8
Server Version: 18.09.0
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.952GiB
Name: linuxkit-025000000001
ID: FRU6:JGTF:SGQ5:ISFG:6MBT:WFWB:MBDZ:YI3J:GT6V:GNJ3:I6ML:SVPN
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 93
 Goroutines: 111
 System Time: 2018-12-14T16:49:33.661341175Z
 EventsListeners: 3
HTTP Proxy: gateway.docker.internal:3128
HTTPS Proxy: gateway.docker.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine 

Docker compose file

version: "3"

services:
   mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
    volumes:
#      - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
      - ./db-data:/var/lib/mysql # I want to manage volumes manually.

   php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
#      PHP_XDEBUG: 1
#      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
#      PHP_IDE_CONFIG: serverName=my-ide
#      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
#      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
#      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
    volumes:
#      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
     # - ./:/var/www/html:cached # User-guided caching
      - docker-sync:/var/www/html # Docker-sync
## For XHProf and Xdebug profiler traces
#      - files:/mnt/files

   nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
#      NGINX_PAGESPEED: "on"
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
      NGINX_SERVER_ROOT: /var/www/html/web
    volumes:
#      - ./:/var/www/html
# Options for macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
     # - ./:/var/www/html:cached # User-guided caching
      - docker-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

   mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

#  postgres:
#    image: wodby/postgres:$POSTGRES_TAG
#    container_name: "${PROJECT_NAME}_postgres"
#    stop_grace_period: 30s
#    environment:
#      POSTGRES_PASSWORD: $DB_PASSWORD
#      POSTGRES_DB: $DB_NAME
#      POSTGRES_USER: $DB_USER
#    volumes:
#      - ./postgres-init:/docker-entrypoint-initdb.d # Place init file(s) here.
#      - /path/to/postgres/data/on/host:/var/lib/postgresql/data # I want to manage volumes manually.

#  apache:
#    image: wodby/apache:$APACHE_TAG
#    container_name: "${PROJECT_NAME}_apache"
#    depends_on:
#      - php
#    environment:
#      APACHE_LOG_LEVEL: debug
#      APACHE_BACKEND_HOST: php
#      APACHE_VHOST_PRESET: php
#    volumes:
#      - ./:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
##      - ./:/var/www/html:cached # User-guided caching
##      - docker-sync:/var/www/html # Docker-sync
#    labels:
#      - 'traefik.backend=apache'
#      - 'traefik.port=80'
#      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

#  varnish:
#    image: wodby/varnish:$VARNISH_TAG
#    container_name: "${PROJECT_NAME}_varnish"
#    depends_on:
#      - nginx
#    environment:
#      VARNISH_SECRET: secret
#      VARNISH_BACKEND_HOST: nginx
#      VARNISH_BACKEND_PORT: 80
#      VARNISH_PURGE_KEY: key
#      VARNISH_CONFIG_PRESET: wordpress
#      VARNISH_PURGE_EXTERNAL_REQUEST_HEADER: X-Real-IP
#    labels:
#      - 'traefik.backend=varnish'
#      - 'traefik.port=6081'
#      - 'traefik.frontend.rule=Host:varnish.${PROJECT_BASE_URL}'

#  redis:
#    container_name: "${PROJECT_NAME}_redis"
#    image: wodby/redis:$REDIS_TAG

#  adminer:
#    container_name: "${PROJECT_NAME}_adminer"
#    image: wodby/adminer:$ADMINER_TAG
#    environment:
## For PostgreSQL:
##      ADMINER_DEFAULT_DB_DRIVER: pgsql
#      ADMINER_DEFAULT_DB_HOST: $DB_HOST
#      ADMINER_DEFAULT_DB_NAME: $DB_NAME
#    labels:
#      - 'traefik.backend=adminer'
#      - 'traefik.port=9000'
#      - 'traefik.frontend.rule=Host:adminer.${PROJECT_BASE_URL}'

#  webgrind:
#    image: wodby/webgrind:$WEBGRIND_TAG
#    container_name: "${PROJECT_NAME}_webgrind"
#    environment:
#      WEBGRIND_PROFILER_DIR: /mnt/files/xdebug/profiler
#    labels:
#      - 'traefik.backend=webgrind'
#      - 'traefik.port=8080'
#      - 'traefik.frontend.rule=Host:webgrind.${PROJECT_BASE_URL}'
#    volumes:
#      - files:/mnt/files

   pma:
    image: phpmyadmin/phpmyadmin
    container_name: "${PROJECT_NAME}_pma"
    environment:
      PMA_HOST: $DB_HOST
      PMA_USER: $DB_USER
      PMA_PASSWORD: $DB_PASSWORD
      PHP_UPLOAD_MAX_FILESIZE: 1G
      PHP_MAX_INPUT_VARS: 1G
    labels:
      - 'traefik.backend=pma'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:pma.${PROJECT_BASE_URL}'

#  athenapdf:
#    image: arachnysdocker/athenapdf-service:$ATHENAPDF_TAG
#    container_name: "${PROJECT_NAME}_athenapdf"
#    environment:
#      WEAVER_AUTH_KEY: weaver-auth-key
#      WEAVER_ATHENA_CMD: "athenapdf -S"
#      WEAVER_MAX_WORKERS: 10
#      WEAVER_MAX_CONVERSION_QUEUE: 50
#      WEAVER_WORKER_TIMEOUT: 90
#      WEAVER_CONVERSION_FALLBACK: "false"

#  blackfire:
#    image: blackfire/blackfire
#    container_name: "${PROJECT_NAME}_blackfire"
#    environment:
#      BLACKFIRE_SERVER_ID: XXXXX
#      BLACKFIRE_SERVER_TOKEN: YYYYY

#  solr:
#    image: wodby/solr:$SOLR_TAG
#    container_name: "${PROJECT_NAME}_solr"
#    environment:
#      SOLR_HEAP: 1024m
#    labels:
#      - 'traefik.backend=solr'
#      - 'traefik.port=8983'
#      - 'traefik.frontend.rule=Host:solr.${PROJECT_BASE_URL}'

#  elasticsearch:
#    image: wodby/elasticsearch:$ELASTICSEARCH_TAG
#    environment:
#      ES_JAVA_OPTS: "-Xms500m -Xmx500m"
#    ulimits:
#      memlock:
#        soft: -1
#        hard: -1

#  kibana:
#    image: wodby/kibana:$KIBANA_TAG
#    depends_on:
#      - elasticsearch
#    labels:
#      - 'traefik.backend=kibana'
#      - 'traefik.port=5601'
#      - 'traefik.frontend.rule=Host:kibana.php.docker.localhost'

#  node:
#    image: wodby/node:$NODE_TAG
#    container_name: "${PROJECT_NAME}_node"
#    working_dir: /app
#    labels:
#      - 'traefik.backend=node'
#      - 'traefik.port=3000'
#      - 'traefik.frontend.rule=Host:front.${PROJECT_BASE_URL}'
#    expose:
#      - "3000"
#    volumes:
#      - ./path/to/your/single-page-app:/app
#    command: sh -c 'npm install && npm run start'

#  memcached:
#    container_name: "${PROJECT_NAME}_memcached"
#    image: wodby/memcached:$MEMCACHED_TAG

#  opensmtpd:
#    container_name: "${PROJECT_NAME}_opensmtpd"
#    image: wodby/opensmtpd:$OPENSMTPD_TAG

#  rsyslog:
#    container_name: "${PROJECT_NAME}_rsyslog"
#    image: wodby/rsyslog:$RSYSLOG_TAG

#  xhprof:
#    image: wodby/xhprof:$XHPROF_TAG
#    restart: always
#    volumes:
#      - files:/mnt/files
#    labels:
#      - 'traefik.backend=xhprof'
#      - 'traefik.port=8080'
#      - 'traefik.frontend.rule=Host:xhprof.${PROJECT_BASE_URL}'

   portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

   traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '8000:80'
#      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

volumes:
## Docker-sync for macOS users
  docker-sync:
    external: true
## For Xdebug profiler
#  files:

Logs output - php

topdiff_php  | [14-Dec-2018 16:42:29] NOTICE: fpm is running, pid 1
topdiff_php  | [14-Dec-2018 16:42:29] NOTICE: ready to handle connections
topdiff_php  | [14-Dec-2018 16:44:25] WARNING: [pool www] child 92 said into stderr: "NOTICE: PHP message: PHP Warning:  file_put_contents(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: Permission denied in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/filesystem/Filesystem.php on line 122"
topdiff_php  | [14-Dec-2018 16:44:25] WARNING: [pool www] child 92 said into stderr: "NOTICE: PHP message: PHP Warning:  include(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: No such file or directory in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43"
topdiff_php  | [14-Dec-2018 16:44:25] WARNING: [pool www] child 92 said into stderr: "NOTICE: PHP message: PHP Warning:  include(): Failed opening '/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43"
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:44:25 +0000 "GET /index.php" 200
topdiff_php  | [14-Dec-2018 16:44:27] WARNING: [pool www] child 93 said into stderr: "NOTICE: PHP message: PHP Warning:  file_put_contents(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: Permission denied in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/filesystem/Filesystem.php on line 122"
topdiff_php  | [14-Dec-2018 16:44:27] WARNING: [pool www] child 93 said into stderr: "NOTICE: PHP message: PHP Warning:  include(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: No such file or directory in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43"
topdiff_php  | [14-Dec-2018 16:44:27] WARNING: [pool www] child 93 said into stderr: "NOTICE: PHP message: PHP Warning:  include(): Failed opening '/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43"
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:44:27 +0000 "GET /index.php" 200
topdiff_php  | [14-Dec-2018 16:44:28] WARNING: [pool www] child 92 said into stderr: "NOTICE: PHP message: PHP Warning:  file_put_contents(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: Permission denied in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/filesystem/Filesystem.php on line 122"
topdiff_php  | [14-Dec-2018 16:44:28] WARNING: [pool www] child 92 said into stderr: "NOTICE: PHP message: PHP Warning:  include(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: No such file or directory in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43"
topdiff_php  | [14-Dec-2018 16:44:28] WARNING: [pool www] child 92 said into stderr: "NOTICE: PHP message: PHP Warning:  include(): Failed opening '/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43"
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:44:28 +0000 "GET /index.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:44:30 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:44:35 +0000 "POST /wp-admin/async-upload.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:45:30 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:46:30 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:48:32 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:49:32 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:50:32 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:51:32 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:52:32 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:53:32 +0000 "POST /wp-admin/admin-ajax.php" 200
topdiff_php  | 172.18.0.8 -  14/Dec/2018:16:55:42 +0000 "POST /wp-admin/admin-ajax.php" 200

Logs output - nginx

topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: using the "epoll" event method
topdiff_nginx | 2018/12/14 16:42:29 [info] 1#1: [ngx_pagespeed 1.13.35.2-0] SharedMemCache: pagespeed_default_shm/metadata_cache, sectors = 128, entries/sector = 2226,  64-byte blocks/sector = 4452, total footprint: 52445184
topdiff_nginx | 2018/12/14 16:42:29 [info] 1#1: [ngx_pagespeed 1.13.35.2-0] Initializing shared memory for path: /var/cache/ngx_pagespeed/ flush .
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: nginx/1.15.6
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: built by gcc 6.4.0 (Alpine 6.4.0) 
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: OS: Linux 4.9.125-linuxkit
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: start worker processes
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: start worker process 45
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: start worker process 46
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: start worker process 47
topdiff_nginx | 2018/12/14 16:42:29 [notice] 1#1: start worker process 48
topdiff_nginx | 2018/12/14 16:42:29 [info] 45#45: [ngx_pagespeed 1.13.35.2-0] Reusing shared memory for path: /var/cache/ngx_pagespeed/ flush .
topdiff_nginx | 2018/12/14 16:42:29 [info] 47#47: [ngx_pagespeed 1.13.35.2-0] Reusing shared memory for path: /var/cache/ngx_pagespeed/ flush .
topdiff_nginx | 2018/12/14 16:42:29 [info] 46#46: [ngx_pagespeed 1.13.35.2-0] Reusing shared memory for path: /var/cache/ngx_pagespeed/ flush .
topdiff_nginx | 2018/12/14 16:42:29 [info] 48#48: [ngx_pagespeed 1.13.35.2-0] Reusing shared memory for path: /var/cache/ngx_pagespeed/ flush .
topdiff_nginx | 2018/12/14 16:44:25 [notice] 45#45: *1 "/wp-admin$" does not match "/", client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 2018/12/14 16:44:25 [notice] 45#45: *1 "/wp-admin$" does not match "/index.php", client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 2018/12/14 16:44:25 [error] 45#45: *1 FastCGI sent in stderr: "PHP message: PHP Warning:  file_put_contents(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: Permission denied in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/filesystem/Filesystem.php on line 122
topdiff_nginx | PHP message: PHP Warning:  include(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: No such file or directory in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43
topdiff_nginx | PHP message: PHP Warning:  include(): Failed opening '/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43" while reading response header from upstream, client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", upstream: "fastcgi://172.18.0.4:9000", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:44:25 +0000] "GET / HTTP/1.1" 200 347 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:44:27 [notice] 45#45: *1 "/wp-admin$" does not match "/", client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 2018/12/14 16:44:27 [notice] 45#45: *1 "/wp-admin$" does not match "/index.php", client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 2018/12/14 16:44:27 [error] 45#45: *1 FastCGI sent in stderr: "PHP message: PHP Warning:  file_put_contents(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: Permission denied in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/filesystem/Filesystem.php on line 122
topdiff_nginx | PHP message: PHP Warning:  include(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: No such file or directory in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43
topdiff_nginx | PHP message: PHP Warning:  include(): Failed opening '/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43" while reading response header from upstream, client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", upstream: "fastcgi://172.18.0.4:9000", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:44:27 +0000] "GET / HTTP/1.1" 200 347 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:44:28 [notice] 45#45: *1 "/wp-admin$" does not match "/", client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 2018/12/14 16:44:28 [notice] 45#45: *1 "/wp-admin$" does not match "/index.php", client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:44:28 +0000] "GET / HTTP/1.1" 200 347 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:44:28 [error] 45#45: *1 FastCGI sent in stderr: "PHP message: PHP Warning:  file_put_contents(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: Permission denied in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/filesystem/Filesystem.php on line 122
topdiff_nginx | PHP message: PHP Warning:  include(/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php): failed to open stream: No such file or directory in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43
topdiff_nginx | PHP message: PHP Warning:  include(): Failed opening '/var/www/html/web/wp-content/uploads/cache/1c90c6f62738a1c4e06e5e79254a3b93fadb4109.php' for inclusion (include_path='.:/usr/local/lib/php') in /var/www/html/web/wp-content/themes/topdifference/vendor/illuminate/view/Engines/PhpEngine.php on line 43" while reading response header from upstream, client: 172.18.0.3, server: default, request: "GET / HTTP/1.1", upstream: "fastcgi://172.18.0.4:9000", host: "topdiff.docker.localhost:8000"
topdiff_nginx | 2018/12/14 16:44:30 [notice] 45#45: *1 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:44:30 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:44:35 [notice] 45#45: *1 "/wp-admin$" does not match "/wp-admin/async-upload.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/async-upload.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 2018/12/14 16:44:35 [warn] 45#45: *1 a client request body is buffered to a temporary file /var/cache/nginx/client_temp/0000000001, client: 172.18.0.3, server: default, request: "POST /wp-admin/async-upload.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:44:35 +0000] "POST /wp-admin/async-upload.php HTTP/1.1" 200 171 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:45:30 [notice] 45#45: *1 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:45:30 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:46:30 [notice] 45#45: *1 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:46:30 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:48:32 [notice] 45#45: *9 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:48:32 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:49:32 [notice] 45#45: *9 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:49:32 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:50:32 [notice] 45#45: *9 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:50:32 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:51:32 [notice] 45#45: *9 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:51:32 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"
topdiff_nginx | 2018/12/14 16:52:32 [notice] 45#45: *9 "/wp-admin$" does not match "/wp-admin/admin-ajax.php", client: 172.18.0.3, server: default, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", host: "topdiff.docker.localhost:8000", referrer: "http://topdiff.docker.localhost:8000/wp-admin/upload.php"
topdiff_nginx | 172.18.0.3 - - [14/Dec/2018:16:52:32 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 78 "http://topdiff.docker.localhost:8000/wp-admin/upload.php" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.2 Safari/605.1.15"

database user issue

I just spun up a test docker4wordpress dev instance on my mac and when I got to the wordpress setup step, I was unable to proceed with the documented database user ("wordpress"). I had to use "root" instead of "wordpress". The default "wordpress" password worked correctly.

Prior to bringing up the services, I edited the docker-compose.yml to run nginx instead of apache (commented the apache service section, uncommented the nginx service section).

I didn't change anything in the mariadb service section which does set MYSQL_USER: wordpress under environment.

I'm just wondering where the wp db user should be getting set up and how the specified environment variable is not being used.

ERR_CONNECTION_REFUSED - All containers

Codebase

mounted codebase

Host OS

macOS Mojave 10.14.6

Docker info output

Client:
 Debug Mode: false

Server:
 Containers: 143
  Running: 8
  Paused: 0
  Stopped: 135
 Images: 15
 Server Version: 19.03.2
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
 init version: fec3683
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 4.9.184-linuxkit
 Operating System: Docker Desktop
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 1.951GiB
 Name: docker-desktop
 ID: TSFI:QTL2:AGJI:GITA:LUL3:VSE5:GHUN:KMGN:65YI:BVOP:PQLW:NVDK
 Docker Root Dir: /var/lib/docker
 Debug Mode: true
  File Descriptors: 75
  Goroutines: 82
  System Time: 2019-09-17T16:52:29.8397118Z
  EventsListeners: 2
 HTTP Proxy: gateway.docker.internal:3128
 HTTPS Proxy: gateway.docker.internal:3129
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
 Product License: Community Engine

Docker compose file

Make sure you remove all commented services.

version: "3"

services:
  mariadb:
    image: wodby/mariadb:$MARIADB_TAG
    container_name: "${PROJECT_NAME}_mariadb"
    stop_grace_period: 30s
    environment:
      MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD
      MYSQL_DATABASE: $DB_NAME
      MYSQL_USER: $DB_USER
      MYSQL_PASSWORD: $DB_PASSWORD
#    volumes:
#      - ./mariadb-init:/docker-entrypoint-initdb.d # Place init .sql file(s) here.
#      - /path/to/mariadb/data/on/host:/var/lib/mysql # I want to manage volumes manually.

  php:
    image: wodby/wordpress-php:$PHP_TAG
    container_name: "${PROJECT_NAME}_php"
    environment:
      PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025
      DB_HOST: $DB_HOST
      DB_USER: $DB_USER
      DB_PASSWORD: $DB_PASSWORD
      DB_NAME: $DB_NAME
      PHP_FPM_USER: wodby
      PHP_FPM_GROUP: wodby
## Read instructions at https://wodby.com/stacks/wordpress/docs/local/xdebug/
#      PHP_XDEBUG: 1
#      PHP_XDEBUG_DEFAULT_ENABLE: 1
#      PHP_XDEBUG_REMOTE_CONNECT_BACK: 0
#      PHP_IDE_CONFIG: serverName=my-ide
#      PHP_XDEBUG_REMOTE_HOST: 172.17.0.1 # Linux
#      PHP_XDEBUG_REMOTE_HOST: 10.254.254.254 # macOS
#      PHP_XDEBUG_REMOTE_HOST: 10.0.75.1 # Windows
    volumes:
      - ./public:/var/www/html
## For macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
#      - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
## For XHProf and Xdebug profiler traces
#      - files:/mnt/files

  nginx:
    image: wodby/nginx:$NGINX_TAG
    container_name: "${PROJECT_NAME}_nginx"
    depends_on:
      - php
    environment:
      NGINX_STATIC_OPEN_FILE_CACHE: "off"
      NGINX_ERROR_LOG_LEVEL: debug
      NGINX_BACKEND_HOST: php
      NGINX_VHOST_PRESET: wordpress
      #NGINX_SERVER_ROOT: /var/www/html/subdir
    volumes:
      - ./public:/var/www/html
# Options for macOS users (https://wodby.com/stacks/wordpress/docs/local/docker-for-mac/)
#      - ./:/var/www/html:cached # User-guided caching
#      - docker-sync:/var/www/html # Docker-sync
    labels:
      - 'traefik.backend=${PROJECT_NAME}_nginx'
      - 'traefik.port=80'
      - 'traefik.frontend.rule=Host:${PROJECT_BASE_URL}'

  mailhog:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - 'traefik.backend=${PROJECT_NAME}_mailhog'
      - 'traefik.port=8025'
      - 'traefik.frontend.rule=Host:mailhog.${PROJECT_BASE_URL}'

  portainer:
    image: portainer/portainer
    container_name: "${PROJECT_NAME}_portainer"
    command: --no-auth -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    labels:
      - 'traefik.backend=${PROJECT_NAME}_portainer'
      - 'traefik.port=9000'
      - 'traefik.frontend.rule=Host:portainer.${PROJECT_BASE_URL}'

  traefik:
    image: traefik
    container_name: "${PROJECT_NAME}_traefik"
    command: -c /dev/null --web --docker --logLevel=INFO
    ports:
      - '8000:80'
#      - '8080:8080' # Dashboard
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

Logs output

2019/09/17 16:41:18 [notice] 1#1: using the "epoll" event method
2019/09/17 16:41:18 [notice] 1#1: nginx/1.17.0
2019/09/17 16:41:18 [notice] 1#1: built by gcc 6.4.0 (Alpine 6.4.0)
2019/09/17 16:41:18 [notice] 1#1: OS: Linux 4.9.184-linuxkit
2019/09/17 16:41:18 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2019/09/17 16:41:18 [notice] 1#1: start worker processes
2019/09/17 16:41:18 [notice] 1#1: start worker process 45
2019/09/17 16:41:18 [notice] 1#1: start worker process 46
2019/09/17 16:41:18 [notice] 1#1: start worker process 47
2019/09/17 16:41:18 [notice] 1#1: start worker process 48
2019/09/17 16:41:18 [notice] 1#1: start worker process 49
2019/09/17 16:41:18 [notice] 1#1: start worker process 50
2019/09/17 16:41:18 [notice] 1#1: start worker process 51
2019/09/17 16:41:18 [notice] 1#1: start worker process 52

Been using this for awhile with no issues and suddenly today I'm getting ERR_CONNECTION_REFUSED when browsing http://wp.docker.localhost:8000/ . or http://portainer.wp.docker.localhost:8000.

Nginx short-term caching

Small changes to PHP pages are not reflected instantly after a browser refresh (even a hard refresh). I suspect Nginx might be set up with sendfile = on. Is there a way to set sendfile to off right from the docker-compose file? If not, how can I edit the container's Nginx.conf?

I googled around but couldn't find answers to either questions, though I'm not an Nginx or Docker expert.

Symbolic links

How do you add a symbolic link to a repo inside the container to dev locally?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.