Higher Logic Vanilla (Vanilla) only has one supported localhost installation configuration: Vanilla Docker.
Vanilla Docker
Vanilla Docker is a self-container, docker-compose setup providing:
- PHP
- MySQL
- Nginx
- Memcached
- Sphinx
- XDebug
- Local SSO & Embedding Stubs
Prerequisites
Composer installation
brew install composercomposer self-update --1
Set up Vanilla Docker
Clone relevant repositories
Create a directory where you will clone all of your Vanilla repositories. Make sure this directory is shared in the Docker desktop settings.
- Your user directory is typically shared, making it an ideal location to put it.
In this guide, we will use the directory ~/vnla
.
- Clone the repository into this directory.
- Clone the repository into this directory. It MUST be in the path ~/vnla/vanilla.
- Vanilla staff should clone the repository instead, but ensure that the directory it is cloned into is called vanilla.
- Vanilla staff should run the following script after cloning.
./cloud/scripts/symlink-addons
.
Important notes
In this scenario, the entire contents of the ~/vnla directory will be synchronized into the docker containers. Having an excessive amount of content here can slow things down, so it's recommended to only put content needed to run Vanilla into this directory.
Run the macOS setup script
Run the following setup script:
cd ~/vnla/vanilla-dockersudo ./mac-setup.sh
Symlink the docker config
cd ~/vnla/vanilla/confln -s ../../vanilla-docker/bootstrap.before.php
Installing Dependencies & Building
The next step is to install composer dependencies & node_modules, and then build the frontend.
cd ~/vnla/vanillacomposer install
The first time you run this, it may take a while. Subsequent runs should be faster.
Developer build
If you're constantly updating the JavaScript or CSS or addons or themes, it's recommended to use the developer build. This keeps the build in memory and has fast rebuilds of changes.
Limitations
- This build only works if you have installed your site. This should result in
conf/config.php
file being generated. - If you enable or disable an addon, you'll have to restart your build.
- If you create a new entry in an addon (e.g.,
src/scripts/entries
), you'll have to restart your build.
# Add This to you config.php# $Configuration['HotReload']['Enabled'] = true;# The run thisyarn build:dev
Starting/stopping Docker
This is how you will start the Docker containers.
cd ~/vnla/vanilla-dockerdocker compose up --build -d
To shut down the containers in the future, run this:
cd ~/vnla/vanilla-dockerdocker compose down
Go to your site
- Navigate to .
- Use the following credentials.
- Finish filling out the form.
- Submit the form.
- See your new site.
Install Cloud addons
For vanilla employees only.
Run the following:
cd ~/vnla/vanilla# Symlink cloud addons./cloud/scripts/symlink-addons# Install dependencies and rebuild frontendcomposer install
https://github.com/vanilla/vanilla-docker
https://github.com/vanilla/vanilla
https://github.com/vanilla/vanilla-cloudhttps://dev.vanilla.localhost