简体   繁体   中英

How to use aliases in Vagrant

I'm trying to create aliases that I can use in Vagrant any time I run the VM. I've found several sources on the web about it, but can't get it working. I tried making a .bash_profile in my synced folder, but that didn't work. I noticed if I run the command alias name="command" this will work, but only for the current session. Anyone know how to do this? I'm using macOS. Thanks for your help!

Here is my Vagrantfile:

# -*- mode: ruby -*-
# vi: set ft=ruby :

unless Vagrant.has_plugin?("vagrant-vbguest")
    warn "\nWARNING: The vagrant-vbguest plugin should be installed or your shared folders might not mount properly!"
    warn "You can do this by running the command 'vagrant plugin install vagrant-vbguest'.\n\n"
end

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "pype_vm"
  config.vm.box_url = "https://.../pype_vm.json"

  config.vm.network "private_network", ip: ""
  config.vm.boot_timeout = 600
  config.vm.provider "virtualbox" do |v|
    # This forces VirtualBox to use the host's DNS resolver instead of
    # VirtualBox's
    v.customize ["modifyvm", :id, "", "on"]

    # This enables the PAE/NX option, which resolved at least one user's
    # issues with the VM hanging on boot
    v.customize ["modifyvm", :id, "--pae", "on"]

    # The RHEL VM was created with 2GB of memory to facilitate provisioning,
    # but this is causing issues with certain workstations.  This reduces
    # the amount of memory allocated to the VM but should not impact development
    # performance.  The number is in MB and can be increased if desired.
    v.memory = 1024
  end
  # Share an additional folder to the guest VM. 
  config.vm.synced_folder File.dirname(__FILE__), "/pype"
end

The details depend on the specific of the guest being run, but some notes:

  • Assuming the default user account is active for vagrant ssh , ensure that any dotfiles you wish to override are copied to /home/vagrant .
  • If overriding .bashrc , ensure that the remote shell is started with the interactive flag (if this is true, echo $- will include i ).
  • If overriding .bash_profile , ensure that the remote shell is started as a login shell (if this is true, echo $- will include l ).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM