相关疑难解决方法(0)

从AWS EB Linux实例运行manage.py.

如何从AWS EB(Elastic Beanstalk)Linux实例运行manage.py?

如果我从'/ opt/python/current/app'运行它,它会显示以下异常.

Traceback (most recent call last):
  File "./manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ImportError: No module named django.core.management
Run Code Online (Sandbox Code Playgroud)

我认为这与virtualenv有关.任何提示?

python django amazon-web-services

20
推荐指数
2
解决办法
7903
查看次数

我的 Elastic Beanstalk for AL2 中的环境变量在哪里?

我正在用来elastic beanstalk部署Django应用程序。我想SSHEC2实例上执行一些 shell 命令,但环境变量似乎不存在。我通过 AWS GUI(配置 -> 环境属性)指定了它们,它们似乎在我的应用程序启动期间工作。

我尝试通过以下方式激活和停用虚拟环境:

source /var/app/venv/*/bin/activate
Run Code Online (Sandbox Code Playgroud)

是否有一些环境(或我可以运行的脚本)来访问设置了所有属性的环境?否则,我几乎无法运行任何命令,python3 manage.py ...因为没有配置设置模块(我知道如何手动指定它,但我的应用程序需要大约 7 个变量才能工作)。

django amazon-elastic-beanstalk amazon-linux-2

13
推荐指数
2
解决办法
8763
查看次数

ElasticBeanstalk 的 EC2 实例不会检索终端/ ssh 中 Laravel 应用程序的 Beanstalk 控制台中设置的 .env 变量

我正在将 Laravel 应用程序部署到 ElasticBeanstalk。现在,我尝试通过 SSH 连接到 Beanstalk 环境的 EC2 实例并运行命令。

php artisan migrate --force
Run Code Online (Sandbox Code Playgroud)

但我不能运行它。该命令失败,因为它没有获取在 Beanstalk 环境中设置的环境变量。这是我所做的。

我通过 ssh 进入实例。然后我转到 /var/www/html 文件夹。然后我运行“php artisan migrate --force”命令。正如我所提到的,它失败了,因为它没有获取在 Beanstalk 环境中设置的数据库凭据。我也试过这个。

sudo -u root php artisan migrate --force
Run Code Online (Sandbox Code Playgroud)

同样的事情发生了。我还在终端玩弄修补匠。当我检索像 env('APP_NAME') 这样的应用程序名称时,它返回 null。这是什么问题,我该如何解决?

amazon-ec2 amazon-web-services laravel amazon-elastic-beanstalk

4
推荐指数
1
解决办法
723
查看次数

在 Elastic Beanstalk SSH 上运行 Django 命令 -&gt; 缺少环境变量

所以这对我来说是一个长期存在的问题,我很想解决它 - 我也认为这会帮助很多其他人。我希望在 Elastic Beanstalk EC2 实例上进行 ssh 操作后运行 Django 命令。例如

python manage.py dumpdata
Run Code Online (Sandbox Code Playgroud)

这是不可能的原因是缺少环境变量。它们在服务器启动时存在,但在服务器运行后立即取消设置(EB 将在 EC2 中创建虚拟环境并从那里删除变量)。

我最近发现有一个预构建的脚本可以检索 EC2 实例上的环境变量:

/opt/elasticbeanstalk/bin/get-config environment
Run Code Online (Sandbox Code Playgroud)

这将返回一个字符串化对象,如下所示:

{"AWS_STATIC_ASSETS_SECRET_ACCESS_KEY":"xxx-xxx-xxx","DJANGO_KEY":"xxx-xxx-xxx","DJANGO_SETTINGS_MODULE":"xx.xx.xx","PYTHONPATH":"/var/app/venv/staging-LQM1lest/bin","RDS_DB_NAME":"xxxxxxx":"xxxxxx","RDS_PASSWORD":"xxxxxx"}
Run Code Online (Sandbox Code Playgroud)

这就是我目前陷入困境的地方。我认为需要一个脚本,该脚本使用该对象解析它并将键/值设置为环境变量。我需要能够从 ec2 实例运行此脚本。

或者从 .ebextensions 执行的命令将获取变量并设置它们。

我现在完全不确定如何继续吗?我在这里忽略了一些明显的事情吗?有人已经为此编写了脚本吗?这是正确的方法吗?

我很乐意得到你的帮助!

django amazon-ec2 amazon-web-services amazon-elastic-beanstalk

3
推荐指数
1
解决办法
761
查看次数