일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 탐욕 알고리즘
- DB
- 깃허브
- MongoDB
- pymongo
- 파이썬
- Django
- Google Drive
- 아이폰
- gpu 병렬처리
- docker-compose
- python
- 구글 드라이브
- selenium
- 리스트
- 유튜브
- List
- 그리디 알고리즘
- nocookie
- 링크
- 바로학교
- venv
- flask
- 단축어
- G-Suite
- 알고리즘
- 장고
- 코딩
- 충북
- 추천 영상
Archives
- Today
- Total
SSAMKO의 개발 이야기
[ansible] 가상환경 설정. source 를 찾을 수 없다는 에러. "stderr": "/bin/sh: 1: source: not found" 본문
DevOps
[ansible] 가상환경 설정. source 를 찾을 수 없다는 에러. "stderr": "/bin/sh: 1: source: not found"
SSAMKO 2021. 12. 1. 14:36반응형
Ansible
ansible로 가상환경을 설정해 그 안에서 작업하려고 source
커맨드를 사용하면 아래와 같은 에러를 마주치게 된다.
fatal: [default]: FAILED! => {"changed": true, "cmd": "source /home/ubuntu/venv/bin/activate && pip install -r /home/ubuntu/requirements.txt", "delta": "0:00:00.003097", "end": "2021-12-01 05:22:18.087230", "msg": "non-zero return code", "rc": 127, "start": "2021-12-01 05:22:18.084133", "stderr": "/bin/sh: 1: source: not found", "stderr_lines": ["/bin/sh: 1: source: not found"], "stdout": "", "stdout_lines": []}
이는 ansible은 기본적으로 shell:
을 실행할 때, /bin/bash
대신에 /bin/sh
을 사용하기 때문에 그렇다.
따라서 우리가 /bin/bash를 사용하도록 직접 지정해주면 해결된다. executable을 이용해 지정해 줄 수 있다.
- name: Virtual Env
shell: source home/ubuntu/venv/bin/activate
args:
executable: /bin/bash
| https://docs.ansible.com/ansible/2.5/modules/shell_module.html
반응형
'DevOps' 카테고리의 다른 글
[mac os]vagrant up시 `VBoxManage`Error 해결방법 (0) | 2021.10.10 |
---|
Comments