Created
October 23, 2019 09:41
-
-
Save Chris820/cb8d07b6c41a7bffaab0821c4af7fa1d to your computer and use it in GitHub Desktop.
Creates a Vagrant VM running Solr 7.7. Suitable for local Drupal website development. The conf files can be found in the relevant Drupal module
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Vagrant.configure("2") do |config| | |
config.vm.box = "ubuntu/xenial64" | |
config.vm.network "private_network", ip: "192.168.33.11" | |
config.vm.network :forwarded_port, guest: 8983, host: 8983 | |
# Memory and CPU cores | |
config.vm.provider "virtualbox" do |v| | |
v.memory = 1024 | |
v.cpus = 2 | |
end | |
config.vm.provision "shell", inline: <<-SHELL | |
export DEBIAN_FRONTEND=noninteractive | |
echo "Update packages..." | |
sudo apt update | |
# Install Java 8 | |
echo "Installing Java..." | |
sudo apt install -y openjdk-8-jdk openjdk-8-jre | |
java -version | |
# Download Solr | |
cd /opt | |
echo "Dowloading Solr..." | |
sudo wget --progress=bar:force:noscroll https://archive.apache.org/dist/lucene/solr/7.7.0/solr-7.7.0.tgz | |
# Install Solr | |
echo "Installing Solr..." | |
sudo tar xzf solr-7.7.0.tgz solr-7.7.0/bin/install_solr_service.sh --strip-components=2 | |
sudo bash ./install_solr_service.sh solr-7.7.0.tgz | |
# Create solr cores for our local dev sites | |
echo "Create Solr cores.." | |
sudo su - solr -c "/opt/solr/bin/solr create -c core1 -n data_driven_schema_configs" | |
sudo su - solr -c "/opt/solr/bin/solr create -c core2 -n data_driven_schema_configs" | |
sudo su - solr -c "/opt/solr/bin/solr create -c core3 -n data_driven_schema_configs" | |
SHELL | |
# Always Start Solr | |
config.vm.provision "shell", run: "always", inline: "sudo service solr restart" | |
# Synced conf folders, one for each core | |
config.vm.synced_folder "~/vagrant-localsolr/conf", "/var/solr/data/core1/conf/", owner: "solr", group: "solr" | |
config.vm.synced_folder "~/vagrant-localsolr/conf", "/var/solr/data/core2/conf/", owner: "solr", group: "solr" | |
config.vm.synced_folder "~/vagrant-localsolr/conf", "/var/solr/data/core3/conf/", owner: "solr", group: "solr" | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment