使用 Vagrant shell 脚本安装 Passenger & Nginx
Installing Passenger & Nginx using Vagrant shell script
这是我第一次 post 所以我希望我问的是正确的。
我编写了一个 shell 脚本来自动安装 Passenger & Nginx(以及其他一些组件),而无需在 Vagrant VM 运行ning Ubuntu 14.04 上进行任何用户输入。使用以下方法效果很好:
echo "****** Adding Passenger & Nginx Repo ******"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 561F9B9CAC40B2F7
sudo apt-get install apt-transport-https ca-certificates -y
echo "deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main" | sudo tee /etc/apt/sources.list.d/passenger.list
sudo chown root: /etc/apt/sources.list.d/passenger.list
sudo chmod 600 /etc/apt/sources.list.d/passenger.list
sudo apt-get update
echo "****** Installing Passenger & Nginx ******"
sudo apt-get install nginx-extras passenger -y
现在我想对 Vagrant VM 运行ning CentOS 6.4 做同样的事情。我按照 Phusion Passenger site 上的 CentOS 说明进行操作,但我似乎无法使其正常工作。当我执行以下操作时,shell 脚本的输出显示 "No package passenger available.":
echo "****** Adding Passenger & Nginx Repo ******"
sudo yum install epel-release pygpgme curl -y
sudo 'echo "curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo"'
sudo chown root: /etc/yum.repos.d/passenger.repo
sudo chmod 600 /etc/yum.repos.d/passenger.repo
sudo yum update
echo "****** Installing Passenger & Nginx ******"
sudo yum install nginx passenger -y
在脚本 运行 之后的 /etc/yum.repos.d 目录中查找,没有列出 passenger.repo,因此无论出于何种原因,curl 似乎都没有下载回购文件。但是,如果我在脚本完成后在我的终端命令行中手动键入命令,它将拉下 repo 和 运行.
我可能在这里做了一些愚蠢的事情,但我是 shell 脚本编写的新手,似乎无法弄清楚问题出在哪里。
感谢您能给我的任何帮助。
sudo 'echo "curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo"'
这是错误的,不是手册所指示的。应该是:
sudo curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo
这是我第一次 post 所以我希望我问的是正确的。
我编写了一个 shell 脚本来自动安装 Passenger & Nginx(以及其他一些组件),而无需在 Vagrant VM 运行ning Ubuntu 14.04 上进行任何用户输入。使用以下方法效果很好:
echo "****** Adding Passenger & Nginx Repo ******"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 561F9B9CAC40B2F7
sudo apt-get install apt-transport-https ca-certificates -y
echo "deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main" | sudo tee /etc/apt/sources.list.d/passenger.list
sudo chown root: /etc/apt/sources.list.d/passenger.list
sudo chmod 600 /etc/apt/sources.list.d/passenger.list
sudo apt-get update
echo "****** Installing Passenger & Nginx ******"
sudo apt-get install nginx-extras passenger -y
现在我想对 Vagrant VM 运行ning CentOS 6.4 做同样的事情。我按照 Phusion Passenger site 上的 CentOS 说明进行操作,但我似乎无法使其正常工作。当我执行以下操作时,shell 脚本的输出显示 "No package passenger available.":
echo "****** Adding Passenger & Nginx Repo ******"
sudo yum install epel-release pygpgme curl -y
sudo 'echo "curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo"'
sudo chown root: /etc/yum.repos.d/passenger.repo
sudo chmod 600 /etc/yum.repos.d/passenger.repo
sudo yum update
echo "****** Installing Passenger & Nginx ******"
sudo yum install nginx passenger -y
在脚本 运行 之后的 /etc/yum.repos.d 目录中查找,没有列出 passenger.repo,因此无论出于何种原因,curl 似乎都没有下载回购文件。但是,如果我在脚本完成后在我的终端命令行中手动键入命令,它将拉下 repo 和 运行.
我可能在这里做了一些愚蠢的事情,但我是 shell 脚本编写的新手,似乎无法弄清楚问题出在哪里。
感谢您能给我的任何帮助。
sudo 'echo "curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo"'
这是错误的,不是手册所指示的。应该是:
sudo curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo