티스토리 뷰

hacking

mac osx + docker + vmware + coreos

Ho Eyo He Hum! iolo 2014.07.18 17:38

서버 개발자로 돌아온 기념으로...

  1. 맥에서 docker를 쓰고 싶다.
  2. 공식 사이트의 문서를 보니… boot2docker를 쓰라고 한다.
  3. 나에겐 거금(?) 주고 산 vmware fusion이 있지만, boot2docker는 virtualbox만 지원한다.
  4. boot2docker를 vmware와 함께 쓰는 법을 찾으니… dvm을 비롯한 다양한 방법이 있군 @..@
  5. brew cask 깔고 vagrant 깔고… 열심히 따라했는데… invalid license… (두둥)
  6. 알고보니, vagrant의 vmware 프로바이더는 유료… $79. (두두둥))
  7. vmware fusion 업글 비용 $39가 아까워서 5.0 쓰고 있는데… 그거랑 별도로 $79… 난 vagrant 필요없는뎅 Orz 난 그냥 docker가 필요한건뎅 Orz
  8. … boot2docker 소스 까기 시작. 어랏 이거 뭐야지~ boot2docker.iso!
  9. vmware fusion에 boot2docker.iso로 부팅했더니… 오~~ 좋아 좋아~
  10. 좀 더 하다보니… 디스크 부족. 아~ isolinux구나! LOL
    $ dd if=boot2docker.iso of=/dev/sda1
    ...
    
  11. 오오~~ 좋아 좋아?? 그런데… boot2docker… 이 녀석 정체가 뭐지? 없는게 이렇게 많아??
  12. TinyCoreLinux?? 심지어 홈페이지도 없어… Orz
  13. 잘됐다~ 이 참에 CoreOS 한번 써봐야겠다~ 이럴때 쓰라고 나온 배포판이잖아~~
  14. 오오오~ 좋아 좋아~ vmware 이미지도 있어! LOL
    $ curl -LO http://alpha.release.core-os.net/amd64-usr/current/coreos_production_vmware_insecure.zip
    $ unzip coreos_production_vmware_insecure.zip -d coreos_production_vmware_insecure
    $ cd coreos_production_vmware_insecure
    $ open coreos_production_vmware_insecure.vmx
    
  15. 오오오~ 좋아 좋아~
    $ ssh -i insecure_ssh_key core@192.168.207.131
    $ docker ps
    $ docker run ubuntu echo hello
    
  16. 이제 맥에서 해보자~
    $ export DOCKER_HOST=tcp://192.168.207.131:2375
    $ docket ps
    GRRRR...
    
  17. 뭔개소리여?! … 아… TCP 데몬이 안떠있나 보네~
  18. CoreOS는 systemd 라는 녀석을 쓴다니… 소년은 쉽게 늙지만… 배움은 끝이 없구나… 시키는 대로 하자…
    $ cd /etc/systemd/system
    $ cat > docker-tcp.socket
    [Unit]
    Description=Docker Socket for the API
    [Socket]
    ListenStream=2375
    BindIPv6Only=both
    Service=docker.service
    [Install]
    WantedBy=sockets.target
    ^D
    $ systemctl enable docker-tcp.socket
    $ systemctl stop docker
    $ systemctl start docker-tcp.socket
    $ systemctl start docker
    
  19. 다시 맥에서 해보자~
    $ export DOCKER_HOST=tcp://192.168.207.131:2375
    $ docket ps
    
    OK!!!!
  20. 일단 node.js 컨테이너 하나 골라서… 고고씽~
    $ docker run node node -e 'console.log("hello")'
    ...
    hello
    
  21. 결론: 리눅스 박스를 하나 만들던가… virtualbox 쓰자~
  22. THE END!!!


댓글
댓글쓰기 폼