____
/ ) /
---/__ /-----__---/-----------__----__-
/ ) /___) / / / / ) / )
_/____/___(___ _/___(___(__(___/_(___(_
/
(_ /
Beluga is a local development environment for WordPress. It uses Docker and Docker Compose.
🚧 Beluga is still in development, but the stable branch should work to provide a basic WordPress development environment.
- A 64-bit operating system with virtualization enabled and 4GB+ of system RAM. See the Get Docker guides for OS-specific requirements.
- Hyper-V turned on for Windows.
- Docker Engine (included as part of Docker Desktop for Mac and Windows).
- Docker Compose (included as part of Docker Desktop for Mac and Windows).
Conflicts: Docker will not work alongside Virtualbox.
- To get started, download and install Docker Desktop for your operating system. You can follow the quickstart instructions in the Docker Docs. Docker Desktop comes with Docker Compose preinstalled.
- Linux Users: Instructions are coming soon. You'll probably need to install Docker Engine and Docker Compose manually.
- To start things up run:
./beluga start. The first time this runs it'll create a Dockerfile (inconfig/containers) for the WordPress container and an environment file (.env) file to store the WordPress database credentials. It'll then build, create, start, and attach to containers for each service specified in thedocker-compose.ymlfile. - When you receive the "All set" message you can visit http://localhost:8000 in a web browser to complete the installation through the WordPress interface.
- You can add plugins and themes and modify files in the
plugins,themes, andwordpressdirectories. - When you're finished you can run
./beluga stopto stop the running services, and then./beluga startto bring things back up. To remove the containers volumes use./beluga down. To completely remove all containers, images, networks, and volumes use./beluga destroy. You can also interact with the containers using standard Docker Compose commands. See the Docker Compose CLI reference for more information.
- WordPress: http://localhost:8000
- phpMyAdmin: http://localhost:3333
- MailHog: http://localhost:8025
Usage: ./beluga [command]
Commands:
destroy: Stops and deletes all volumes, images, and containers.down: Stop and remove containers, networks, images, and volumes.start: Start services. Create environment and containers if needed.status: Show the current containers and their status.stop: Stop services.version: Display the Beluga, Docker Compose, and Docker versions.
The default MariaDB database name is wordpress with the following credentials:
| Field | Value |
|---|---|
| username | wp |
| password | password |
The MariaDB root user will have the following credentials:
| Field | Value |
|---|---|
| username | root |
| password | root |
You can SSH into the Docker image running WordPress with: docker exec -it wordpress bash.
The following packages are installed through the WordPress, MariaDB, phpMyAdmin, and MailHog Docker images.
The following PHP Modules are installed as part of the official WordPress Docker image.
- bcmath
- Core
- ctype
- curl
- date
- dom
- exif
- fileinfo
- filter
- ftp
- gd
- hash
- iconv
- imagick
- json
- libxml
- mbstring
- mysqli
- mysqlnd
- openssl
- pcre
- PDO
- pdo_sqlite
- Phar
- posix
- readline
- Reflection
- session
- SimpleXML
- sodium
- SPL
- sqlite3
- standard
- tokenizer
- xml
- xmlreader
- xmlwriter
- Zend OPcache
- zip
- zlib