【发布时间】:2016-01-26 12:48:10
【问题描述】:
我正在将我的代码部署到 AWS EC2。文档说有一些称为“用户数据”或“用户数据脚本”的东西,您可以在启动 ec2 实例时输入此信息,并且脚本将在实例启动时执行。
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html#user-data-shell-scripts
以下是我的用户数据脚本:
#!/bin/bash
echo 1111 >> /home/ubuntu/1111.txt
export MONGODB_HOST=www.mongodb.com
export MONGODB_PORT=12345
export MONGODB_USER=user
export MONGODB_PASS=pass
因此,当我使用此用户数据脚本启动实例时,我希望看到正在设置的环境变量,但事实并非如此。
那么我做错了什么吗?
【问题讨论】:
-
是的,我已经阅读了该帖子,但不知何故它不起作用。我可以在
/var/lib/cloud/instance/user-data.txt中看到用户数据,我也可以通过user_data=curl 169.254.169.254/latest/user-data 获得$user_data变量,但我无法将它们放入环境变量中......(我的node.js 应用程序从env 变量中读取凭据。 .) -
您是手动连接到机器并启动节点吗?或者你是怎么开始的?
-
AWS codedeploy 将告诉 code-deploy 代理运行一些脚本 (start.sh) 完成后,最终脚本将执行
node server.js -
forums.aws.amazon.com/message.jspa?messageID=139744 的一些帮助。另请注意,userdata 脚本以 root 身份运行。
标签: amazon-web-services amazon-ec2