首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何启用AWX容器中的更改?

如何启用AWX容器中的更改?
EN

Stack Overflow用户
提问于 2018-09-24 06:48:06
回答 2查看 3.7K关注 0票数 2

我正试图在AWX容器awx_tasks中安装额外的python包,以便这些更改能够启用诸如snowec2_elb_facts运行(这些模块具有先决条件作为ec2_elb_facts模块)之类的可扩展模块。我已使用以下方法对货柜作出更改:

代码语言:javascript
复制
# docker exec -it 80ab6bf562a9 bash

其中80ab6bf562a9awx_task容器的容器id。

然后在自定义虚拟环境中安装所需的包(如AWX 文档中提到的)。发布这篇文章时,我通过使用以下方法创建一个包含容器更改的新映像,从而使更改永久化:

代码语言:javascript
复制
# docker commit 80ab6bf562a9 ansible/awx_task:latest

Post,运行以下命令将新创建的容器映射为带有容器更改的新映像。

代码语言:javascript
复制
# docker run --name awx_task -d 5290f9b3268c

以下是集装箱张贴上述更改。在这里,新创建的容器是968fb2a7da2f,它使用新的映像映射现有容器中的变化。

代码语言:javascript
复制
# docker container ps -a
CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS                    PORTS                                                 NAMES
968fb2a7da2f        5290f9b3268c                 "/tini -- /bin/sh -c…"   2 days ago          Exited (143) 2 days ago                                                         awx_task
80ab6bf562a9        535bb2b8e1f3                 "/tini -- /bin/sh -c…"   3 weeks ago         Up 2 days                 8052/tcp                                              awx_task_OLD
aea2551951d5        b7c261b76010                 "/tini -- /bin/sh -c…"   3 weeks ago         Up 2 days                 0.0.0.0:80->8052/tcp                                  awx_web
e789a4a82a9e        memcached:alpine             "docker-entrypoint.s…"   3 weeks ago         Up 2 days                 11211/tcp                                             memcached
a8c74584255c        ansible/awx_rabbitmq:3.7.4   "docker-entrypoint.s…"   3 weeks ago         Up 2 days                 4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 25672/tcp   rabbitmq
25f6f6ca7766        postgres:9.6                 "docker-entrypoint.s…"   3 weeks ago         Up 2 days                 5432/tcp                                              postgres

以下是我的图片张贴在上面的变化。在这里,新创建的映像(带有更改)是5290f9b3268c

代码语言:javascript
复制
# docker images
REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
ansible/awx_task       latest              5290f9b3268c        2 days ago          1.48GB
postgres               9.6                 106bdfb062df        8 weeks ago         235MB
ansible/awx_task       <none>              535bb2b8e1f3        8 weeks ago         1.07GB
ansible/awx_web        <none>              b7c261b76010        8 weeks ago         1.04GB
hello-world            latest              2cb0d9787c4d        2 months ago        1.85kB
memcached              alpine              b40e8fa7e3e5        2 months ago        8.69MB
ansible/awx_rabbitmq   3.7.4               e08fe791079e        6 months ago        85.6MB

新容器被正确地映射到新图像(它得到了我想要的更改)。现在的问题是,当我停止旧容器并启动新容器时,AWX无法工作。我可以查看UI,如果我运行像执行模板这样的任务,它就会冻结。新的容器/图像似乎没有与其他容器(如awx_rabbitmqpostgres等)对话。我一直在阅读有关这方面的多篇文章,但是,我找不到任何一篇文章突出了这方面的任何内容。

我基本上希望awx_task容器中的更改能够工作,这样我就可以实现使自定义模块工作的目标。有人能建议怎样做才能让新的awx_task容器扮演老awx_task的角色,而AWX就可以正常工作了吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-31 14:06:42

由于我找到了这样做的方法,我将分享进行所需更改的步骤。

python包版本可以从requirements目录中控制,AWX和AWX相关的更改可以应用在角色目录中的Dockerfile.j2中。一旦应用了所需的更改,我们就可以使用ansible-playbook install.yml -i inventory运行安装程序。

票数 1
EN

Stack Overflow用户

发布于 2018-11-29 20:41:13

您应该使用install.yml重新启动awx_task容器,因为它确保设置了正确的环境变量,映射了正确的卷,等等。有关使用的参数的完整列表,请参见这里

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52473962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档