Запуск mvn clean install внутри контейнера Docker с использованием ANSIBLE PlayBook - PullRequest
0 голосов
/ 26 августа 2018

Я пытаюсь запустить команду mvn clean install внутри контейнера докера. Но, похоже, ничего не происходит, поскольку я сопоставил свой контейнер с томом, и целевая папка не была создана. Это пьеса. Извиняюсь, если это глупый вопрос, но я застрял здесь на некоторое разочаровывающее время.

---
- name: Building project
  hosts: all
  become: true
  become_user: root
  tasks:
     - name: install docker mvn
       docker_container:
          name: maven_build_direct
          image: maven
          volumes:
            - /home/user/Desktop/Training/docker/maven_task/happy/GsaJavaExample/:/proj
          command: cd /proj
          command: mvn clean install

Я также пытался запускать команды извне модуля docker-container, но, поскольку контейнер уже останавливается, выдает ошибку. Как то так

     - name: copy content in container to some other folder
       command: docker exec -i maven_build_direct bash -c 'echo "Hello1"; echo "Hello2"'

Ошибка для вышеупомянутого

фатально: [localhost]: НЕ УДАЛЕНО! => {"updated": true, "cmd": ["docker", "exec", "-i", "maven_build_direct", "bash", "-c", "echo \" Hello1 \ "; echo \ "Hello2 \" "]," delta ":" 0: 00: 00.212534 "," end ":" 2018-08-26 17: 07: 06.995110 "," msg ":" ненулевой код возврата "," rc ": 126," start ":" 2018-08-26 17: 07: 06.782576 "," stderr ":" "," stderr_lines ": []," stdout ":" Ошибка выполнения OCI: ошибка exec: ошибка exec: не удается выполнить exec остановленный контейнер: неизвестно "," stdout_lines ": [" Ошибка выполнения exec среды выполнения OCI: ошибка exec: невозможно выполнить остановленный контейнер: неизвестно "]}

1 Ответ

0 голосов
/ 26 августа 2018

Как указано в комментариях, первая проблема заключается в том, что вы указываете несколько свойств команды, которые не будут работать. Правильный способ сделать это, установить свойство workdir следующим образом:

      ...
      volumes:
        - /home/user/Desktop/Training/docker/maven_task/happy/GsaJavaExample/:/proj
      working_dir: /proj
      command: mvn clean install
      ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...