본문 바로가기
일기

Docker 도입을 시작했다

by 김개발자 2022. 4. 30.

아점

 늘 같은 시간대에 취침하고 일어나다보니 요즘엔 알람 없이도 일어난다. 신기한 점은 알람 울리기 5분전에 눈이 떠진다는 점이다. 알람 없이 일어나면 좋은점이 있다. 누가 깨워서 일어나는 것이 아니라 스스로 잠에서 깨어난 것이기 때문에 덜 피곤하다. 

 오늘은 어제 이야기 한대로 Docker를 공부하려 한다. 일주일의 시간을 투자해서 도커를 마스터하려 한다. 여기서 말하는 마스터의 의미는 내가 만드려는 서비스가 이용할 도커 기술의 범위에 한해서 마스터한다는 의미다. Notion에 정리한 공부 순서를 차곡차곡 마스터 해나가서 서비스에 접목시킬 수 있게 하자. 게다가 다가오는 주에는 연휴가 껴있기 때문에 미리 끝내놓는 것이 좋다.

 

Docker 공부를 시작했다

 Docker를 서비스에 도입하는 것을 어제 결정했다. 오늘부터 Docker 사용법을 연습하기 시작했다. 우선 내사 사용하는 가장 큰 프레임워크인 Flask와 FastAPI를 둘다 도커로 띄우고 서로 통신하게하는 것이 프레젠테이션 레이어를 만들기 전까지 숙지할 사항들이다. 그러기 위해서 Docker로 환경을 관리하는 방법 (Dev 버전, Prod 버전), 환경변수 설정하는 방법, 코드 수정을 바로 컨테이너에 적용 시키는 방법 (volume) 등등 서비스를 운영하고 유지하는데 필요한 부분들을 미리 연습해보고 시행착오를 겪어야 한다. 오늘은 Flask를 Docker로 띄우기 목표였다. 결론적으로는 컨테이너를 띄우고 접속하는데 성공했다. 이 과정에서 Docker의 Error 메세지가 꽤나 상세하는 것을 느꼈다. 처음 Docker-compose로 컨테이너를 띄우면서 Error를 봤을 때는 막막했다. 그런데 Error 메세지를 따라가다 보니 어느 부분에서 Error가 났는지 파악이 쉬웠다. docker-compose는 Dockerfile을 실행시키기 위한 명령어를 문서화 및 코드화 한 것이다. 따라서 image를 만들고 container를 띄우는데 Dockerfile과 docker-compose에 명시된 순서 그대로 진행한다. 그래서 Error가 발생하면 Dockerfile의 어느 시점에서 Error가 발생하는지 알 수 있고 Error의 내용 또한 기존에 어플리케이션을 구동시킬때 봐왔던 Error의 형태를 띄고 있었기 때문에 대응하는데 수월했다. 과장해서 설명하자면 Docker는 자신이 가지고 있는 기능은 추상화로 숨기고 사용자에게 보여주는 것들은 사용자가 이미 봐왔던 익숙한 것들을 보여주고 그것에 대응하게 한다. 그래서 수많은 삽질을 예상했지만 생각과는 달리 빠르게 컨테이너를 띄울 수 있었다.

 

- 초고 : 4월 30일 22:22

 

 

'일기' 카테고리의 다른 글

개발 시작  (0) 2022.05.02
일기를 쓰는 이유  (0) 2022.05.01
오퍼를 거절했다.  (0) 2022.04.29
오퍼를 고민중이다  (0) 2022.04.28
오퍼를 받았다  (0) 2022.04.27

댓글