[docker desktop] 도커 DevEnv 구성하기

Seunghyun Moon·2024년 1월 2일
0

docker

목록 보기
2/2

오늘의 이슈

최근 새로운 프로젝트를 시작해야해서 또 개발환경 세팅 언제 하고 앉아있나.. 하고 있었는데, 마침 유튜브 알고리즘에 재밌는게 떴다.
도커 저는 이렇게도 사용해봤습니다.
컨테이너를 활용해서 독립적인 개발환경을 구성한다. 당연한데 생각 못 해본 방법이다. 시작해보자.

도커 데스크탑에서도 베타 버전으로 지원하는 기능이다. 도큐먼테이션. 생성, 사용, 배포 방법까지 나와있으나, 현재 changing 중이라고 하니 참고하자. GITHUB에 샘플 개발 환경도 이미 만들어져있다. 클릭 한번이면 바로 사용 가능해서 편리하다.


이 글에서는
1. 개발환경 이미지 빌드
2. VScode와 연결
3. Docker Hub에 등록해 팀과 공유
4. GITHUB 와 연동
순서로 진행합니다.

1. 개발환경 이미지 빌드

  • Python 기반의 FastAPI 기반 어플리케이션을 만듭니다. AWS, GCP의 API 통신을 하기 때문에 관련 라이브러리도 같이 설치합니다.

Dockerfile

FROM python:3.11.7

WORKDIR /project

COPY . /project

RUN pip install --no-cache-dir --upgrade -r /project/requirements.txt

CMD ["/bin/bash"]

requirements.txt

fastapi
uvicorn
sqlalchemy
boto3
jinja2

docker build

$ docker build -t hivelab-devenv:1.0.0 .

$ docker build -t codeshmoon348/fastapi-dev-environment:0.1.0 .

2. VScode와 연결

vscode 상에서 docker, remote explorer extention 을 설치합니다.

터미널에서 docker run command를 통해 바인드 마운트를 한 컨테이너를 실행합니다.
실행된 컨테이너 환경에 우리가 원하는 개발환경이 구성된 것을 볼 수 있습니다. 이제 여기에서 virtualenv, git pull 등을 통해 개발을 시작합니다.

이후 vscode > remote explorer or docker 를 통해 vs code 창을 연결합니다.

3. Docker Hub에 등록해 팀과 공유

docker hub에 푸시

$ docker push {namespace}/{repository}:{tagname}

$ docker push codeshmoon348/fastapi-dev-environment:0.1.0

4. GITHUB 와 연동

도커허브의 Pro, Team and Business 구독을 하면 github repository 와 연동해 이미지 빌드 & 푸시의 과정을 자동화 할 수 있습니다.

추후 CI 도구를 사용해 연동하는 과정을 공유하겠습니다.


profile
I live fullest

0개의 댓글