Machine: ๋ฐ๋ชฌ์˜ ์˜ค๋ฅ˜ ์‘๋‹ต : ํด๋ผ์ด์–ธํŠธ๊ฐ€ Docker 1.9 RC3์„ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ฒ„๋ณด๋‹ค ์ตœ์‹  ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2015๋…„ 11์›” 03์ผ  ยท  72์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: docker/machine

๋ฒ„์ „ ์ •๋ณด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

> docker-machine -v
docker-machine version 0.5.0-rc3 (a1e610b)
> docker -v
Docker version 1.9.0-rc3, build 2100b94

Docker ๋จธ์‹  ์ƒ์„ฑ :

> docker-machine create -d=virtualbox lab2
Running pre-create checks...
Creating machine...
Waiting for machine to be running, this may take a few minutes...
Machine is running, waiting for SSH to be available...
Detecting operating system of created instance...
Provisioning created instance...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
To see how to connect Docker to this machine, run: docker-machine env lab2

๊ตฌ์„ฑ :

eval $(docker-machine env lab2)

docker ps ์—์„œ ๋‹ค์Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

> docker ps
Error response from daemon: client is newer than server (client API version: 1.21, server API version: 1.20)

์ตœ์‹  ๋ฒ„์ „์˜ Docker CLI ๋ฐ Docker Machine์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ๋กœ ์ƒ์„ฑ ๋œ ๋จธ์‹ ์ž…๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

docker-machine upgrade ์‹คํ–‰ ํ–ˆ์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  72 ๋Œ“๊ธ€

์˜ˆ, UX๋Š” ์ข‹์ง€ ์•Š์ง€๋งŒ RC Docker ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ฆด๋ฆฌ์Šค ํ›„๋ณด ISO๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์ง€์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค (์˜ˆ : --virtualbox-boot2docker-url https://github.com/tianon/boot2docker-legacy/releases/download/v1.9.0-rc4/boot2docker.iso

RC์— ๋Œ€ํ•œ์ด ํŠน๋ณ„ํ•œ ๋Œ€์šฐ๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ด๋กœ ์ธํ•ด ์ง๊ด€์ ์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Docker ํด๋ผ์ด์–ธํŠธ ๋ฐ”์ด๋„ˆ๋ฆฌ๋„ RC์ž…๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ?

RC๋Š” RC์—์„œ boot2docker.iso๋ฅผ ์ž๋™์œผ๋กœ ์„ ํƒํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. --virtualbox-boot2docker-url ๋Š” ๊ธฐ๋ณธ๊ฐ’์„ ์žฌ์ •์˜ํ•˜๋Š” ๋ฐ๋งŒ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ธฐ๋ณธ๊ฐ’์€ Docker ํด๋ผ์ด์–ธํŠธ ๋ฐ”์ด๋„ˆ๋ฆฌ์™€ ๋™์ผํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ํ—ˆ์šฉ์— ๋Œ€ํ•ด ๋” ์ž˜ ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๊นŒ upgrade / create ์šฐ๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ, ๊ธฐ๋ณธ์ ์œผ๋กœ ์ƒˆ์˜ RC๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ, boot2docker ํ˜„์žฌ์˜ RC ์šฐ๋ฆฌ๋Š” ์œ ์ง€ @tianon์˜ ํฌํฌ์—์„œ ๋ดค๋Š”๋ฐ ์šฐ๋ฆฌ๊ฐ€ ์ด๊ฒƒ์„ ์ง€์›ํ•œ๋‹ค๋ฉด ์šฐ๋ฆฌ์˜ ์Šต๊ด€๋„ ๋ฐ”๊พธ์‹ญ์‹œ์˜ค. ๋‚˜๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์ด ์ด์™€ ๊ด€๋ จํ•˜์—ฌ ์ •๋ง๋กœ ๋‹ค๋ฅธ ๊ธฐ๋Œ€๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋„ˆ๋ฌด ๋งˆ์ˆ ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์•ฝ๊ฐ„ ๊ฑฑ์ •ํ•ฉ๋‹ˆ๋‹ค.

boot2docker.iso ์„ Docker ํด๋ผ์ด์–ธํŠธ ๋ฐ”์ด๋„ˆ๋ฆฌ์™€ ์ผ์น˜์‹œํ‚ค๋Š” ๊ฒƒ์€ ํ•ฉ๋ฆฌ์ ์ด๊ณ  ์ง๊ด€์  ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์–ด์จŒ๋“  ๋ฌด์‹œํ•  ์ˆ˜์žˆ๋Š” ์˜ต์…˜์ด์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋งˆ๋ฒ•์€์—†๊ณ , ์ ์–ด๋„ ๋‚˜์—๊ฒŒ๋Š” ์ง๊ด€์ ์ž…๋‹ˆ๋‹ค!

Docker 1.9.0 ๋ฐ Machine 0.5.0์—์„œ ์ •ํ™•ํžˆ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

~ > docker ps
Error response from daemon: client is newer than server (client API version: 1.21, server API version: 1.20)
~ > docker -v
Docker version 1.9.0, build 76d6bc9
~ > docker-machine -v
docker-machine version 0.5.0 (04cfa58)

์ง€๊ธˆ ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ์—ด ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

docker-machine upgrade ์‹คํ–‰ ํ–ˆ์Šต๋‹ˆ๊นŒ?

์ด ๊ธฐ๊ณ„๋Š” ๋ฐฉ๊ธˆ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. docker-machine upgrade ์‹คํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๊นŒ?

@ arun-gupta ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์บ์‹œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ ๊ณต์‹ b2d ๋ฆด๋ฆฌ์Šค๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์ „์— ๋จธ์‹ ์„ ๋งŒ๋“  ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.

@nathanleclaire๊ฐ€ 30 ๋ถ„ ์ „์— ๋‹ค์‹œ ๊ธฐ๊ณ„๋ฅผ docker-compose up -d ์— docker-compose.yml ์„ฑ๊ณต์ ์œผ๋กœ ์ผํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ docker ps ๋‹ค์‹œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

> docker ps
Error response from daemon: client is newer than server (client API version: 1.21, server API version: 1.20)

๋จธ์‹ ์„ ๋ช…์‹œ ์ ์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.

b2d.iso ๋ฐ ํด๋ผ์ด์–ธํŠธ / ์„œ๋ฒ„ API ๋ฒ„์ „์˜ ๋งคํ•‘์ด ์žˆ์Šต๋‹ˆ๊นŒ?

docker-machine upgrade name ์ž‘๋™ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. "ISO ์บ์‹œ ๋ฌธ์ œ"๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ๋ช…๋ น์„ ์‹œ๋„ ํ–ˆ์Šต๋‹ˆ๊นŒ?

boot2docker.iso ํ•ญ์ƒ ํ•ด๋‹น Docker ๋ฆด๋ฆฌ์Šค API ๋ฒ„์ „์— ๋งคํ•‘๋ฉ๋‹ˆ๋‹ค. file $HOME/.docker/machine/cache/boot2docker.iso ๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ์—์„œ ์บ์‹œ ๋ฒ„์ „์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

docker-machine upgrade ์—์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค Arun. ์ด ๋ฐ˜๋ณต ์—…๊ทธ๋ ˆ์ด๋“œ ํ๋ฆ„๊ณผ ๊ด€๋ จ๋œ ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ž‘์—… ํ•  ์˜ˆ์ •์ด๋ฏ€๋กœ ์•ž์œผ๋กœ ์กฐ๊ธˆ ๋” ๋ช…ํ™• ํ•ด ์ง€๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

: +1 : docker-machine upgrade

๋„์ปค ๋จธ์‹  ์—…๊ทธ๋ ˆ์ด๋“œ์˜ ๊ฒฝ์šฐ +1-์—…๊ทธ๋ ˆ์ด๋“œ๋˜๋Š” ์œ ์ผํ•œ ๊ฒƒ์ด ๋„์ปค ๊ด€๋ จ์ด๋ผ๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.)

: +1 : docker-machine upgrade <machine name>

Docker Toolbox๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•œ ํ›„ ๊ธฐ๋ณธ ์ปดํ“จํ„ฐ๊ฐ€ ์ค‘์ง€๋˜์—ˆ์ง€๋งŒ ์—…๊ทธ๋ ˆ์ด๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ๊ธฐ๊ณ„๋Š” ์ค‘์ง€๋˜์ง€ ์•Š์•˜๊ณ  ์—…๊ทธ๋ ˆ์ด๋“œ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

docker-machine upgrade <machine-name> ๋‚˜๋„ ์ผํ•ด

์ €๋Š” Windows 10์„ ์‚ฌ์šฉ ์ค‘์ด๋ฉฐ ๋‘ ๋ฒˆ์งธ ์‹คํ–‰์—์„œ ์ด์ƒํ•˜๊ฒŒ ์‚ฌ๋ผ์ง„ ์œ ์‚ฌํ•œ ๋ฌธ์ œ๋ฅผ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๊ฐ€์ง„ ๊ฒƒ๊ณผ ๋‹จ๊ณ„์˜ ์ˆœ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. Docker Toolbox 1.8.3์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ๊ณ  ์ด์ƒํ•œ ๋ฌธ์ œ์— ์ง๋ฉดํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์‹  ๋ฆด๋ฆฌ์Šค 1.9.0c๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  2. ์•ˆ์ „ ๋‹จ๊ณ„๋กœ docker-machine rm default ์‹คํ–‰
  3. ๋„๊ตฌ ์ƒ์ž ๋ฒ„์ „ 1.9.0c ๋‹ค์šด๋กœ๋“œ ๋ฐ ์„ค์น˜
  4. Git์€ ๋‚ด๊ฐ€ ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ๋‹ค๋ฅธ ๋ชจ๋“  ๊ฒƒ์„ ์„ค์น˜ํ–ˆ์„ ๋•Œ ์„ ํƒํ•˜์ง€ ์•Š์€ ์œ ์ผํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  5. _Docker ๋น ๋ฅธ ์‹œ์ž‘ ํ„ฐ๋ฏธ๋„ _ ์‹œ์ž‘
  6. ๋ชจ๋“  ๊ฒŒ ๊ดœ์ฐฎ์•„ ๋ณด์˜€๋‹ค
Creating Machine default...
Running pre-create checks...
Creating machine...
Waiting for machine to be running, this may take a few minutes...
Machine is running, waiting for SSH to be available...
Detecting operating system of created instance...
Provisioning created instance...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
To see how to connect Docker to this machine, run: C:\Program Files\Docker Toolbox\docker-machine.exe env default
Setting environment variables for machine default...



                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/

docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com

7. ๋จธ์‹ ์ด ์ƒ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM
default   *        virtualbox   Running   tcp://192.168.99.100:2376

8. ์ง€๊ธˆ๊นŒ์ง€๋Š” ๊ดœ์ฐฎ์ง€ ๋งŒ

$ docker ps
Error response from daemon: client is newer than server (client API version: 1.21, server API version: 1.20)

9. ๋ฌด์—‡์ด ์žˆ์Šต๋‹ˆ๊นŒ?

$ docker-machine -v
C:\Program Files\Docker Toolbox\docker-machine.exe version 0.5.0 (04cfa58)
$ docker -v
Docker version 1.9.0, build 76d6bc9

10. ์œ„์—์„œ ์ œ์•ˆํ•œ๋Œ€๋กœ ๋จธ์‹  ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

$ docker-machine upgrade default
Stopping machine to do the upgrade...
C:\Program Files\Oracle\VirtualBox\VBoxManage.exe showvminfo default --machinereadable failed:
VBoxManage.exe: error: The object is not ready
VBoxManage.exe: error: Details: code E_ACCESSDENIED (0x80070005), component ConsoleWrap, interface IConsole, callee IUnknown
VBoxManage.exe: error: Context: "COMGETTER(SharedFolders)(ComSafeArrayAsOutParam(folders))" at line 2306 of file VBoxManageInfo.cpp
$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL   SWARM
default   -        virtualbox   Stopped
$ docker-machine upgrade default
Error: machine must be running to upgrade.
$ docker-machine start default
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM
default   *        virtualbox   Running   tcp://192.168.99.100:2376
$ docker-machine upgrade default
Stopping machine to do the upgrade...
Upgrading machine default...
Latest release for github.com/boot2docker/boot2docker is v1.9.0

Downloading https://github.com/boot2docker/boot2docker/releases/download/v1.9.0/boot2docker.iso to C:\Users\ssluser\.docker\machine\cache\boot2docker.iso...
Starting machine back up...

11. ๊ทธ ํ›„์—๋Š” ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ํšจ๊ณผ๊ฐ€์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@ arun-gupta @nathanleclaire docker-machine ์—…๊ทธ๋ ˆ์ด๋“œ [machine-name] ๋‚ด ๊ณ ์ • !!! ๊ณ ๋ง™์Šต๋‹ˆ๋‹ค. FWIW, ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ์—…๊ทธ๋ ˆ์ด๋“œ ๋™๊ธฐํ™”๋Š” ์‹ค์ œ๋กœ PITA์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ๋” ์ข‹๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐ ์†Œ๋น„๋˜๋Š” ๋ชจ๋“  ์‚ฌ์ดํด์€ ๋งŽ์€ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

์ด๊ฒƒ์€ RC3 ๋˜๋Š” ๋„์ปค ๋จธ์‹ ์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. docker ํด๋ผ์ด์–ธํŠธ๊ฐ€ 1.9.x์ด๊ณ  ์„œ๋ฒ„๊ฐ€ docker 1.8.x๋ฅผ ์‹คํ–‰์ค‘์ธ ๊ฒฝ์šฐ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๊ฐ€ ๊ด€์ฐฐ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์„œ๋ฒ„์™€ ๋ชจ๋“  ํด๋ผ์ด์–ธํŠธ์— ๋™์ผํ•œ Docker ์—”์ง„ ๋ฒ„์ „์„ ์„ค์น˜ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ์„ค์น˜ํ•  ์ˆ˜์—†๋Š” ๊ฒฝ์šฐ ๋ฐฐํฌ ๊ด€๋ฆฌ ์ธก๋ฉด์—์„œ ๋งค์šฐ ๋น„์‹ค์šฉ์ ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์ด ์ƒ๋‹นํžˆ ์‹ฌ๊ฐํ•œ ํŒŒ์†์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ๊ธฐ๋ณธ์ ์œผ๋กœ https://github.com/docker/machine/issues/1839 ์™€ ๋™์ผํ•œ ๋ฌธ์ œ

docker-machine upgrade <machine-name> ๋„ ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

docker-machine upgrade <machine-name> ๋Š” ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ด์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์„œ๋ฒ„๋ฅผ ๋„์ปค์˜ dev ๋นŒ๋“œ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด์•ผํ–ˆ๊ณ , ๋‹ค์‹œ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ•˜๊ณ  ๋‹ค์Œ์„ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

docker: Error response from daemon: client is newer than server (client API version: 1.22, server API version: 1.21).

์ˆ˜๋™ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œ ํ›„ docker-machine upgrade <machine-name> ์‹คํ–‰ํ–ˆ์ง€๋งŒ ์˜ค๋ฅ˜๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์ž˜๋ชป ... ๋‚ด ๊ฒฝ๋กœ์—์„œ ์ƒˆ๋กœ์šด ๋„์ปค ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‚ญ์ œํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค.

๋„์ปค ๋จธ์‹  ์—…๊ทธ๋ ˆ์ด๋“œ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ–ˆ์Šต๋‹ˆ๋‹ค.

1.10.0-rc1์— ๋Œ€ํ•ด ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ํ›„ ์‹คํ–‰๋˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

docker-machine create -d=virtualbox -virtualbox-boot2docker-url https://github.com/tianon/boot2docker-legacy/releases/download/v1.10.0-rc1/boot2docker.iso docker

v1.10.0-rc2 / de3bb7a (OS X 10.10.5)์— ๋Œ€ํ•ด ์‹คํ–‰ํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค.
docker-machine create -d=virtualbox -virtualbox-boot2docker-url https://github.com/tianon/boot2docker-legacy/releases/download/v1.10.0-rc2/boot2docker.iso docker

boot2docker ์€ (๋Š”) ์ง€์› ์ค‘๋‹จ์œผ๋กœ ์„ ์–ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฌธ์ œ์˜ ์˜๋„ ๋œ ํ•ด๊ฒฐ์ฑ…์ž…๋‹ˆ๊นŒ?

docker-machine์€ ์—ฌ์ „ํžˆ โ€‹โ€‹boot2docker ISO๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ VM์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.

์„œ๋ฒ„ (VM)์—์„œ ๋„์ปค ๋ฐ๋ชฌ์˜ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ํ™•์ธํ•˜๋Š” ์‚ฌ๋žŒ์ด ๋งŽ์€ ๊ฒƒ ๊ฐ™์ง€๋งŒ ๋„์ปค ๋ฐ๋ชฌ์„ ์ฆ‰์‹œ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜์—†๋Š” ๊ฒฝ์šฐ๋Š” ํ•ด๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ์ฐพ์€ ์œ ์ผํ•œ ๋น ๋ฅด๊ณ  ํ•ฉ๋ฆฌ์ ์ธ ์†”๋ฃจ์…˜์€ ๋ฆด๋ฆฌ์Šค์—์„œ ์ ์ ˆํ•œ ํด๋ผ์ด์–ธํŠธ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์„œ๋ฒ„ ๋ฒ„์ „์— ๋”ฐ๋ผ ์˜ฌ๋ฐ”๋ฅธ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

boot2docker๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์œผ๋กœ ์„ ์–ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฌธ์ œ์˜ ์˜๋„ ๋œ ํ•ด๊ฒฐ์ฑ…์ž…๋‹ˆ๊นŒ?

@superdump๊ฐ€ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด boot2docker CLI (๋ช…๋ น ์ค„์—์„œ boot2docker ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ˜ธ์ถœ ๋จ)๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์ง€๋งŒ OS๋Š” ์—ฌ์ „ํžˆ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ช…ํ™•ํžˆ ํ•ด์ฃผ์‹  @nathanleclaire ์™€ @superdump ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

dmv ํ•˜๊ณ  ๋‹ค์Œ์„ ํ†ตํ•ด ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด (์Šฌํ”„๊ฒŒ๋„ ์ผ์‹œ์ ์œผ๋กœ ๋งŒ) ๊ด€๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

dmv use 1.8.1

๊ทธ๋Ÿฌ๋‚˜ ์ „๋ถ€๋Š” ์•„๋‹ˆ์ง€๋งŒ, ์ผ๋ถ€ ์ด๋ฏธ์ง€๋ฅผ ๋‹น๊ธธ ๋•Œ, docker ์ „ํ™˜ ๊ณ„์† 1.9.1 ๊ฒ€๊ฒŒ ๋ฐ‘์— ๋„์‹œ๋˜์ง€ docker images ๋” (ํ•˜์ง€๋งŒ ์˜ˆ์ „).

์—ฌ๊ธฐ์„œ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๋ฒ„๊ทธ๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ๋ถˆ์•ˆ์ •ํ•œ ๋ฒ„์ „์ž…๋‹ˆ๊นŒ?

๋ฆด๋ฆฌ์Šค ํ›„๋ณด 2์— ๋Œ€ํ•œ ๋ฒ„์ „ B๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/boot2docker/boot2docker/releases/tag/v1.10.0-rc2-b

์‚ฌ์šฉํ•˜๋‹ค
docker-machine create -d=virtualbox -virtualbox-boot2docker-url https://github.com/boot2docker/boot2docker/releases/download/v1.10.0-rc2-b/boot2docker.iso docker

๋ฐฉ๊ธˆ 1.10์„ ์‹คํ–‰ํ•˜๋Š” ๋กœ์ปฌ Mac (homebrew)์—์„œ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์ง€๋งŒ docker-machine (์ด ๊ฒฝ์šฐ google gce)์€ docker-machine ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์‹œ๋„ํ•œ ํ›„์—๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 1.10์œผ๋กœ ๊ฐ•์ œ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๋ฉด ์ˆ˜๋™์œผ๋กœ sshํ•˜๊ณ  deb ์ €์žฅ์†Œ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค.

Travis CI์—์„œ ๋ฐฉ๊ธˆ ๋งŒ๋‚ฌ์Šต๋‹ˆ๋‹ค.

$ export PATH=/opt/docker:$PATH
$ docker version
Client:
 Version:      1.10.2
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   c3959b1
 Built:        Mon Feb 22 22:37:33 2016
 OS/Arch:      linux/amd64
Error response from daemon: client is newer than server (client API version: 1.22, server API version: 1.20)
The command "docker version" failed and exited with 1 during 

๋””๋ฒ„๊น… 3 ์ผ ํ›„์— ํ•ด๊ฒฐํ–ˆ๊ณ  StackOverflow์— ๋‹ต๋ณ€์„ ์ผ์Šต๋‹ˆ๋‹ค. http://stackoverflow.com/questions/24586573/docker-error-client-and-server-dont-have-same-version / 36298911 # 36298911

๊ทธ๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋„์ปค ๋จธ์‹  / ๋„์ปค ๋„๊ตฌ ์ƒ์ž์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋“  ์ œ์•ˆ์€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด๋ฉฐ Docker ๋„๊ตฌ ์ƒ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์ข‹์ง€๋งŒ ๋‹ค๋ฅธ ์„œ๋ฒ„๊ฐ€ ๋‹ค๋ฅธ ์„œ๋ฒ„ ๋ฒ„์ „์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๊ณ  ์ฆ‰์‹œ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜์—†๋Š” Docker์˜ ์‹ค์ œ ๋ฐฐํฌ์—๋Š” ์ „ํ˜€ ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

์ง„์งœ ๋ฌธ์ œ๋Š” ์ƒˆ๋กœ์šด ๋„์ปค ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ ์„œ๋ฒ„์™€ ํ†ต์‹  ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜๋„๋ก ๋„์ปค ์ž์ฒด์—์„œ ์ด์ƒ์ ์œผ๋กœ ์ˆ˜์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋„์ปค ๋จธ์‹ ์ด ์‹ ๋ขฐํ•  ์ˆ˜์žˆ๋Š” ๋„๊ตฌ๊ฐ€ ๋˜๋ ค๋ฉด ์ฆ‰์‹œ ํ•ด๊ฒฐํ•ด์•ผํ•˜๋Š” ๋ˆˆ์— ๋„๋Š” ๋†€๋ผ์šด ๋””์ž์ธ ๊ฒฐํ•จ์ž…๋‹ˆ๋‹ค. API ๋ฒ„์ „์ด _OLDER_์ด๊ธฐ ๋•Œ๋ฌธ์— ์ง€๊ธˆ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ƒ๊ฐ์€ ๋†€๋ž์Šต๋‹ˆ๋‹ค.

๋ถˆํ–‰ํžˆ๋„ ํด๋ผ์ด์–ธํŠธ๋Š” ๋น ๋ฅด๊ฒŒ ๋ฆด๋ฆฌ์Šค๋˜์ง€๋งŒ ํด๋ผ์ด์–ธํŠธ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋„๋‹ฌํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.
๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— docker-machine (toolbox)์„ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ๋•Œ ์ƒˆ ๋ฒ„์ „์˜ ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜์—†๊ณ  ์ปดํ“จํ„ฐ์—์„œ ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„ ์ƒํƒœ๋กœ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ƒํ•œ ์ ์€ ์ตœ์‹  ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ API์— "๋ง"ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ณต์‹ ๋ฆด๋ฆฌ์Šค์™€ ์ƒˆ ๋ฆด๋ฆฌ์Šค๋กœ์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์—…๋ฐ์ดํŠธ ์‚ฌ์ด์˜ ์ง€์—ฐ์€ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€๋ณด๊ธฐ์— ์ด๊ฒƒ์€ ํด๋ผ์ด์–ธํŠธ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ๋ธ”๋ผ์ธ๋“œ ๋‚ด๊ธฐ๋กœ ๋งŒ๋“ ๋‹ค. DM์„ ๋™์ผํ•œ ํด๋ผ์ด์–ธํŠธ ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•˜์ง€ ์•Š๋Š” ํ•œ ํด๋ผ์ด์–ธํŠธ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ์ž  ๊น๋‹ˆ๋‹ค.

๋‘ ๊ฐ€์ง€ (๊ธฐํƒ€?) ์˜ต์…˜ ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํด๋ผ์ด์–ธํŠธ๋Š” ํ˜„์žฌ API ๋ฐ ์ตœ์†Œ 1 ๋…„ ๋œ API์™€ ํ†ต์‹  ํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.
  2. ์„œ๋ฒ„ ์—…๊ทธ๋ ˆ์ด๋“œ๋Š” ๊ณต์‹ ์ €์žฅ์†Œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” ๋ฒ„์ „์„ ํ™•์ธํ•ด์•ผํ•˜๋ฉฐ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์†Œ์Šค (๋˜๋Š” ๋Œ€์ฒด ์ €์žฅ์†Œ)์—์„œ ๋นŒ๋“œํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œํ•ด์•ผ ํ•  ์ผ์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ ๋ฒ„์ „์˜ API๋ฅผ ์ง€์›ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ๋””์ž์ธ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์•„๋‹Œ ์ด์œ ๋Š” ์ด์ƒํ•ฉ๋‹ˆ๋‹ค.

@TheSeanBrady Docker Machine si ์•„์ฃผ ์ƒˆ๋กญ์Šต๋‹ˆ๋‹ค.
๋‹ค์–‘ํ•œ API ์ง€์›์ด์ด ํ”„๋กœ์ ํŠธ์˜ ์ด์ •ํ‘œ์— ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ docker-machine์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ docker์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

$ docker --version
Docker version 1.11.0, build 4dc5990
โ•ฐ$ docker ps
Error response from daemon: client is newer than server (client API version: 1.23, server API version: 1.22)
โ•ฐ$ brew switch docker 1.10.3
โ•ฐ$ docker --version
Docker version 1.10.3, build 20f81dd
โ•ฐ$ docker ps
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                    NAMES

์—ฌ๊ธฐ์„œํ•ด์•ผ ํ•  ์ผ์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ ๋ฒ„์ „์˜ API๋ฅผ ์ง€์›ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ๋””์ž์ธ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์•„๋‹Œ ์ด์œ ๋Š” ์ด์ƒํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜์˜ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” API ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์˜ˆ์ƒํ•˜์ง€ ์•Š์€ ๋ฐ๋ชฌ์œผ๋กœ ๋ณด๋‚ด๋ฉด ์–ด๋–ป๊ฒŒ๋ฉ๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์ด์ „ ๋ฒ„์ „์—์—†๋Š” ์—”๋“œ ํฌ์ธํŠธ์— ์š”์ฒญ์„ํ•ฉ๋‹ˆ๊นŒ? ๋ฐ๋ชฌ์€ ๋ฏธ๋ž˜์˜ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญํ•  ์ˆ˜์žˆ๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์–ด๋–ป๊ฒŒ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š”.
์ €๋Š” ์ „๋ฌธ๊ฐ€๋Š” ์•„๋‹ˆ์ง€๋งŒ ์ด์ „ ์˜ค๋””์˜ค ๋ชจ๋Ž€์—์„œ ํ•ธ๋“œ ์…ฐ์ดํฌ๋ฅผ ์ˆ˜ํ–‰ ํ•œ ๊ฒƒ๊ณผ ๋™์ผํ•œ ๋ฐฉ์‹์„ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ํ•ธ๋“œ ์…ฐ์ดํฌ๋Š” ๋ชจ๋“  ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์—์„œ ์ดํ•ดํ•  ์ˆ˜์žˆ๋Š” ๊ฐ€์žฅ ์˜ค๋ž˜๋œ API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜ํ–‰๋˜์—ˆ์œผ๋ฉฐ ์ตœ์†Œํ•œ ๊ธฐ๋ณธ (์ค‘์š”ํ•œ) ํ˜ธ์ถœ์— ์‘๋‹ตํ•˜๋„๋ก ๋ณด์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ํ•ธ๋“œ ์…ฐ์ดํฌ๋Š” ์‚ฌ์šฉ์ค‘์ธ API ๋ฒ„์ „๊ณผ ์‘๋‹ต ํ•  ์ˆ˜์žˆ๋Š” API ํ•จ์ˆ˜ ๋ชฉ๋ก์„ ๋ฌป์Šต๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์˜ ๊ธฐ๋Šฅ์€ ๋…ผ๋ฆฌ์ ์œผ๋กœ AND ์—ฐ๊ฒฐ๋˜๋ฉฐ ํ•ด๋‹น ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๊ตฌ์„ฑ์— ๋Œ€ํ•ด ๊ณตํ†ต ๊ธฐ๋Šฅ ์ง‘ํ•ฉ (api ํ˜ธ์ถœ)์ด ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํด๋ผ์ด์–ธํŠธ๋Š” ํ˜ธ์ถœ ํ•  ์ˆ˜์žˆ๋Š” ํ•จ์ˆ˜๋ฅผ ์•Œ๊ณ  ํ˜ธ์ถœ ํ•  ์ˆ˜์—†๋Š” ํ•จ์ˆ˜์—๋งŒ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
IE [์ง€์›๋˜์ง€ ์•Š์Œ]-์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„๊ฐ€ _______์— ์‘๋‹ต ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„๋ฅผ Docker nn.nnn.nn์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ Docker nn.nnn.nn์„ ์ค€์ˆ˜ํ•˜๋„๋ก ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ˆ˜์ •ํ•˜์‹ญ์‹œ์˜ค.

์•„์ด๋””์–ด๋Š” API๊ฐ€ 1 % ๋งŒ ์ฐจ์ด๊ฐ€ ๋‚˜๋Š” ๊ฒฝ์šฐ 1 %๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ•„์š”๋กœํ•˜๋Š” ๋‹ค๋ฅธ 99 %์˜ ์‚ฌ์šฉ์„ ๋น„ํ™œ์„ฑํ™”ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐœ์„ ์˜ ๊ทผ๊ฑฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ•ธ๋“œ ์…ฐ์ด ํ‚น ๋ฐ ๊ณตํ†ต ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ๋™์˜๋Š” ์ƒˆ๋กœ์šด ๊ฒƒ์ด ์•„๋‹ˆ๋ฉฐ ์—ฌ๋Ÿฌ ๋ฒˆ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค๋„ ์‚ฌ์šฉ์„ฑ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜์ง€ ์•Š๋‹ค๊ณ  ๋Š๋‚€๋‹ค๋ฉด ์‹œ์Šคํ…œ์ด ์•„๋ฌด๋ฆฌ ํ›Œ๋ฅญํ•˜๋”๋ผ๋„ ์‹œ์Šคํ…œ์€ ์•„๋ฌด๊ฒƒ๋„ ์—†๋‹ค๋Š” ๊ฒƒ์„ ํ•ญ์ƒ ๊ธฐ์–ตํ•˜์‹ญ์‹œ์˜ค.

@ctroncoso ์š”์ ์„ ์•Œ์ง€๋งŒ amazonec2 / us-east-1 ์—์„œ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๋Š” time docker info ์‹คํ–‰ํ•˜๋ฉด 300ms๊ฐ€ ์กฐ๊ธˆ ๋„˜๊ฒŒ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. -๋ชจ๋“  ์š”์ฒญ์— โ€‹โ€‹๋Œ€ํ•œ ํ•ธ๋“œ ์…ฐ์ดํฌ๋Š”์ด ์‹œ๊ฐ„์„ ๋‘ ๋ฐฐ๋กœ ๋Š˜๋ฆฌ๊ณ  ์‚ฌ์†Œํ•œ ์–‘์˜ ์˜ค๋ฒ„ ํ—ค๋“œ๋ฅผ ๋„์ž…ํ•ฉ๋‹ˆ๊นŒ?

์—ฌํ•˜ํŠผ Machine์ด์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ํ•  ์ˆ˜์žˆ๋Š” ์ผ์€ ์•„๋ฌด๊ฒƒ๋„ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์›ํ•  ๊ฒฝ์šฐ https://github.com/docker/docker ์—์„œ ๋ฌธ์ œ๋ฅผ ์—ด์–ด (๊ธฐ์กด ๋ฌธ์ œ๋ฅผ ๋จผ์ € ๊ฒ€์ƒ‰) ์—…์ŠคํŠธ๋ฆผ๊ณผ ์˜๊ฒฌ์„ ๊ณต์œ  ํ•  ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

@nathanleclaire๋Š” ํ™•์‹คํ•˜์ง€๋งŒ ์ž‘๋™์ด ๋ณด์žฅ๋˜๋Š” ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์œ„ํ•ด 20 x 300 (๋˜๋Š” 600) ms๋ฅผ ๊ตํ™˜ ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋˜ํ•œ ์ฒซ ๋ฒˆ์งธ ํ˜ธ์ถœ์—๋งŒ ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค. ํ•ธ๋“œ ์…ฐ์ดํฌ๊ฐ€ ์ด๋ฏธ ์ด๋ฃจ์–ด ์กŒ์Œ์„ ํ™•์ธํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ํ˜ธ์ถœ์—์„œ "์„ธ์…˜ ํ‚ค"๊ฐ€ ์ƒ์„ฑ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ์•…์ˆ˜ํ•˜์ง€ ์•Š๊ณ  ๋‹ค์Œ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜์žˆ๋Š” ๋ณด์•ˆ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•˜์ง€๋งŒ ์šฐ๋ถ„ํˆฌ / ํŽ˜๋„๋ผ / ์„ผ ํ† ์Šค๊ฐ€ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์ž‘์—… ๋ถ€ํ•˜๋ฅผ ์œ ๋ฐœํ•  ์ˆ˜์žˆ๋Š” ์‹œ์Šคํ…œ๋ณด๋‹ค ๋น ๋ฅด์ง€ ์•Š์€ ์˜ค๋ฅ˜ ๋ฐฉ์ง€ ์‹œ์Šคํ…œ์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค. ์ œ ์‹œ๊ฐ„์— ์ €์žฅ์†Œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ๋‚˜๋Š” ์ด๊ฒƒ์ด ๋„์ปค ์—”์ง„ ๋ฌธ์ œ๋ผ๋Š” ๊ฒƒ์„ ์•Œ์ง€๋งŒ ๊ธฐ๊ณ„๊ฐ€ ์ฑ…์ž„์„์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋„์ปค ์—”์ง„์˜ ๋ฌธ์ œ๋ฅผ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— ๋ฉ‹์ง„ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด์Šˆ ํ† ํฌ๊ฐ€ ๊ฑด์„ค์ ์ธ ์•„์ด๋””์–ด๋กœ ๋๋‚  ๋•Œ ๊ทธ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„ ๋‚ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @nathanleclaire !!!

ํด๋ผ์ด์–ธํŠธ๋Š” ์ด๋ฏธ ์„œ๋ฒ„์— ๋ฒ„์ „์„ ์ฟผ๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์—†์–ด์•ผํ•ฉ๋‹ˆ๋‹ค
ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” API ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ „์†กํ•˜๋Š” ์ด์œ ,
ํด๋ผ์ด์–ธํŠธ๋Š” ์ด์— ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์•Œ๊ณ  ์žˆ์–ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
๋ฒ„์ „. ์—”๋“œ ํฌ์ธํŠธ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ์ด์ „ ๋ฒ„์ „์˜ ์‚ฌ์šฉ ์ค‘๋‹จ์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
๋‚˜์ด ๋˜๋Š” ๋ฒ„์ „ ๋ธํƒ€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด์ „ ๋ฒ„์ „์—์„œ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์งˆ์‹ ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.
ํ”„๋กœ๋•์…˜ ์ˆ˜์ค€ ๋ฐฐํฌ๋ฅผ์œ„ํ•œ ์˜ต์…˜์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋‚˜๋Š” 3 ๊ฐœ์˜ ์ „์ฒด ๊ธฐ๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ ์žˆ๋‹ค
์—ฌ๊ธฐ์—์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฐฐํฌ.

2016 ๋…„ 4 ์›” 21 ์ผ ๋ชฉ์š”์ผ ์˜คํ›„ 2:47, Nathan LeClaire [email protected]
์ผ๋‹ค :

์—ฌ๊ธฐ์„œํ•ด์•ผ ํ•  ์ผ์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ ๋ฒ„์ „์˜ API๋ฅผ ์ง€์›ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ทธ๊ฒƒ์ด ๋””์ž์ธ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์•„๋‹Œ ์ด์œ ๋Š” ์ด์ƒํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜์˜ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ API ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ณด๋‚ด๋ฉด ์–ด๋–ป๊ฒŒ ๋˜๋‚˜์š”?
๊ทธ๊ฒƒ์„ ๊ธฐ๋Œ€ํ•˜์ง€ ์•Š๋Š” ๋ฐ๋ชฌ์— ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ? ๋˜๋Š” ์š”์ฒญ์„
์ด์ „ ๋ฒ„์ „์— ์กด์žฌํ•˜์ง€ ์•Š๋Š” ์—”๋“œ ํฌ์ธํŠธ? ๋ฐ๋ชฌ์€ ์–ด๋•Œ
๋ฏธ๋ž˜์˜ ๊ณ ๊ฐ์ด ์š”์ฒญํ•  ์ˆ˜์žˆ๋Š” ๋ชจ๋“  ๊ฐ€๋Šฅ์„ฑ์— ๋Œ€ํ•ด ์•Œ๊ณ  ์‹ถ์œผ์‹ญ๋‹ˆ๊นŒ?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/docker/machine/issues/2147#issuecomment -213107758

ํด๋ผ์ด์–ธํŠธ๋Š” ์ด๋ฏธ ์„œ๋ฒ„์— ๋ฒ„์ „์„ ์ฟผ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Docker ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ์—์„œ ์ด๊ฒƒ์ด ๋ฐœ์ƒํ•˜๋Š” ์œ„์น˜๋ฅผ ์•Œ๋ ค์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ €๋Š” Go๋ฅผ ์ž˜ ๋ชจ๋ฅด์ง€๋งŒ ์ด๊ฒƒ์ด ๋ฌด์—‡์„ํ•˜๋Š”์ง€ ํ™•์‹คํžˆ ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

https://github.com/docker/docker/blob/eab65e438ecc406baf935c8df544982164cff72f/integration-cli/docker_api_test.go

์–ด๋Š ์ชฝ์ด๋“  ํ”„๋กœ์ ํŠธ ์ „์ฒด์—์„œ API ๋ฒ„์ „์„ ์ฟผ๋ฆฌํ•˜๋Š” ํŒจํ„ด์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

2016 ๋…„ 4 ์›” 21 ์ผ ๋ชฉ์š”์ผ ์˜คํ›„ 5:25, Nathan LeClaire [email protected]
์ผ๋‹ค :

ํด๋ผ์ด์–ธํŠธ๋Š” ์ด๋ฏธ ์„œ๋ฒ„์— ๋ฒ„์ „์„ ์ฟผ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Docker ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ์—์„œ ์ด๊ฒƒ์ด ๋ฐœ์ƒํ•˜๋Š” ์œ„์น˜๋ฅผ ์•Œ๋ ค์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/docker/machine/issues/2147#issuecomment -213157495

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์–ด์ œ https://docs.docker.com/v1.5/contributing/devenvironment/๋ฅผ ์ฐธ์กฐํ•˜์—ฌ https://github.com/docker/docker.git ์—์„œ ์ตœ์‹  ๋ฒ„์ „์˜ ๋„์ปค๋ฅผ ๋งŒ๋“ค๊ณ  ์ด์ „ ๋„์ปค ํด๋ผ์ด์–ธํŠธ๋ฅผ ์ˆ˜์ •ํ–ˆ์„ ๋•Œ ์ƒˆ๋กœ์šด ๊ฒƒ๊ณผ ๋ฐ”์ด๋„ˆ๋ฆฌ.
"client is newer than server with Docker"๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ docker ๋ฐ๋ชฌ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

  • / bin / systemctl ์ƒํƒœ docker.service
    โ— docker.service-Docker ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…Œ์ด๋„ˆ ์—”์ง„
    ๋กœ๋“œ ๋จ :๋กœ๋“œ ๋จ (/lib/systemd/system/docker.service; ํ™œ์„ฑํ™” ๋จ, ๊ณต๊ธ‰ ์—…์ฒด ์‚ฌ์ „ ์„ค์ • : ํ™œ์„ฑํ™” ๋จ)

๊ทธ๋Ÿฌ๋‚˜ ๋””๋ ‰ํ† ๋ฆฌ์— ์ƒ์„ฑ ๋œ ๋ฐ๋ชฌ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฒˆ๋“ค / ์ตœ์‹  / ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ฐ๋ชฌ
๋””๋ ‰ํ† ๋ฆฌ๋ฅผ PATH์— ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ dockerd ๋ฐ containerd๋ฅผ / usr / bin /์— ๋ณต์‚ฌํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
_copy dockerd / usr / bin / docker
docker-containerd / usr / bin / containerd ๋ณต์‚ฌ
๋ณต์‚ฌ ../binary-client/docker / usr / bin_

๊ทธ๋Ÿฐ ๋‹ค์Œ /etc/init.d/docker๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ๊ฐ•์กฐ ํ‘œ์‹œ๋œ ์ค„์ด์žˆ๋Š” PATH์— dockerd์˜ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

DOCKERD = / home / master / github.com / docker / bundles / 1.12.0-dev / binary-daemon
๋‚ด๋ณด๋‚ด๊ธฐ PATH = $ PATH : $ DOCKERD

BASE =๋„ ์ปค๋“œ

/ etc / default / $ BASE (/ etc / default / docker)์—์„œ ์ˆ˜์ •

DOCKER = / usr / bin / $ BASE

DOCKER = $ DOCKERD / $ BASE
์ด๊ฒƒ์€ docker ์ž์ฒด์—์„œ ๊ด€๋ฆฌํ•˜๋Š” pid ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
DOCKER_PIDFILE = / var / run / $ BASE.pid
start-stop-daemon์— ์˜ํ•ด ์ƒ์„ฑ / ๊ด€๋ฆฌ๋˜๋Š” pid ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
DOCKER_SSD_PIDFILE = / var / run / $ BASE-ssd.pid
DOCKER_LOGFILE = / var / log / $ BASE.log
DOCKER_OPTS =
DOCKER_DESC = "๋„์ปค"

๊ทธ๋Ÿฐ ๋‹ค์Œ dockerd ์„œ๋น„์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋ฉด ์„ฑ๊ณต์ ์œผ๋กœ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.
_root @ master : ~ # ์„œ๋น„์Šค ๋„์ปค ์ƒํƒœ
โ— docker.service-Docker ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…Œ์ด๋„ˆ ์—”์ง„
๋กœ๋“œ ๋จ :๋กœ๋“œ ๋จ (/lib/systemd/system/docker.service; ํ™œ์„ฑํ™” ๋จ, ๊ณต๊ธ‰ ์—…์ฒด ์‚ฌ์ „ ์„ค์ • : ํ™œ์„ฑํ™” ๋จ)
ํ™œ์„ฑ : ํ™œ์„ฑ (์‹คํ–‰ ์ค‘) 2016-05-04 04:32:01 EDT ์ดํ›„; 17 ์‹œ๊ฐ„ ์ „
๋ฌธ์„œ : https : //docs.docker.com_

root @ master : ~ # ๋„์ปค ๋ฒ„์ „
๊ณ ๊ฐ:
๋ฒ„์ „ : 1.12.0-dev
API ๋ฒ„์ „ : 1.24
Go ๋ฒ„์ „ : go1.5.4
Git ์ปค๋ฐ‹ : 1c0edf6- ์ง€์›๋˜์ง€ ์•Š์Œ
๊ฑด์ถ• : 2016 ๋…„ 5 ์›” 4 ์ผ ์ˆ˜์š”์ผ 05:05:37
OS / ์•„์น˜ : linux / amd64

์„ฌ๊ธฐ๋Š” ์‚ฌ๋žŒ:
๋ฒ„์ „ : 1.12.0-dev
API ๋ฒ„์ „ : 1.24
Go ๋ฒ„์ „ : go1.5.4
Git ์ปค๋ฐ‹ : 1c0edf6- ์ง€์›๋˜์ง€ ์•Š์Œ
๊ฑด์ถ• : 2016 ๋…„ 5 ์›” 4 ์ผ ์ˆ˜์š”์ผ 05:05:37
OS / ์•„์น˜ : linux / amd64
๋ฃจํŠธ @ ๋งˆ์Šคํ„ฐ : ~ #

๋ชจ๋‘ ํ–‰๋ณตํ•˜๊ฒŒ ๋‹ฌ๋ ค

์ฐธ๊ณ ๋กœ

์•ˆ๋…•ํ•˜์„ธ์š”, ๋ˆ„๊ตฐ๊ฐ€ ์ œ๋ฐœ ๋„์™€ ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?
๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. docker-machine ์—…๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ์ž‘๋™ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์ดํ•ดํ•˜์ง€๋งŒ Windows / MAC์—์„œ docker๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Linux์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์ง€์นจ์— ๋”ฐ๋ผ ๋„์ปค ์ฝ˜ํ…์ธ  ์‹ ๋ขฐ๋กœ ์žฌ์ƒํ•˜๊ธฐ ์œ„ํ•ด ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค.
https://docs.docker.com/engine/security/trust/trust_sandbox/

์ œ๊ณต๋œ dockerfile์—์„œ 1.12.0 ์ด๋ฏธ์ง€๋ฅผ ๊ฐ€์ ธ์˜จ ๋‹ค์Œ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋ฏ€๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ๊ธฐ๋ณธ ์‹œ์Šคํ…œ (Linux)์— 1.11.0๋„ ์ปค๊ฐ€ ์žˆ๊ณ  1.12.0์ด ์žˆ์œผ๋ฏ€๋กœ ๊ธฐ๋ณธ ์‹œ์Šคํ…œ์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. , ๊ทธ๋ž˜์„œ ๋„์ปค ํŒŒ์ผ์„ ๋ณ€๊ฒฝํ•˜๊ณ  1.11.0-dev ๊ฒฝ๋กœ๋ฅผ ์ „๋‹ฌํ•˜๊ณ  ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์‹œ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ์—์ด ์ƒˆ ํŒŒ์ผ๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ–ˆ์„ ๋•Œ docker ๋ฒ„์ „์€ 1.11.0-dev ์ „์šฉ์ด์ง€๋งŒ API ๋ฒ„์ „์€ ์—ฌ์ „ํžˆ โ€‹โ€‹1.24์ด์ง€๋งŒ ๊ธฐ๋ณธ Linux์—๋Š” 1.23์˜ API ๋ฒ„์ „์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ์–ด๋–ป๊ฒŒ ์ œ๊ฑฐํ•ฉ๋‹ˆ๊นŒ? ์ปจํ…Œ์ด๋„ˆ API ๋ฒ„์ „์„ 1.23์œผ๋กœ ์ค„์ด๊ฑฐ ๋‚˜ ์˜ค๋ฅ˜๊ฐ€ ์—†๋„๋ก ๊ธฐ๋ณธ API ๋ฒ„์ „์„ 1., 24๋กœ ๋Š˜๋ฆฌ๋ ค๋ฉด ์–ด๋–ป๊ฒŒํ•ด์•ผํ•ฉ๋‹ˆ๊นŒ?

์ถ”์‹  : ๊ธฐ๋ณธ Linux ๋„์ปค ๋ฒ„์ „์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ API ๋ฒ„์ „์€ 1.23์ž…๋‹ˆ๋‹ค.

upload

๋ฟก๋ฟก

Ubuntu์—์„œ sudo apt-get install -y docker-engine ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ค์น˜๋œ Docker ๋ฒ„์ „์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค (์ฃผ์˜ : ๊ณต์‹ ์ฑ„๋„์„ ์‚ฌ์šฉํ•˜์—ฌ Docker๋ฅผ ์„ค์น˜ ํ•œ ๊ฒฝ์šฐ์—๋งŒ ์ž‘๋™ ํ•จ).

docker-machine upgrade ๋Š” ๊ท€ํ•˜๊ฐ€ ๋ณด์œ ํ•œ ๋ชจ๋“  boot2docker.iso ๋ฅผ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

@nathanleclaire Hi, ๋‚ด ๊ธฐ๋ณธ ์šฐ๋ถ„ํˆฌ์—์„œ ๋‚ด ๋„์ปค ์—”์ง„์„ ์—…๊ทธ๋ ˆ์ด๋“œํ–ˆ์œผ๋ฉฐ ์ตœ์‹  1.11.1 ํด๋ผ์ด์–ธํŠธ ๋ฒ„์ „๊ณผ API ๋ฒ„์ „ 1.23์ด ์žˆ์ง€๋งŒ ๋‚ด๊ฐ€ ๋นŒ๋“œ ํ•œ ์ปจํ…Œ์ด๋„ˆ์—๋Š” 1.24 API ๋ฒ„์ „์ด ์žˆ์œผ๋ฏ€๋กœ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ปจํ…Œ์ด๋„ˆ์˜ API ๋ฒ„์ „์„ ์–ด๋–ป๊ฒŒ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€, ์•„๋‹ˆ๋ฉด ๊ธฐ๋ณธ ๋จธ์‹ ์˜ API ๋ฒ„์ „์„ 1.23์—์„œ 1.24๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@mkonakan ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ์†Œ์Šค์—์„œ Docker๋ฅผ ์ปดํŒŒ์ผํ•˜๊ณ  ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๊ด€๋ จ ์œ„์น˜์— ๋†“๊ณ  ๋ฐ๋ชฌ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋นŒ๋“œ ํ•œ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ทธ๋Ÿฌํ•œ ๋ฒ„์ „์˜ Docker๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ Dockerfile์— ์œ ์‚ฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ค„์ด์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์‹  API ๋ฒ„์ „์„ ๊ฐ€์ ธ ์˜ค๋Š” dockerfile์˜ ๊ธฐ๋ณธ ํŒŒ์ผ ๋Œ€์‹  ๊ธฐ๋ณธ ์ปดํ“จํ„ฐ์˜ ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒŒ์ผ์„ ์ปจํ…Œ์ด๋„ˆ์— ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ.

๐Ÿ‘

์™œ ์ด๊ฒƒ์ด ๋‹ซํ˜€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ตœ์‹  Docker ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ด์ „ Docker ๋ฐ๋ชฌ๊ณผ ์ธํ„ฐํŽ˜์ด์Šค ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@megastef ๋‚ด๊ฐ€ ์•„๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ ์ด๋Š” ์—…์ŠคํŠธ๋ฆผ ํ”„๋กœ์ ํŠธ (https://github.com/docker/docker)์˜ ๋ฌธ์ œ์ด๋ฏ€๋กœ ๋…ผ์˜ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์•ž์œผ๋กœ ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋ฅผ ์ฐพ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. .

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋„์ปค ๋จธ์‹  ์—…๊ทธ๋ ˆ์ด๋“œ ์ด๋ฆ„ ์„ ์‚ฌ์šฉํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ๊ฐ€ although use proxy ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.
1. ๋‹ค์Œ์—์„œ ๋„๊ตฌ ์ƒ์ž ์ฐพ๊ธฐ
2. ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์„ค์น˜ํ•˜๋ฉด ๋ฒ„์ „์ด ์—…๊ทธ๋ ˆ์ด๋“œ๋ฉ๋‹ˆ๋‹ค.

docker-machine upgrade ์€ (๋Š”) ๋‚ด ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. CoreOS Docker ํ˜ธ์ŠคํŠธ๊ฐ€ ๋ฒ„์ „ 1.22์—์„œ ๋ฉˆ์ถ˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‚ด ํด๋ผ์ด์–ธํŠธ๋Š” 1.24๋ฅผ ์‹คํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@ pcgeek86 export DOCKER_API_VERSION=1.23 ์‹œ๋„ (https://forums.docker.com/t/docker-for-mac-stopped-running-docker-related-commands/16153/6 ์ฐธ์กฐ)

Windows์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด $ env : DOCKER_API_VERSION = 1.23 ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•˜์‹ญ์‹œ์˜ค.

Windows ๋ฒ ํƒ€์—์„œ๋„์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. docker-machine upgrade ๋„์›€์ด๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
ํ•œ ๊ฐ€์ง€ ๋Œ€์•ˆ์€ --engine-install-url https://test.docker.com ์„ docker-machine create ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด Docker์˜ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค ํ›„๋ณด๋กœ ๋จธ์‹ ์ด ์ดˆ๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค.

์„ธ๋ถ€:

> docker -v
Docker version 1.12.0-rc4, build e4a0dbc, experimental
> docker-machine -v
docker-machine version 0.8.0-rc2, build 4ca1b85

> docker-machine create --driver amazonec2 aws01
> <strong i="12">@FOR</strong> /f "tokens=*" %i IN ('docker-machine env aws01') DO @%i
> docker ps
Error response from daemon: client is newer than server (client API version: 1.24, server API version: 1.23)
(Here we could have used SET DOCKER_API_VERSION=1.23)

> docker-machine create --driver amazonec2 --engine-install-url https://test.docker.com aws02
> <strong i="13">@FOR</strong> /f "tokens=*" %i IN ('docker-machine env aws02') DO @%i
> docker ps
(Works!)

docker-machine env ์˜ ์ถœ๋ ฅ์— DOCKER_API_VERSION ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@eddieajau ๋•๋ถ„์— ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ๋„์ปค ํด๋ผ์ด์–ธํŠธ (DOCKER_API_VERSION = 1.24)๋Š” Ubuntu linux์ด๊ณ  ๋„์ปค ์„œ๋ฒ„ (DOCKER_API_VERSION = 1.23)๋Š” Carina by Rackspace BETA์— ์žˆ์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ์— export DOCKER_API_VERSION=1.23 ๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ.

export DOCKER_API_VERSION=1.23 ๊ฐ€ ๋‚ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. @eddieajau ๋•๋ถ„์—

@ kid1412z ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋น ๋ฅธ ์ˆ˜์ •์œผ๋กœ๋„ ์ €์—๊ฒŒ

์ด์ „ ๋ฒ„์ „์œผ๋กœ ๋Œ์•„ ๊ฐ€๊ธฐ

brew uninstall docker
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/ba2a4f0358395010e84346d2224378c74d76c527/Formula/docker.rb
brew pin docker

์„ธ์ƒ์—. ํ˜‘์ƒ ํ”„๋กœํ† ์ฝœ ๋ฒ„์ „์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ฐœ๋ช…ํ•ด์•ผํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ €๋Š” ์ด๊ฒƒ์„ ์ฒ˜๋ฆฌ ํ•  ์ˆ˜์žˆ๋Š” 90 ๋…„๋Œ€์˜ ์†Œํ”„ํŠธ์›จ์–ด๋กœ ์ž‘์—…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ •๋ง.

@FlorianHeigl ๋„์ปค ํด๋ผ์ด์–ธํŠธ 1.13 ์ด์ƒ์€ ๋ฐ๋ชฌ๊ณผ API ๋ฒ„์ „ ํ˜‘์ƒ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํด๋ฐฑ ํ•  ์ตœ์†Œ ๋ฐ๋ชฌ ๋ฒ„์ „์€ docker 1.12์ž…๋‹ˆ๋‹ค. ์ด์ „ ๋ฐ๋ชฌ์˜ ๊ฒฝ์šฐ DOCKER_API_VERSION ์žฌ์ •์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

@eddieajau ํ™˜๊ฒฝ ๋ณ€์ˆ˜ DOCKER_API_VERSION = 1.23์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ๋” ์ด์ƒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
Windows ์šฉ Docker๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์—…๋ฐ์ดํŠธ ํ•  ์ˆ˜์—†๋Š” NAS์—์„œ ์‹คํ–‰์ค‘์ธ Docker ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Windows :

Client:
 Version:      17.09.0-ce
 API version:  1.32
 Go version:   go1.8.3
 Git commit:   afdb6d4
 Built:        Tue Sep 26 22:40:09 2017
 OS/Arch:      windows/amd64

Server:
 Version:      17.09.0-ce
 API version:  1.32 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   afdb6d4
 Built:        Tue Sep 26 22:45:38 2017
 OS/Arch:      linux/amd64
 Experimental: true

Nas :

Client:
 Version:      1.11.2
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   781516c
 Built:        Thu Aug  3 16:04:05 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.11.2
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   781516c
 Built:        Thu Aug  3 16:04:05 2017
 OS/Arch:      linux/amd64

๋ˆ„๊ตฌ๋‚˜ ์•„์ด๋””์–ด๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

๋„์ปค 17.09 cli์˜ ๋ฌธ์ œ์ธ @manuelsalvatori ; 17.10์—์„œ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค (https://github.com/moby/moby/pull/35008 ์ฐธ์กฐ). ์•„์ง 17.09๋กœ ๋ฐฑ ํฌํŠธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

Docker 1.11์€ ์ˆ˜๋ช…์ด ์ข…๋ฃŒ๋˜์—ˆ์œผ๋ฉฐ ์•Œ๋ ค์ง„ ์ทจ์•ฝ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ์ค‘์—๋Š” ์ปจํ…Œ์ด๋„ˆ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋ฒ—์–ด๋‚˜ ํ˜ธ์ŠคํŠธ์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๋Š” RunC์˜ CVE (๋„์ปค 1.12.6 ์ด์ƒ์—์„œ ํ•ด๊ฒฐ๋จ, ํŒจ์น˜ ๋œ RunC ๋ฒ„์ „ https://github.com/moby/moby/releases/tag/v1.12.6)

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰