Wordpress wp-config.php doesn't update in Dockers?

The official WordPress docker image will automatically configure wp-config.php using the environment variables you set [documentation].

If there are any variables such as WORDPRESS_DB_HOST, WORDPRESS_DB_PASSWORD, etc., they will be used to build a wp-config.php file upon container creation.

If you want to provide a custom wp-config.php file, you need to make sure there are no related environment variables, and create a volume mapping for your modified file, like so:

version: '2'
...
volumes:
  - ./wp-content:/var/www/html/wp-content 
  - ./wp-config.php:/var/www/html/wp-config.php
...

On docker-compose up, Docker will load your custom wp-config.php into the container and then run the WordPress image's docker-entrypoint.sh which updates the file with the values set in your environment variables.


You can make use of the WORDPRESS_CONFIG_EXTRA environment variable to define any other config values in the wp-config.php file.

As an example:

WORDPRESS_CONFIG_EXTRA: |
  define('WP_ALLOW_MULTISITE', true );
  define('MULTISITE', true);
  define('SUBDOMAIN_INSTALL', false);