Vagrantの仮想マシンからローカルにファイルをコピーする4つの方法

Vagrantの仮想マシンからローカルにファイルをコピーする4つの方法

Vagrant環境で作成したファイルを、ローカル(ホスト側)にコピーする方法をいくつか紹介します。目的や状況に応じて最適な方法を選びましょう。



方法①: 共有フォルダ(/vagrant)を利用

Vagrantでは、ゲストOS内の/vagrantディレクトリがホスト側と同期されています。Vagrantfileと同じディレクトリとリンクしているため、ここを経由すればファイルを簡単にやり取りできます。

手順:

  1. ゲストOS内で対象ファイルを/vagrantにコピー

  1. ホスト側(ローカル)の同一ディレクトリで確認

補足: /vagrantは双方向で同期されているため、逆にローカルから仮想マシンへファイルを渡すこともできます。

方法②: vagrant-scp プラグインを使う

一時的にファイルをコピーしたい場合は、このプラグインが便利です。

プラグインのインストール:

ファイルのコピー(ゲスト → ホスト):

仮想マシン名がdefaultでない場合は適宜置き換えてください。

方法③: scp + vagrant ssh-configを使う

SSHの詳細情報をもとに、scpで安全にファイルをコピーする方法です。

1. SSH情報を確認:

2. ファイルのコピー:

出力結果のPortIdentityFileは各環境で異なりますので、出力に合わせてコマンドを調整してください。

方法④: rsyncで高速コピー(大量のファイル向け)

多くのファイルをコピーしたいときはrsyncが便利です。

差分コピーにも対応しており、再実行も高速です。

まとめ

方法 特徴 適した場面
/vagrant 共有フォルダ 最も簡単、常に同期 少量のファイルやテスト
vagrant scp コマンド一発で完結 一時的なファイル転送
scp + ssh-config 柔軟、スクリプトにしやすい 自動化や外部連携
rsync 高速、差分対応 大量ファイルや定期バックアップ

作業内容や環境に応じて、最適な手法を選びましょう!

最後までお読みいただきありがとうございます。
よろしければブログやTwitterでのシェアをお願いしております。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。

ITパスポート、基本情報技術者、応用情報技術者などIPAが提供する国家資格の過去問を学べるモバイルアプリをリリースしました。
詳しくは下記のプレスリリースをご覧ください。
https://prtimes.jp/main/html/rd/p/000000008.000073303.html

Youtubeチャンネル開設いたしました。
チャンネル登録者10,000人を目指しているので、良いと思った方はチャンネル登録をお願いしたいです。
https://www.youtube.com/channel/UC219XhmSRxmXltTy6COxSMw






Vagrant

Posted by ちこ