All Projects → iamdb → bedrock-wordpress-docker

iamdb / bedrock-wordpress-docker

Licence: other
Dockerized Wordpress using Bedrock

Programming Languages

Nginx
273 projects
shell
77523 projects

Projects that are alternatives of or similar to bedrock-wordpress-docker

regolith
A WordPress installation template that's a little bit looser than Bedrock
Stars: ✭ 24 (-33.33%)
Mutual labels:  wp-cli, bedrock, wordpress-installation
dudestack
A toolkit for creating a new professional WordPress project with deployments. Originally based on Roots/bedrock.
Stars: ✭ 82 (+127.78%)
Mutual labels:  wp-cli, bedrock, wordpress-installation
Trellis
WordPress LEMP stack with PHP 8.0, Composer, WP-CLI and more
Stars: ✭ 2,295 (+6275%)
Mutual labels:  wp-cli, bedrock
Wplib Box
The Best Local Dev Server for WordPress Developers
Stars: ✭ 204 (+466.67%)
Mutual labels:  wp-cli
bedrock-autoloader
Bedrock Autoloader enables standard plugins to be required just like must-use plugins
Stars: ✭ 30 (-16.67%)
Mutual labels:  bedrock
scaffold-command
Generates code for post types, taxonomies, blocks, plugins, child themes, etc.
Stars: ✭ 149 (+313.89%)
Mutual labels:  wp-cli
mcwzh-meme-resourcepack-bedrock
An add-on that include meme translation in Chinese. | 梗体中文基岩版
Stars: ✭ 38 (+5.56%)
Mutual labels:  bedrock
Wp Cli Login Command
Log in to WordPress with secure passwordless magic links.
Stars: ✭ 200 (+455.56%)
Mutual labels:  wp-cli
ModdedBE
Open source Minecraft: Bedrock Edition launcher for Android. Using EnderCore as Mod Engine, patching NMods to Minecraft.
Stars: ✭ 41 (+13.89%)
Mutual labels:  bedrock
wp-super-cache-cli
A CLI interface for the WP Super Cache plugin
Stars: ✭ 53 (+47.22%)
Mutual labels:  wp-cli
pine
pine - A CLI installer for timber
Stars: ✭ 29 (-19.44%)
Mutual labels:  wp-cli
bedrock-viz
Minecraft Bedrock Edition World Visualization & Reporting Tool with Web App
Stars: ✭ 194 (+438.89%)
Mutual labels:  bedrock
enveigle
Deceive Ansible to template Trellis .env files to local Bedrock
Stars: ✭ 18 (-50%)
Mutual labels:  bedrock
wp-cli-seed-command
WP CLI Seed Command is extension for WP-CLI to seed database with sample data
Stars: ✭ 20 (-44.44%)
Mutual labels:  wp-cli
ds-cli
DS-CLI is now a core runtime component of DesktopServer (https://serverpress.com). This project is an ensemble of the latest command line interface tools such as Composer, PHPUnit, WP-CLI, and other cross-platform components that are important to professional WordPress developers.
Stars: ✭ 19 (-47.22%)
Mutual labels:  wp-cli
wordpress-project
Generic project structure for WordPress website industrialisation.
Stars: ✭ 28 (-22.22%)
Mutual labels:  wp-cli
release-notes
Release notes and system requirements for our various Firefoxen
Stars: ✭ 15 (-58.33%)
Mutual labels:  bedrock
JukeboxMC
A Minecraft Bedrock Editon Server Software
Stars: ✭ 56 (+55.56%)
Mutual labels:  bedrock
LiteXLoader
This project has been merged into LiteLoaderBDS 👇 click below to new project 本项目已经合并到 LiteLoaderBDS 项目中 👇 点击前往 https://github.com/LiteLDev/LiteLoaderBDS
Stars: ✭ 84 (+133.33%)
Mutual labels:  bedrock
BedrockBackwards
Connects older clients to newer servers
Stars: ✭ 24 (-33.33%)
Mutual labels:  bedrock

Dockerized Wordpress using Bedrock

  • Wordpress install based on Bedrock.
  • Create a fresh install or bring your own.
  • wp-cli support
  • Increased security out of the box.
  • Utilizes custom nginx config.
  • php 7.0, mariadb 10.1 and nginx 1.10

This is meant to be a starting off point. A way to quickly get a highly configured, as close to production-ready Wordpress install up and running very quickly while providing a flexible way of handling site files (plugins, themes, etc.) and creating consistent installations across servers. This is meant to be a tool, not a solution. It's also my tool, so it's pretty opinionated at the moment, but I'm open to ideas, suggestions. A lot of this is pieced together from great work done by others as noted in the files.

It's not ideal as a development environment. I think using the wp-cli server (which is just the built-in php server) and a Homebrew managed mysql database is still ideal for fast development. You can test builds in it locally, though, which should give a good indication of how it will run in production.

It assumes you're familiar with docker-machine and docker-compose.

It can be used/configured in a variety of ways:

  • You can mount your own volume and replace the entire Bedrock installation at /var/www/html/ with your own.
  • You can just mount the web/app folder with your plugins, themes and uploads and let the container deal with Wordpress.
  • You can make a custom dockerized Wordpress installation by forking this repo or by using iamdb/fpm-bedrock-wordpress as a starting image and managing your install using composer (example below).

The nginx and fpm containers are provided separately for flexibility, but there's a sample docker-compose.yml file that's provided which should have everything you need to get up and running quickly. They are also built automatically on Docker Hub using this repo at iamdb/nginx-bedrock-wordpress and iamdb/fpm-bedrock-wordpress.

docker-compose.yml

Change the WP_HOME and WP_SITEURL variables to your values. Add an admin username, password and email and a site title as shown in the docker-compose.yml file to create a fresh install.

From there, just:

docker-compose up

It will build and start all of the containers. It may take a while the first time. The fpm container has a lot to build. If they all build and start correctly, the fpm container will wait for the database host and port to become available. Once it is, and if Wordpress isn't already installed and all of the admin variables and the site title variable are present, a new installation using that information will be created. If that information is not provided, you can run the same install cammand using wp-cli commands.

wp-cli

Once you have everything up and running, it's as simple as the below to run wp-cli commands.

docker exec fpm wp core version

Using as a base image

The iamdb/fpm-bedrock-wordpress image is designed to be used as a base image as well. This makes it easy to build and rebuild containers that have everything your Wordpress installation needs, every single time.

Sample custom fpm Dockerfile:

FROM iamdb/fpm-bedrock-wordpress

RUN su-exec www-data composer require \
	wpackagist-plugin/akismet \
	wpackagist-plugin/captcha \
	&& composer install

A note about the nginx configuraiton

It makes all urls that end in install.php as well as the readme.html require a password. This is done for security reasons. This does not currently create a password. All core, plugin and theme installations must be done by making a new base image or through a wp-cli command.

You can disable the password by providing an ALLOW_INSTALL environment variable with a string value of yes. You can see an example of this in the docker-compose.yml file.

Goals

  • Let's Encrypt support
  • S3 support
  • dictator support
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].