簡體   English   中英

如何使用docker容器通過Rundeck調用Ansible?

[英]How to call Ansible through Rundeck using docker container?

我試圖通過Rundeck致電Ansible。 我已經創建了dockercompose文件,如下所示:

version: '3.0'
services:
  Rundeck:
    stdin_open: true
    tty: true
    image: 'jordan/rundeck'
    ports:
      - '4440:4440/tcp'
    volumes:
     - /root/ansibledemo:/data

  ansible:
    stdin_open: true
    tty: true
    image: 'ansible/ansible:default'
    volumes:
     - /root/ansibledemo:/data1

使用此文件,我可以創建2個服務,一個用於Rundeck,另一個用於Ansible。 但是我的問題是:當我嘗試從Rundeck Web界面運行作業時,我面臨以下問題:

/bin/sh: 1: ansible-playbook: not found
13:10:10            Result: 127
13:10:10            Failed: NonZeroResultCode: Result code was 127
13:10:10            Execution failed: 1 in project demo: [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [localhost: NonZeroResultCode: Result code was 127 + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:localhost)=BaseDataContext{{exec={exitCode=127}}}, ContextView(node:localhost)=BaseDataContext{{exec={exitCode=127}}}}, base=null)} ]}, Node failures: {localhost=[NonZeroResultCode: Result code was 127 + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:localhost)=BaseDataContext{{exec={exitCode=127}}}, ContextView(node:localhost)=BaseDataContext{{exec={exitCode=127}}}}, base=null)} ]}, status: failed]

如何使用docker容器通過Rundeck調用Ansible?

默認Rundeck Docker映像不包含Ansible,您需要將Ansible與Rundeck並存於同一容器中,您有以下三種選擇:

1)使用Rundeck和Ansible創建自己的容器。 2)如果需要,請使用此圖像,效果很好: https : //hub.docker.com/r/batix/rundeck-ansible/ 3) https://stackoverflow.com/a/47462089/10426011 (更復雜的我認為)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM