회사에서 국가 사업을 주로 하면서
서버에 도커를 설치해서 도커 컨테이너를 올리는 형식으로
배포하기로 결정이 났다.
우리팀에 다른 사원이 도커 배포 담당을 하면서
2월 부터 출장을 다녀왔다..
그런데 그 직원이 병원에 입원을 하게되서
그나마 실무자가 나여서 도커 배포를 함께 하기로 되었다.
그래서 나는 출장중 퇴근하고 모텔방 구석에서
도커가 무엇인지 유튜브로 찾아가며
도커가 무엇인지 내가 사용하는 맥으로 컨테이너 만들어서
적용이 잘 되도록 여러가지 찾아보고
주변 동료들이 많은 도움을 줬다.
도커라는건 용어는 종종 들어봤고
도커 하면 고래 이미지가 떠올랐다.
찾아보니 도커 고래가 고래를 상징하는게 아니라 컨테이너를 운반하는
범선 ( 배 ) 를 의미하는것이였다.
그럼 도커란 무엇인가 .
컨테이너 기반의 오픈소스 가상화 플랫폼 이다.
그게 무슨말이냐 ..
나의 회사 업무 예시를 들면
이번에 시작한 프로젝트가 A라면
한 사업체에 동시에 운영되는 A , B, C 프로젝트가 있다. ( 각 다른 회사에서 만들어옴 )
그런데 각자 다른 회사들끼리 버전 공유도 안될거고
서로 환경설정도 다를텐데
하나의 서버에 각자 사용하는 환경설정만 깔아서
소스만 서버에 올리면 과연 잘 작동이 될까 ..?
당연히 오류가 발생할것이다.
그래서 서버를 배포할때는 도커 컨테이너를 만들어서
컨테이너에 소스, 환경설정, 사용되는 툴 등 하나의 박스에 담아서
서버에 그 박스를 동작을 하면서 우리가 만든 소스가 운영이 되는것이다!
도커 컨테이너를 만들기 위해서
필요한것은
먼저 도커파일을 만들어야한다.
도커파일을 예시로 보여주고싶은데 회사 관련 도커파일이라서
올리긴 어렵지만
구글에 도커파일 예시를 검색하면 많이 나올것이다.
위에 사진처럼 사용하는 소스 폴더랑 Dockerfile 을 같은 위치로 두고
터미널을 열어서
도커 이미지를 만든다!
docker buildx build --platform linux/amd64 -t 파일명:1.0.0 . --output type=docker
입력을 하고
docker images 를 입력하면
이미지 목록에 방금 입력한 파일명 으로된 파일이 존재할것이다.
그 다음
이미지가 만들었으면 나는 서버로 옮기기전에 tar 파일로 만들고 서버에 올렸다.
docker save -o 파일명.tar 파일명:1.0.0
이렇게 명령어를 입력하면
파일명.tar 파일이 생성이 된다.
나는 그 tar 파일을 usb에 담아서 서버에 연결하여
파일지라로 옮기고
퓨티로 접속해서
tar 파일을 load 하고 run 하였다.
docker load -i 파일명.tar
docker run -d --network host --name 파일명 파일명:1.0.0