-
Docker Desktop 유료화 정책 변경으로 대안 찾아보기개발하면서/타인글보면서 2022. 2. 6. 20:23반응형
작년 8월에 Docker Desktop 구독 모델이 변경이 된다는 글이 올라왔다.
https://www.docker.com/blog/updating-product-subscriptions/기존 Docker Free는 이름만 Docker Personal로 되고 무료로 사용할 수 있는데
다만 아래 조건에 해당될 때만 Docker Personal을 사용할 수 있다.
. 250명 이하 이고 $10M 이하 연매출인 기업
. 개인적으로 사용(학습, 비상업용의 오픈소스)
즉 어느 정도 성장한 기업은 Docker Desktop 유료 구독하라는 얘기이다.
유료 구독에서는 보안과 권한 제어 그리고 Docker hub의 풍부한 CI/CD 기능을 사용할 수 있다.
오픈소스가 개발 생태계를 풍요롭게 만들고 개발 환경에도 도움 주면서 수익화를 만들어가는 건 긍정적으로 생각한다.
별개로 유료화에서 제공하는 기능이 나에게 필요한가... 생각했는데 딱히 필요가 없었다.가끔 docker build와 pull/push만 하는 용도여서 다른 방법이 있을까 싶어 찾아보았다.
VM(virtualbox) + docker-machine을 이용하여 로컬에 세팅하는 방법과 Rancher Desktop에 대한 내 생각을 얘기하고자 한다.※ 2022년 1월 27일에 Docker Desktop 유료 정책 변경됨을 알리는 메일이 왔다.
VM + docker-machine으로 세팅하기(mac 기준)
- Docker Desktop을 삭제한다.
- virtualbox를 설치한다.
https://www.virtualbox.org/wiki/Downloads 사이트에서 다운로드하고 설치한다.
설치 후 network 설정이 안 된다고 하면 환경설정 -> 보안 및 개인정보 보호 -> 일반에 가서 Oracle 권한을 허용한다.
https://carleton.ca/scs/2019/virtualbox-crashing-on-mac-after-update/#allow-identified-apps - docker-machine과 docker를 설치한다.
$> brew install docker-machine
$> brew install docker - docker-machine을 이용하여 docker-engine이 설치된 vm을 띄운다.
$> docker-machine create --driver "virtualbox" --virtualbox-disk-size "20000" --virtualbox-memory "4096" --virtualbox-cpu-count "2" default (파란색은 생략 가능)
$> docker-machine ls
설치는 한 번만 하면 되고(docker-machine create...) 이후부터는 본인 사용 여부에 따라 start, stop 해주면 된다.
시작
$> docker-machine start default && eval "$(docker-machine env default)"
종료
$> docker-machine stop default
새로운 터미널을 열 때 docker-machine 환경 변수를 등록시키기 위해선. bashrc나. zshrc에 아래 한 줄 추가해준다.
eval "$(docker-machine env default)"
Rancher Desktop에 대한 내 생각
최근에 알게 됐는데 Rancher Desktop이 있다.
Kubernetes와 Container 관리 기능을 제공하고 Docker Desktop과 UI도 거의 비슷하다.
그런데 생각해보면 규모가 있는 기업이 아니라면 Docker Personal을 사용하면 되고
Rancher Desktop도 수익화가 필요한 시점이 되면 비슷하게 유료 모델이 나오지 않을까 예상할 수 있다.
그럼에도 VM + docker-machine으로 하는 게 불편하고 그렇다고 Docker Desktop 유료는 잠시 미루고 싶다면
Rancher Desktop도 괜찮은 방법으로 보인다.
2022.08.10 업데이트
로컬에서 docker로 Jenkins를 띄워서 테스트 할게 있었다.
Jenkins pipeline에서 docker build 할게 있었는데 실패....찾아보니 Docker로 띄운 Jenkins의 /var/run/docker.sock와 호스트의 /var/run/docker.sock를
마운트 해야 하는데 VirtualBox에 띄웠으니... 내가 아는 socket은 tcp://xxx.xxx.xx.xxx:xxxx 다.VirtualBox로 띄운 머신의 /var/run/docker.sock를 호스트로 마운트 방법을 찾아보았는데 없어서 대 실망!!!
docker-machine [start | stop] 하는것도 짜증난 상태였는데 docker-machine 마지막 커밋이
2019년인걸 보고 바로 삭제했다. https://github.com/docker/machine
왜 이제야 봤지;;;
Docker Desktop로 테스트 했더니 잘된다. '(부분)유료는 나쁘니까 무료 써야지' 라는 단순한 생각때문에
뭐가 중요한지 잘못 판단했다.유료화 정책에 걸리지 않는다면 Docker Desktop 쓰세요~
인원이 많아졌다는건 사업이 성장 한다는 증거 중 하나이니 더 성장시킨다는 마음으로 결제!!반응형