bitpoke / stack

Open-Source WordPress Infrastructure on Kubernetes

Home Page:https://www.bitpoke.io/stack

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RFC: Site development flow 1.0

vtemian opened this issue · comments

On the current environment is hard to add custom config, update WordPress or to add any custom extensions.

In order to solve this problem, we propose to use only Docker images, but which integrate your code via git.

Since WordPress-Operator is coupled with the WordPress runtime, we suggest a layering structure:

    INTEGRATION CODE (custom glue code)
----------------------------------------------
   CLIENT CODE + WORDPRESS (via composer)
-----------------------------------------------
      PHP + NGINX (our base image)

In order to add your custom config, you'll need to have, in your repository, a Dockerfile that starts from our custom base image. That image represents a certain PHP version, bundled with a set of minimal PHP extensions and minimal Nginx config (Lua code for serving GCS buckets). Your Dockerfile can then contain custom extensions or custom Nginx config (that needs to be added at certain paths).

This will enhance the local development workflow and deployment:

  • on local you can run the same image as in production, via docker-compose
  • you can use Skaffold to run the same image on local as in production. Also, Skaffold can be used to deploy on your local stack instance or in stage/production.

In this use case, running sites are read-only and the development SHOULD only work via composer and git.

Concerns from @milero:

  • How much it would take to build a custom Docker image?
    • on code update
    • on extension add
    • on plugin/wordpress version change
commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
You can add lifecycle/frozen label to indicate that this issue or PR should not be auto-closed due to inactivity.

commented

This issue has been closed due to lack of activity.