Created
March 18, 2014 11:33
-
-
Save BenPhegan/9618333 to your computer and use it in GitHub Desktop.
Docker Cache Hack (sort of)
This file contains 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 = "parallels/ubuntu-12.04" | |
config.vm.network "forwarded_port", guest: 80, host: 8080 | |
config.vm.network "forwarded_port", guest: 6379, host: 6380 | |
# config.vm.network "public_network" | |
config.vm.network "private_network", ip: "192.168.2.123" | |
# Install docker using provisioner | |
config.vm.provision "docker" | |
# Check if we have a local tar of the image we want, if so load it into docker | |
config.vm.provision "shell", inline: "[ -n '$(docker images -q dockerfile/redis)' ] || [ -f /vagrant/dockerfile/redis.tar ] && docker load < /vagrant/dockerfile/redis.tar" | |
# Use the provisioner to run it... | |
config.vm.provision "docker" do |d| | |
d.run "redis", | |
image: "dockerfile/redis", | |
cmd: "--dir /var/redis", | |
args: "-v '/vagrant/redis:/var/redis' -p 6379:6379" | |
end | |
# Check if we have an output location...we could flatten the file system and remove this command... | |
config.vm.provision "shell", inline: "[ -d /vagrant/dockerfile ] || mkdir /vagrant/dockerfile" | |
# Finally, if we dont have a copy of the tar already (ie first provision) then we download it to the vagrant share ready for next provision... | |
config.vm.provision "shell", inline: "[ -f /vagrant/dockerfile/redis.tar ] || docker save dockerfile/redis > /vagrant/dockerfile/redis.tar" | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment