작성
·
21
·
수정됨
0
안녕하세요
강의 실습중에 docker cp ./config/postgresql.conf postgres:/etc/postgresql/custom.conf
이 명령어를 실습하는 과정에서 오류가 발생했는데요
깃배시에서 위 명령어를 실행하면 자꾸
Successfully copied 3.07kB to postgres;C:\Program Files\Git\etc\postgresql\custom.conf
Error response from daemon: No such container: postgres;C
이런 에러가 발생합니다
.
이것저것 해보다가 깃배시 대신에 cmder로 명령어를 실행하니까 무사히 명령어가 실행되서 실습을 진행할 수 있었는데요
(바로 이어진 실습에서 docker cp ./init/init.sql postgres:docker-entrypoint-initdb.d 이 명령어는 깃배시로 잘 입력되었습니다)
제 깃배시 명령어 입력에서는 뭐가 문제였는지 알고싶습니다!
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
dodo님께서 겪으신 문제는 아마도 Windows 환경에서 Git Bash를 사용할 때의 경로 인식 문제와 관련이 있을 가능성이 높습니다. Git Bash는 때때로 윈도우 경로를 잘못 해석할 수 있습니다.
에러 메시지를 보면 postgres;C:\...
로 경로가 해석된 것을 볼 수 있습니다. 이는 Bash 쉘이 세미콜론(;)을 명령어 구분자로 인식하여 윈도우 드라이브 레터(C:)와 잘못된 방식으로 경로를 해석한 것으로 보입니다.
해결 방법 중 하나는, 명령어를 실행하기 전에 Docker 컨테이너의 이름을 명확히 지정하는 것입니다. Git Bash에서는 다음과 같이 컨테이너 이름을 작은따옴표나 큰따옴표로 감싸는 것을 시도할 수 있습니다:
docker cp ./config/postgresql.conf "postgres:/etc/postgresql/custom.conf"
이는 오타를 방지하고 경로가 제대로 해석되도록 도와줍니다. 또한, 다른 터미널(Cmder)에서 명령어가 잘 동작하셨다면, 그쪽에서 계속 명령어를 실행하셔도 좋습니다.
도움이 되셨으면 좋겠습니다! 추가적인 질문이 있다면 언제든지 문의해 주세요.
오오 감사합니다!