Docker
내가 느낀 전체적인 도커의 메커니즘 : 어떠어떠한 것을 빌드해서 이미지를 만들고 -> 이미지를 도커로 띄운 뒤 -> 이미지를 받아서 로컬에서 개발작업을 진행
!!많은 시행착오를 거쳐 도커의 메커니즘에 대해 이해가 조금 되었다.
- Dockerfile을 만든다.
- 해당 디렉토리 위치에서 docker build를 한다.
- docker build을 하면 이미지가 생성된다.
- 이미지가 생성됐으면, 해당 이미지로 docker run을 한다.
- docker run을 하면 컨테이너가 만들어지고 해당 이미지를 컨테이너 안으로 넣는다?띄운다?
- 그럼 환경셋팅이 된다…?
틀린 부분도 있겠지만 아주 조오금 조오오오오금 메커니즘이 이해가 됐다.
앗 참고로 음… 저런 run이니 이미지 파일들이니 어떤 컨테이너가 실행중인지를 GUI로 확인할 수 있는 프로그램이 Docker Desktop 같다 ㅎㅎ..
추가적으로 환경세팅을 완료한 것 같다. 음… 위의 6번까지 진행한 후에
-
컨테이너를 만들면 어떠한 가상환경이 만들어지는 것 같다.
-
그럼 그 컨테이너에가 파이썬 환경으로 이루어져있고 추가로 다양한 패키지들이 들어있다.
-
그럼 그 환경을 내가 사용하고 있는 Pycharm과 연동을 하는 거다.
- 어떻게 하냐면 파이참 프로젝트의 인터프리터를 해당 컨테이너에 있는 파이썬path로 설정해주는거다. *https://i-am-eden.tistory.com/13
-
그리고 코딩하면 된다 ㅎㅎ ***
-
도커엔진 - 도커를 실행하면 Dockered라는 데몬 프로그램이 서버로 실행.
**여기서 잠깐! 데몬 프로그램이 뭘까?
https://blogger.pe.kr/770 (포그라운드, 백그라운드, 데몬 프로세스)
https://haruhiism.tistory.com/9 -
도커실행 : 도커 이미지를 받아서 컨테이너로 실행
** -it 라는 명령어는 -i와 -t 옵션이 합쳐진 옵션, -i는 호스트와 컨테이너 상호 입출력을 맞추고, -t는 TTY를 활성화해서 컨테이너에 터미널로 입력이 가능하게 한다.
** TTY가 뭐지?!
https://cosmosproject2015.tistory.com/143 (TTY, PTS, PTY) -
도커 volume : 데이터를 컨테이너에 저장하지 않고 호스트에 저장하는 방식
https://www.daleseo.com/docker-volumes-bind-mounts/ - 도커빌드 : Dockerfile로 사용자 정의 이미지를 만듬
*공부하기 : 도커 아키텍쳐, 컨테이너-OS 간의 통신 구조
**
Docker의 개념 및 핵심 설명 :
https://khj93.tistory.com/entry/Docker-Docker-%EA%B0%9C%EB%85%90
Docker 예제 실습중 갱장히 이상한 오류가 발생했다.
failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount174403522/Dockerfile: no such file or directory
구글링을 계속 해봤지만 dockerfile -> Dockerfile 로 이름을 바꾸라는 답변밖에 없었다.
하지만, 오류가 고쳐지지 않았고 터미널을 Open한 디렉토리 경로를 상위 폴더 위치로 open을 해서 났던 오류였다 ㅎㅎ
댓글남기기