Git Product home page Git Product logo

beluga's Introduction

      ____                               
      /   )          /                   
  ---/__ /-----__---/-----------__----__-  
    /    )   /___) /   /   /  /   ) /   )  
  _/____/___(___ _/___(___(__(___/_(___(_  
                                /        
                            (_ /         

Beluga ๐Ÿณ Download

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.

System Requirements

  • 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.

How to Use

  1. 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.
  2. To start things up run: ./beluga start. The first time this runs it'll create a Dockerfile (in config/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 the docker-compose.yml file.
  3. 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.
  4. You can add plugins and themes and modify files in the plugins, themes, and wordpress directories.
  5. When you're finished you can run ./beluga stop to stop the running services, and then ./beluga start to 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.

Reference

Network paths

CLI commands

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.

Default credentials

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.

Packages installed

The following packages are installed through the WordPress, MariaDB, phpMyAdmin, and MailHog Docker images.

PHP Extensions

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

beluga's People

Contributors

admturner avatar

Watchers

 avatar

beluga's Issues

File permissions problem: User cannot modify site files

The containers start as expected and WordPress can manage the filesystem to upload media, upgrade plugins and themes through the UI, etc. But all of the files are owned www-data:www-data and the system user can't modify them. This means it is impossible to sideload plugins or themes, such as by git cloneing them.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.