やること
Vagrantで起動した仮想マシンにファイルを転送します。vagrant-scpというプラグインで実現できました。
動作環境
- ubuntu 22.04
- vagrant 2.2.19
- vagrant-scp 0.5.9
vagrant-scpのインストール
まず、プラグインをインストールしましょう。vagrant plugin installコマンドでvagrant-scpをインストールします。
$ vagrant plugin install vagrant-scp
次に、vagrant plugin listコマンドを実行してvagrant-scpがインストールできたか確認できます。下の例ではversion 0.5.9のvagrant-scpがインストールできています。
$ vagrant plugin list
vagrant-scp (0.5.9, global)
vagrant scp
vagrant scpコマンドが使えるようになりました。ローカルから仮想マシンにファイルを転送する場合の書式はvagrant scp <local_path> [vm_name]:<remote_path>です。仮想マシンからローカルにファイルを転送する場合の書式はvagrant scp [vm_name]:<remote_path> <local_path>です。
$ vagrant scp
Usage: vagrant scp <local_path> [vm_name]:<remote_path>
vagrant scp [vm_name]:<remote_path> <local_path>
Directories will be copied recursively.
Options:
--[no-]color Enable or disable color output
--machine-readable Enable machine readable output
-v, --version Display Vagrant version
--debug Enable debug output
--timestamp Enable timestamps on log output
--debug-timestamp Enable debug output with timestamps
--no-tty Enable non-interactive output
-h, --help Print this help
ファイルの転送
ここではローカルから仮想マシンにファイルを転送します。
仮想マシン名の確認
まず、vagrant statusコマンドでファイルを転送したい仮想マシン名を確認します。下の例ではdefaultが仮想マシン名です。
$ vagrant status
Current machine states:
default running (libvirt)
ファイルの転送
例えば、転送したいファイルをvagrant.mdとします。さらに、転送先を/home/vagrantとします。そして、vagrat upコマンドを実行します。そうすれば、ローカルから仮想マシンにファイルを転送することができます。
$ vagrant scp vagrant.md default:/home/vagrant
コメント