-
도커 도입의 필요성문제해결 2021. 8. 3. 19:12
타겟 CPU의 종류가 계속해서 늘어나고 있다. mips(openwrt용 공유기), arm(라즈베리파이), ESP32 같은 임베디드와 윈도우 프로그램까지... 처음 접하거나 익숙하지 않은 환경에서는 헤딩을 할 수밖에 없다.
그러나, 반복해서 발생하면 문제가 있다. 헤딩을 해서 경험을 쌓고 기록을 남겨서 다음 개발에 영양분으로 써야하는데 그렇지 못하고 있다. 더구나, 나 뿐만 아니라 같이 개발하는 다른 프로그래머도 똑같은 개발 환경을 꾸미다가 헤딩을 하는 경우가 생겼다. 해결이 어려운 것은 아니지만, 그 시간 동안 다른 일을 했다면 더 나았을 것이다.
이러한 문제를 해결하기 위해서 VMWare에 개발 환경을 꾸밀 수 있을 것이다. 문제는 여러 개의 VMWare를 가지는 것은 개발 컴퓨터의 리소스를 너무 많이 차지한다는 것이다. 리소스를 적게 차지하면서도 개발 환경을 공유할 수 있는 시스템을 찾아보았다.
목록에 오른 것은 buildroot, Yocto, Docker이다. 빌드루트는 프로젝트에 한 번 사용해본 적이 있었고, Yocto는 없었다. Docker는 개인적으로 몇 번 써본 경험이 있었다. 조금 효율적으로 개발 및 배포를 해보고 싶었다. 효율적이란, 도입하면 여러 분야에서 다시 쓸 수 있는 것을 의미한다. 그래서 도커를 선택했다. 논의에 도커를 올렸고, 도커에서 최소한의 개발 환경, 툴체인을 갖추어서 개발 환경을 공유하는게 어떨지 이야기 했다.
오늘 실험삼아 라즈베리파이 개발환경을 세팅했고 잘 작동했다. 추가적으로 몇가지 개발 환경을 세팅해서 테스트해서 좋은 결과를 얻는다면, 빠르게 도커로 넘어가지 않을까 싶다. 도커로 옮기기 애매하거나 처음 하는 것은 빌드루트를 이용하고, 안정화되면 도커로 넘기고... 이런식이 좋지 않을까 싶다.
'문제해결' 카테고리의 다른 글
mipsel32 개발 환경 구축 (0) 2021.12.09 VMWare기반 개발 환경을 호스트 OS로 옮겼다. (0) 2021.10.21 ESP32 write cycles의 중요성 (0) 2021.10.06 도커를 도입했다. (0) 2021.08.15 중첩된 NAT뒤의 OpenWRT 웹 서버에 터널링하기 (0) 2021.05.13