본문 바로가기

도커

도커로 웹서비스 띄우고 깃허브 Actions로 이미지 관리하기

코드를 깃허브 actions를 이용하여 관리를 할 수 있다.

 

 

 

행맨 게임을 서버에 띄워보자

 

 

 

 

pip install -r requirements.txt --break-system-packages

4000번 포트를 이용해서 서버에 띄워보자

 

우리가 도커에서 바로 4000번 포트로 띄워도 localhost에서 볼 수 없다.

 

이를 하려면 4000번 포트를 밖으로 내보내야한다. 

 

 

expose 4000은 의미는 없다. 그냥 4000번 포트를 이용할 것임을 알려준다 

 

위 같이 dockerfile을 만들 수 있다.

docker build --platform=linux/amd64 -t kim400/hangman .

 

build 명령을 통해 이미지로 만든다. 

 

docker inspect kim400/hangman

만든 이미지로 컨테이너를 만들어서 실행해보자

포트매핑이 안 되어 있어서 연결할 수 없다.

포트매핑을 아래처럼 하자

서비스가 잘 작동한다. 

 

push를 이용해서 허브에 올릴 수 있다. 

깃허브 actions를 들어오자 

 

이렇게 test file을 만들고 커밋하면 테스트가 진행된다. 

 

위에서는 파이썬 파일에 대한 테스트를 진행했다.

 

이번에는 도커 파일에 대한 테스트를 진행해보자

이때 도커 유저, 비밀번호는 깃허브 secrets and variables에서 넣을 수 있다. 

 

내가 깃허브에서 커밋을 해도 자동으로 도커 허브에 있는 이미지가 즉시 업데이트 된 것을 알 수 있다. 

 

이렇게 하면 도커 이미지를 굳이 다시 만들어서 허브에 올릴 필요가 없다.