Bedrock Docker
Easy-to-use Docker setup for local development of Bedrock based Wordpress projects
please note that this is intended for local development - deploying it to production is probably a bad idea
Features
- Automated setup of new and existing Bedrock projects
- Minimal configuration needed: Enter your project's name and you're good to go
- Backup/Restore routines for the database
- MailHog: Catch all outgoing mail for easy mail debugging
- phpMyAdmin: Direct database access
Requirements
macOS
- If you're using dinghy that's everything you need
- For native docker installs you need to configure your system to resolve
.docker
domains to127.0.0.1
Linux
docker
&docker-compose
- Configure your system to resolve
.docker
domains to127.0.0.1
Usage
First time setup
git clone https://github.com/schliflo/bedrock-docker.git your-project
cd your-project
- Adjust
PROJECT_NAME=bedrock
in the Makefile to your projects name (use kebap-case as this is also used for your local development domain) - Run
make up
and follow the instructions - Your new project should start and you should be greeted with the local URLs where you can access it
Starting, stopping etc...
Run make up
to start everything
Run make stop
to stop everything
Run make restart
to - you probably guessed it - restart everything
Run make rebuild
to rebuild the project from the ground (current database will be lost if not backed up)
Using composer
Bedrock Docker abstracts composer into a container. You can use make composer
like you would use composer
standalone:
# install a wordpress plugin:
make composer require wpackagist-plugin/wp-mail-smtp
# update wordpress & plugins:
make composer update
Backup a database
Run make mysql-backup
creates a compressed backup of your database in the backup folder. If you need a more fine grained backup you can use phpMyAdmin
Restoring a database
Use phpMyAdmin to restore the database or use make mysql-restore
if you created a backup previously
Upgrading the project & development containers
Run make upgrade
Logging & information
Run make logs
or make logs app
for just the logs of all or specific containers
Run make state
to see the current state of your containers
Run make urls
to see the URLs of the project
Accessing containers
Run make ssh app
or make logs web
to access the specific containers
Deleting the containers
Run make destroy
Need help or missing a feature?
Open an issue over here
Feedback is generally appreciated ;)