6

ポート、ネットワーク ファイルを開くことができ、Vagrant のプロビジョニング プロセス中にゲストまたはホスト [シェル] コマンドを実行できるプラグインがあります。

私がやりたいことは、(おそらく bash エイリアスを介して) Vagrant ゲスト/VM でコマンドを実行し、理想的にはコマンド ラインで変数を渡して、ホストでコマンドを実行できるようにすることです。

例: 私のホストでは、Atom エディターを実行しています (同じことが TextMate にも当てはまります)。VM で共有ファイルを操作する場合は、エディターで直接開くか、「atom filename」シェル コマンドを実行して、ホストでそのファイルを手動で開く必要があります。

パリティが必要なため、VM 内で「atom filename」を実行できます。これにより、ファイル名が VM 外のホストで「atom $1」スクリプトに渡され、ホスト エディター (Atom) で開きます。 .


注: Vagrant プロビジョニングには Salt を使用し、マウントには NFS を使用します。そしてもちろん、鍵付きの ssh です。

おまけの質問: マージ競合エディターとして .gitconfig を使用してこれを機能させる (前者が可能であれば機能するはずですよね?)。

4

1 に答える 1

2

これは、これまで聞いたことのない非常に興味深い使用例です。Vagrant でこれを処理するネイティブな方法はありませんが、この機能はローカル シェル プロビジョナーの形で Packer に追加されました。Vagrant プロジェクトで GitHub の問題を開いて、同じ機能を提案することができます。ただし、誰かがあなたを打ち負かした可能性があるため、現在の問題のリストを再確認してください。

それまでの間、これを行うことに決めた場合は、回避策があります...

  1. ホストで ssh キー ペアを作成します。
  2. Salt を使用してボックスに秘密鍵を追加し/home/vagrant/.sshます。
  3. シェル プロビジョナーを使用して、ゲストからホストでリモート ssh コマンドを実行します。

これらのコマンドは次の形式になります...

ssh username@192.168.0.1 "ls -l ~"

私の経験では、192.168.0.1IP は常にホストを指していますが、マイレージは異なる場合があります。私は決してネットワーキングの専門家ではありません。

これがうまくいくことを願っています。Vagrant のローカル シェル プロビジョナーは妥当な機能だと思います。

于 2016-01-06T18:26:08.790 に答える