无AWS账号登录权限,持SSH密钥获取Ubuntu实例DNS及验证部署
问题1:无AWS账号仅持有SSH密钥,能否获取实例DNS地址?
可以通过SSH登录实例后,调用AWS实例元数据服务获取,无需AWS账号权限:
- 获取公共DNS:执行命令
curl http://169.254.169.254/latest/meta-data/public-hostname - 获取私有DNS:执行命令
curl http://169.254.169.254/latest/meta-data/local-hostname
问题2:无DNS地址时验证Django+Nginx+Gunicorn部署状态
无需DNS地址,可直接在SSH终端内分组件验证:
验证Gunicorn运行状态
- 查看进程:
ps aux | grep gunicorn,若能看到绑定目标端口(如127.0.0.1:8000)的Gunicorn进程,说明服务已启动。 - 本地请求测试:
curl http://127.0.0.1:8000(替换为你的Gunicorn监听端口),若返回Django站点的正常响应(如HTML内容或JSON数据),说明Gunicorn能正确处理Django请求。
验证Nginx服务与转发
- 检查Nginx运行状态:
sudo systemctl status nginx,输出显示active (running)即为正常。 - 验证配置语法:
sudo nginx -t,无报错提示说明配置文件合法。 - 测试Nginx转发:
curl http://127.0.0.1,若返回Django站点内容,说明Nginx已正确将请求转发给Gunicorn。
验证PostgreSQL连接
- 登录数据库:
sudo -u postgres psql -d 你的数据库名称,成功进入Postgres交互界面则服务正常。 - 验证Django数据库连接:进入Django项目目录,执行
python manage.py inspectdb,若能列出数据库表结构,说明Django与PostgreSQL连接配置正确。
内容的提问来源于stack exchange,提问作者gripper19
相关产品推荐
相关产品推荐

