python-在弹性Beanstalk上的Docker内部部署时间命令
发布时间:2022-05-18 04:38:17 263
相关标签: # node.js
我在Docker中运行了一个Django服务,并将其部署到AWS Elastic Beanstalk。
我想在部署时运行数据库迁移
如果我作为“Python项目”部署到EB,我可以在我的.ebextensions
:
$ cat .ebextensions/01run.config
container_commands:
01migrate:
command: "python manage.py migrate --noinput"
leader_only: true
然而container_commands
用于EC2实例,并且在Docker容器内我有我的代码等等。
我已经看过的东西
-
我不能把它加到我的
Dockerfile
,因为应用迁移是关于在连接的RDS实例(由环境提供)上操作的,而不是真正的“构建Docker映像的一部分” -
我似乎没有什么有用的东西可以补充
Dockerrun.aws.json
到目前为止,我已经确定了一些黑客选项
-
我也许可以在我的内部识别 Docker 映像名称container_commands,然后做docker run -ti $container-name python manage.py migrate等等,但不知道如何并且感觉非常hacky
我可以手动运行迁移
我可以替换CMD gunicorn $etc为CMD $script, where$script应用迁移,然后启动 gunicorn。
这是迄今为止我发现的最不可怕的事情,也是我将要做的权宜之计。
这意味着“每次启动实例时都尝试应用迁移”,这并不让我感到舒适和快乐。
非常欢迎您提出想法!
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报