Each PHP container is using bash as its default shell. If you do not like the way it is currently configured, you can add your own configuration files to overwrite settings.
Table of Contents
Inside the Devilbox git directory you will find a directory called
Every file inside this directory ending by
*.sh will be source by your bash shell,
allowing for a customized bash configuration. All files not ending by
*.sh will be ignored
and can be used to create config files for other programs.
bash/ directory will be mounted into the PHP container to
|Host OS path||Docker path|
Let’s say you want to add some custom shell aliases. All you have to do is create any file ending
.sh and place it into the
# Navigate to the Devilbox git directory host> cd path/to/devilbox # Create a new file host> touch ./bash/aliases.sh # Add some content to the file host> vi ./bash/aliases.sh
alias l='ls -a' alias ll='ls -al' alias www='cd /shared/httpd'
Custom vim configuration¶
.vimrc is usually place directly in the users home directory and the Devilbox does not
offer any mounts directly to that directory, however you can use a trick with shell aliases
vim with a different config file by default.
First of all, place your favorite
.vimrc into the
# Navigate to the Devilbox git directory host> cd path/to/devilbox # Copy your vim config to the ./bash directory host> cp ~/.vimrc bash/.vimrc
Right now, this is not going to do anything and as
.vimrc is not ending by
.sh it is also
ignored by the shell itself. What is now left to do, is make vim itself always use this config file.
As you can see from the above stated directory mapping, the
.vimrc file will end up under:
/etc/bashrc-devilbox.d/.vimrc inside the PHP container, so just create a shell alias for vim
that will always use this file:
# Navigate to the Devilbox git directory host> cd path/to/devilbox # Create a new file host> touch ./bash/vim.sh # Add your vim alias host> vi ./bash/vim.sh
alias vim='vim -u /etc/bashrc-devilbox.d/.vimrc'
Whenever you start
vim inside any PHP container, it will automatically use the provided vim
This trick will work for all tools that require configuration files.