Fuzzy as in reference to the https://en.wikipedia.org/wiki/The_Mythical_Man-Month book where Fred describes the approach of "write one to throw away" as the best start.
A developer shell and command image for Drupal development.
Maintained by: Aleksi Johansson aleksi.johansson@wunder.io
This image is available publicly at:
This image is based on the fuzzy-alpine-php-dev image https://github.com/wunderkraut/image-fuzzy-alpine-php-dev.
This image is a single tool/command image, used to provide either run-tim command execution, or a styled running shell, that can connect to and interact with other containers.
It was written with the following goals:
Note: Command containers should be something that any user can customize for their own preferences, but this is considered a good starting point.
The image contains at least but not limited to the following tools:
Note: Project specific versions of Drush and Drupal Console should be a part of composer in your Drupal 8 project.
Run this container, either as a shell or by specifying a command with flags, attach it to whatever volumes and containers you need, and get isolated command environments as you wish.
Consider binding:
~/.ssh
,~/.gitconfig
(composer can get noisy if it doesn't have them),Note: Attach anything not disposable, as the container is meant to disappear when it is finished running.
You can customize the console experience to your liking or to match your host console experience easily if you use zsh as your shell.
Here is an example how to run the container with your own configuration:
docker run --rm -it -v ~/.zshrc:/app/.zshrc ~/.oh-my-zsh:/app/.oh-my-zsh quay.io/wunder/fuzzy-alpine-devshell
Note: This maps your hosts ~/.zshrc
and ~/.oh-my-zsh
to the container which means that if you change them inside the container, they are changed on the host too.
You can find more examples in the scripts
folder of this project.
If you want to change the configuration of this image and build it locally for testing you can do that by running:
docker build --no-cache -t quay.io/wunder/fuzzy-alpine-devshell .
You can get available php variables by running:
docker run --rm -it quay.io/wunder/fuzzy-alpine-devshell php -r "phpinfo();"