author | Oleksandr Gavenko <gavenkoa@gmail.com> |
Mon, 09 Apr 2018 23:22:54 +0300 | |
changeset 2245 | 30d831980005 |
parent 2238 | a0d98c23cd6b |
child 2259 | 584447bfdc99 |
permissions | -rw-r--r-- |
2197
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
1 |
|
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
2 |
========= |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
3 |
Vagrant |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
4 |
========= |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
5 |
|
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
6 |
Changing Vagrant home directory |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
7 |
=============================== |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
8 |
|
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
9 |
Set ``VAGRANT_HOME`` env var, like:: |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
10 |
|
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
11 |
VAGRANT_HOME=d:\srv\vagrant |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
12 |
|
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
13 |
Default is ``~/.vagrant.d`` for Linux and ``%USERPROFILE%\.vagrant.d`` for Windows. |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
14 |
|
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
15 |
https://www.vagrantup.com/docs/other/environmental-variables.html |
5ee52f8d25b5
Changing Vagrant home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
16 |
|
2237 | 17 |
Managing boxes |
18 |
============== |
|
19 |
||
20 |
Adding new box from catalog:: |
|
21 |
||
22 |
$ vagrant box add ubuntu/trusty64 |
|
23 |
||
24 |
Checking for box updates:: |
|
25 |
||
26 |
$ cd $BOXDIR |
|
27 |
$ vagrant box outdated |
|
28 |
||
2238 | 29 |
or:: |
30 |
||
31 |
$ vagrant box outdated --global |
|
32 |
||
2237 | 33 |
Disable checking for update each time you call ``vagrant`` command:: |
34 |
||
35 |
Vagrant.configure("2") do |config| |
|
36 |
config.vm.box_check_update = false |
|
37 |
end |
|
38 |
||
39 |
Download box update:: |
|
40 |
||
41 |
$ vagrant box update |
|
42 |
||
43 |
.. note:: |
|
44 |
``vagrant box update`` does not magicall updates your existing boxes. In just download |
|
45 |
updated versions. To install new versio you need to destroy and install new boxes:: |
|
46 |
||
47 |
$ vagrant destroy |
|
48 |
$ vagrant up |
|
49 |
||
50 |
To remove box at specific version:: |
|
51 |
||
52 |
$ vagrant box remove laravel/homestead --box-version 1.1.0 |
|
53 |
||
54 |
https://www.vagrantup.com/docs/cli/box.html |
|
55 |
Command: ``vagrant box``. |
|
56 |
https://www.vagrantup.com/docs/boxes/versioning.html |
|
57 |
Box Versioning. |
|
58 |
||
2238 | 59 |
Managing plugins |
60 |
================ |
|
61 |
||
62 |
https://www.vagrantup.com/docs/cli/plugin.html |
|
63 |
Command: ``vagrant plugin``. |
|
64 |
https://github.com/hashicorp/vagrant/wiki/Available-Vagrant-Plugins |
|
65 |
List of vagrant plugins. |
|
66 |
||
2201
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
67 |
Running individual provisioning scripts |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
68 |
======================================= |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
69 |
|
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
70 |
You may give name to provisioning script:: |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
71 |
|
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
72 |
Vagrant.configure("2") do |config| |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
73 |
config.vm.provision 'user_ssh', type: :shell, privileged: false do |s| |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
74 |
ssh_pub_key = File.readlines("#{Dir.home}/.ssh/id_rsa.pub").first.strip |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
75 |
s.inline = "echo #{ssh_pub_key} >> /home/$USER/.ssh/authorized_keys" |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
76 |
end |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
77 |
config.vm.provision 'root_ssh', type: :shell, privileged: true do |s| |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
78 |
ssh_pub_key = File.readlines("#{Dir.home}/.ssh/id_rsa.pub").first.strip |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
79 |
s.inline = "mkdir /root/.ssh/; echo #{ssh_pub_key} >> /root/.ssh/authorized_keys" |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
80 |
end |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
81 |
... |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
82 |
end |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
83 |
|
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
84 |
and apply them individually:: |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
85 |
|
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
86 |
vagrant provision --provision-with user_ssh |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
87 |
vagrant provision --provision-with root_ssh |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
88 |
vagrant provision --provision-with user_ssh,root_ssh |
af2d2e117b4e
Running individual provisioning scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2197
diff
changeset
|
89 |
|
2236
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
90 |
Working with Alpine Linux |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
91 |
========================= |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
92 |
|
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
93 |
Install plugin:: |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
94 |
|
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
95 |
$ vagrant plugin install vagrant-alpine |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
96 |
Installing the 'vagrant-alpine' plugin. This can take a few minutes... |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
97 |
Installed the plugin 'vagrant-alpine (0.3.0)'! |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
98 |
|
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
99 |
Create Vagrantfile:: |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
100 |
|
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
101 |
$ vagrant init maier/alpine-3.6-x86_64 |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
102 |
|
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
103 |
https://app.vagrantup.com/maier/boxes/alpine-3.6-x86_64 |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
104 |
AlpineLinux v3.6.2 with VirtualBoxGuestAdditions |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
105 |
https://app.vagrantup.com/maier |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
106 |
maier boxes. |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
107 |
https://github.com/maier/vagrant-alpine |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
108 |
Home page of ``vagrant-alpine`` plugin. |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
109 |
https://app.vagrantup.com/generic/boxes/alpine36 |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
110 |
Generic box. |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
111 |
https://app.vagrantup.com/generic/boxes |
15e9cc9e054f
Working with Alpine Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
2201
diff
changeset
|
112 |
Generic boxes. |