Closed brylie closed 2 years ago
For reference, here is the docker-compose.yml
I used to start developing wp-plugin-creativecommons
.
# /wordpress-docker/docker-compose.yml
---
version: '3.3'
services:
db:
container_name: 'local-wordpress-db'
image: 'mysql:5.7'
volumes:
- './data/mysql:/var/lib/mysql'
ports:
- 18766:3306
environment:
MYSQL_ROOT_PASSWORD: test1234
MYSQL_DATABASE: wordpress_db
MYSQL_USER: wordpress_user
MYSQL_PASSWORD: test1234
wordpress:
container_name: 'local-wordpress'
depends_on:
- db
image: 'wordpress:latest'
ports:
- '80:80'
environment:
WORDPRESS_DB_HOST: 'db:3306'
WORDPRESS_DB_USER: wordpress_user
WORDPRESS_DB_PASSWORD: test1234
WORDPRESS_DB_NAME: wordpress_db
volumes:
- "./wordpress:/var/www/html"
- "./plugins:/var/www/html/wp-content/plugins"
This Dockerfile would need some changes to streamline the development process outlined above, such as mounting the wp-plugin-creativecommons
code within the plugins directory.
We might include a .devcontainer
directory with Dockerfile
and docker-compose.yml
for developers who use the VS Code Remote Containers extension.
Edit: the .devcontainer
directory doesn't need to include the Dockerfile
or docker-compose.yml
, since the location of the files can be set as a relative path in devcontainer.json
https://code.visualstudio.com/docs/remote/devcontainerjson-reference
[...]
This Dockerfile would need some changes to streamline the development process outlined above, such as mounting the
wp-plugin-creativecommons
code within the plugins directory.
@brylie Also, I think it should use an unprivileged port:
ports:
- '8080:80'
This Issue is rather large in scope, splitting it off into smaller incremental issues:
Note: VS Code support is not a priority, at this time.
Problem
There are several steps required to begin developing this extension, such as
Each of these steps can prove to be problematic.
Description
Adding a Docker compose file can help make some of the above steps easier. For example, a basic Docker-compose file can create a WordPress/Apache/MariaDB development environment in one command. The WordPress Docker container can automatically install the WordPress coding standards plugin via composer.
Developers would want a choice of IDE. However, it is possible to configure VS Code to develop within a Docker container. For extra simplicity, we can serve a VS Code Code Server instance from within a Docker container pre-configured with PHP-related extensions.
This issue proposes to create a
docker-compose.yml
and possibly an extended WordPress Dockerfile within thedev
folder.Alternatives
I've tried XAMPP locally. It brought back memories and is a good tool. However, it was somewhat quirky and posed issues with permissions, configuration, and debugging.
Implementation