我正在使用EC2实例来设置Jenkins。在EC2实例中,我引导了以下脚本以在我的EC2实例中下载Jenkins CLI。
sudo wget http://127.0.0.1:8080/jenkins/jnlpJars/jenkins-cli.jar
但是执行此命令时,出现以下错误
http://127.0.0.1:8080/jenkins/jnlpJars/jenkins-cli.jar正在连接至127.0.0.1:8080...。 HTTP请求已发送,正在等待响应... 503服务不可用 错误503:服务不可用。
我用Google搜索,发现可能是由于Jenkins正在引导,因此我在脚本中添加了以下代码以等待Jenkins启动。
function jenkinsCreationWait () {
echo "Jenkins Creation Wait"
while ! test -f "/var/lib/jenkins/secrets/initialAdminPassword"; do
sleep 5
echo "Jenkins is booting, please wait..."
done
echo "End"
}
我在执行
之前放置了此代码sudo wget http://127.0.0.1:8080/jenkins/jnlpJars/jenkins-cli.jar
在引导过程中收到错误后,我通过SSH进入EC2实例,并尝试执行上述命令,我收到了500
http://127.0.0.1:8080/jenkins/jnlpJars/jenkins-cli.jar 正在连接至127.0.0.1:8080 ... HTTP请求已发送,正在等待响应... 500服务器错误 错误500:服务器错误。
尽管几个小时前工作正常。
答案 0 :(得分:0)
我认为您正在使用用户数据。这是一个shell脚本,等待您获得200个代码
while [[ "$(curl --insecure -s -o /dev/null -w "%{http_code}" http://localhost:8080/jnlpJars/jenkins-cli.jar)" != "200" ]]; do sleep 15; done
wget http://127.0.0.1:8080/jenkins/jnlpJars/jenkins-cli.jar