在 vagrant vbox 上安装 golang 1.10
Installing golang 1.10 on vagrant vbox
我正在 运行从 Vagrantfile 中使用以下脚本,一切正常。最后,我看到了预期的输出 go1.10 linux/amd64
。
但是,当我 运行 vagrant ssh
我得到 The program 'go' is currently not installed
。
能够看到 go
的 vagrant provision 和不能看到 go
的 vagrant ssh
有什么区别?
config.vm.box = "ubuntu/xenial64"
config.vm.provision "shell" do |s|
s.inline = "
sudo apt-get update
export GOPATH=$HOME/work
sudo curl -O https://storage.googleapis.com/golang/go1.10.linux-amd64.tar.gz
sudo tar -xvf go1.10.linux-amd64.tar.gz
sudo mv go /usr/local
sudo echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
export PATH=$PATH:/usr/local/go/bin
go version" # this row is working fine on the script but not after ssh
end
为了使您对 $PATH
的更改对所有用户可用,您必须在全局配置文件中进行更改,而不是用户的。换行
sudo echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
至
sudo echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile
我正在 运行从 Vagrantfile 中使用以下脚本,一切正常。最后,我看到了预期的输出 go1.10 linux/amd64
。
但是,当我 运行 vagrant ssh
我得到 The program 'go' is currently not installed
。
能够看到 go
的 vagrant provision 和不能看到 go
的 vagrant ssh
有什么区别?
config.vm.box = "ubuntu/xenial64"
config.vm.provision "shell" do |s|
s.inline = "
sudo apt-get update
export GOPATH=$HOME/work
sudo curl -O https://storage.googleapis.com/golang/go1.10.linux-amd64.tar.gz
sudo tar -xvf go1.10.linux-amd64.tar.gz
sudo mv go /usr/local
sudo echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
export PATH=$PATH:/usr/local/go/bin
go version" # this row is working fine on the script but not after ssh
end
为了使您对 $PATH
的更改对所有用户可用,您必须在全局配置文件中进行更改,而不是用户的。换行
sudo echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
至
sudo echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile