인프런 커뮤니티 질문&답변
Docker Hub에 Push 무한 로딩
작성
·
90
0
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
안녕하세요. Ansible을 이용한 Docker 이미지 관리 강의에서 create-cicd-devops-image.yml에 작성한 스크립트로 playbook 실행 시 Docker Hub에 Push하는 과정에서 무한로딩이 걸리는데 원인을 찾을 수 없어서 질문드립니다..
Docker Hub 로그인도 성공하였고 스크립트에 저의 계정 이름/cicd-project-ansible로도 잘 작성하였고 수동으로 push 명령어를 내려주면 Docker Hub에 이미지가 잘 띄어지긴 합니다.
수동으로 명령어를 내려주면 잘 작동하지만 왜 playbook으로는 push과정에서 무한로딩이 걸리는지 모르겠습니다
[root@0c03fe2051d5 ~]# ansible-playbook -i hosts create-cicd-devops-image.yml --limit 172.17.0.4
PLAY [all] *************************************************************************************************************
TASK [Gathering Facts] *************************************************************************************************
ok: [172.17.0.4]
TASK [Login to Docker Hub] *********************************************************************************************
changed: [172.17.0.4]
TASK [create a docker image with deployed waf file] ********************************************************************
changed: [172.17.0.4]
TASK [push the image on Docker Hub] ************************************************************************************
.... 무한로딩
답변 2
0
안녕하세요, 이도원입니다.
답변이 늦어 죄송합니다.
ansible-server에서 직접 docker login 후 docker push 작업에서 무한 로딩이 걸린다는 말씀이신가요? 우선 확인해 볼 부분은 172.17.0.4 서버에서 docker 이미지가 정상적으로 생성되었는지 부분과 docker hub 사이트로 등록하는데 필요한 인증이 되었는지 입니다.
[172.17.0.4 서버에서 확인]
우선 수작업으로 docker image 빌드 후, docker push 까지 되는지 확인 (이 부분은 처리하셨다고 한 것 같네요)
위 작업에서 docker login 작업이 필요할 수 있으니, 로그인은 수동으로 먼저 진행해 준 상태에서 실행하시기 바랍니다.
정상적으로 docker push 작업이 되었다면, 해당 이미지를 docker hub하고 172.17.0.4 에서도 삭제하시기 바랍니다.
[ansible-server에서 확인]
ansible-playbook으로 172.17.0.4 서버로까지 docker push 없이 이미지 생성하는 부분이 실행되는 스크립트 테스트 (docker push에 관련된 부분은 빼고 실행)
ssh를 이행서 ansible-server에서 172.17.0.4 서버로 docker push 명령어가 실행되면서, 시간이 다소 소요되는 경우가 있는지 확인이 필요할 것 같습니다. 생성되는 docker image의 크기를 줄여서 ansible 테스트 해 보시기 바랍니다.
172.17.0.4 서버로 docker push 외에 다른 명령어들은 잘 실행되는지 확인 (예를 들어, docker push와 docker rmi 명령어를 빼고, 이미지 생성까지만 실행했을 때 정상적으로 이미지 생성이 되는지 등)
위 확인 작업으로도 동일한 문제가 발생한다면, 작업하신 ansible-server의 환경(이미지 및 실행 커먼드, 현재 작업중인 script, 작업 폴더에 존재하는 파일 등의 정보)와 172.17.0.4 서버의 환경 정보를 공유해 주시면, 저희도 최대한 유사한 환경에서 다시한번 테스트 해 보도록 하겠습니다.
참고로, 말씀하신 문제를 확인해 보기 위해 제가 공유해 드린, edowon0623/ansible-server이미지과 edowon0623/docker-server 이미지를 이용하여 테스트 진행했습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
springYam님께서 Ansible을 사용해 Docker 이미지를 Docker Hub로 푸시하는 과정에서 무한 로딩 이슈가 발생한 것에 대한 문제를 문의하셨네요. 이 문제는 종종 네트워크 연결 이슈, Docker Hub 서버 상태, 또는 Ansible 스크립트 구성 문제로 인해 발생할 수 있습니다.
무한 로딩 문제 해결하기 위한 권장 사항:
네트워크 연결 확인: Docker Hub로의 네트워크 연결 상태를 확인해 보세요. 불안정한 네트워크 환경이 무한 로딩 상태를 유발할 수 있습니다.
Docker Hub 상태 확인: Docker Hub의 상태가 정상인지 Docker Status 페이지에서 확인해 보세요. 서버 문제로 인해 발생할 수 있습니다.
Ansible Task Timeout 설정: Ansible에서 task의 timeout 설정을 늘려보세요.
async와poll옵션을 사용하면 작업이 백그라운드에서 실행되고 주기적으로 상태를 보고받을 수 있습니다.- 예시:
”`yaml
- name: push the image on Docker Hub
docker_image:
name: yourusername/yourimage
tag: latest
push: yes
async: 600
poll: 0
- name: push the image on Docker Hub
- 예시:
크론 작업 및 수동 스크립트 비교: 수동 실행 시 문제가 없다면, 수동 스크립트와 Ansible의 차이점을 비교해 보세요. 명령어의 차이나 환경 변수 등이 원인이 될 수 있습니다.
로그 확인: Ansible의 verbose 모드(
-vvv)로 실행하면 더 많은 디버그 정보를 확인할 수 있습니다.ansible-playbook -i hosts create-cicd-devops-image.yml --limit 172.17.0.4 -vvv
관련된 기존 질문:
- DooD 방식으로 실행시, 이미지 아이디: Ansible Playbook을 사용하면서 발생한 Docker 이미지 관련 이슈와 유사하기 때문에 확인해 보시면 도움이 됩니다.
위의 해결 방법들이 문제를 해결하지 못한다면, 무한 로딩이 발생한 시점부터의 로그를 추가로 살펴보시는 것도 좋습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





