Moby: ๊ฐœ์ธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ํ˜ธ์ŠคํŒ…๋˜๋Š” ์ด๋ฏธ์ง€๋กœ ์„œ๋น„์Šค ์ƒ์„ฑ ์‹œ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€

์— ๋งŒ๋“  2017๋…„ 03์›” 30์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: moby/moby

์„ค๋ช…

๋„์ปค ํ—ˆ๋ธŒ์˜ ๊ฐœ์ธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ํ˜ธ์ŠคํŒ…๋˜๋Š” ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Swarm ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ๋งˆ๋‹ค ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์„œ๋น„์Šค๊ฐ€ ์ž‘๋™ ์ค‘์ด๋ฉฐ ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ๋งˆ๋‹ค ์ธ์‡„๋˜๋Š” ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•˜๋Š” ๋‹จ๊ณ„:

  1. ๋„์ปค ํ—ˆ๋ธŒ์— ๊ฐœ์ธ ์ €์žฅ์†Œ ๋งŒ๋“ค๊ธฐ
  2. ์Šค์›œ ํด๋Ÿฌ์Šคํ„ฐ ์ƒ์„ฑ
  3. ๋„์ปค์— ๋กœ๊ทธ์ธ
  4. ์„œ๋ฒ„์—์„œ ์ด๋ฏธ์ง€ ๊ฐ€์ ธ์˜ค๊ธฐ
  5. ์ด๋ฏธ์ง€๋กœ ์„œ๋น„์Šค ๋งŒ๋“ค๊ธฐ

๋ฐ›์€ ๊ฒฐ๊ณผ๋ฅผ ์„ค๋ช…ํ•˜์‹ญ์‹œ์˜ค.

unable to pin image organization/some-image to digest: errors:
denied: requested access to the resource is denied
unauthorized: authentication required

์˜ˆ์ƒํ•œ ๊ฒฐ๊ณผ๋ฅผ ์„ค๋ช…ํ•˜์„ธ์š”.
์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€ ์—†์Œ

docker version ์ถœ๋ ฅ:

Client:
 Version:      17.03.1-ce
 API version:  1.27
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Fri Mar 24 00:45:26 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.1-ce
 API version:  1.27 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Fri Mar 24 00:45:26 2017
 OS/Arch:      linux/amd64
 Experimental: false

docker info ์ถœ๋ ฅ:

Containers: 1
 Running: 1
 Paused: 0
 Stopped: 0
Images: 3
Server Version: 17.03.1-ce
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 33
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
 Volume: local
 Network: bridge host macvlan null overlay
Swarm: active
 NodeID: omkzmqvpztv77kkg4j7w6dhj9
 Is Manager: true
 ClusterID: zpzn4xvqs6h5drt29423a7wr6
 Managers: 1
 Nodes: 2
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot Interval: 10000
  Number of Old Snapshots to Retain: 0
  Heartbeat Tick: 1
  Election Tick: 3
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
 Node Address: x.x.x.x
 Manager Addresses:
  x.x.x.x:2377
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 4ab9917febca54791c5f071a9d1f404867857fcc
runc version: 54296cf40ad8143b62dbcaa1d90e520a2136ddfe
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-70-generic
Operating System: Ubuntu 16.04.2 LTS
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 15.66 GiB
Name: name
ID: CMZP:AJOT:ELIE:T4NT:52JS:A6U6:LYE4:DNPW:LCJB:R2UR:XO3K:CDP6
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Username: intezerdev
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Labels:
 size=f8
 provider=azure
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

์ถ”๊ฐ€ ํ™˜๊ฒฝ ์„ธ๋ถ€ ์ •๋ณด(AWS, VirtualBox, ๋ฌผ๋ฆฌ์  ๋“ฑ):
azure, docker-machine ์‚ฌ์šฉ

areswarm kinquestion statumore-info-needed versio17.03

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

์ด๊ฒƒ์€ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ docker๋Š” ์ž๋™์œผ๋กœ ์ž๊ฒฉ ์ฆ๋ช…์„ ์ „๋‹ฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž๊ฒฉ ์ฆ๋ช…/์ธ์ฆ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์€ (์„ค๊ณ„์ƒ) ๋ช…์‹œ์  ์ž‘์—…์ž…๋‹ˆ๋‹ค. ์ž๊ฒฉ ์ฆ๋ช…์€ ๋ฌด๋ฆฌ์— ์ €์žฅ๋˜๊ณ  ์„œ๋น„์Šค๊ฐ€ ๋ฐฐํฌ๋˜๋Š” ๋…ธ๋“œ์— ๋ฐฐํฌ๋˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์ž๊ฒฉ ์ฆ๋ช…์„ ์ „๋‹ฌํ•˜๋ ค๋ฉด ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ --with-registry-auth ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ์„œ๋น„์Šค( docker service update --with-registry-auth )์˜ ์ธ์ฆ ์ •๋ณด๋ฅผ _์—…๋ฐ์ดํŠธ_ํ•˜์‹ญ์‹œ์˜ค.

์—ฌ๊ธฐ์— ๋ฒ„๊ทธ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์ง€๋งŒ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ๊ฑฐ๋‚˜ ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ ์•Œ๋ ค์ฃผ์„ธ์š”.

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

์ด๊ฒƒ์€ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ docker๋Š” ์ž๋™์œผ๋กœ ์ž๊ฒฉ ์ฆ๋ช…์„ ์ „๋‹ฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž๊ฒฉ ์ฆ๋ช…/์ธ์ฆ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์€ (์„ค๊ณ„์ƒ) ๋ช…์‹œ์  ์ž‘์—…์ž…๋‹ˆ๋‹ค. ์ž๊ฒฉ ์ฆ๋ช…์€ ๋ฌด๋ฆฌ์— ์ €์žฅ๋˜๊ณ  ์„œ๋น„์Šค๊ฐ€ ๋ฐฐํฌ๋˜๋Š” ๋…ธ๋“œ์— ๋ฐฐํฌ๋˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์ž๊ฒฉ ์ฆ๋ช…์„ ์ „๋‹ฌํ•˜๋ ค๋ฉด ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ --with-registry-auth ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ์„œ๋น„์Šค( docker service update --with-registry-auth )์˜ ์ธ์ฆ ์ •๋ณด๋ฅผ _์—…๋ฐ์ดํŠธ_ํ•˜์‹ญ์‹œ์˜ค.

์—ฌ๊ธฐ์— ๋ฒ„๊ทธ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์ง€๋งŒ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ๊ฑฐ๋‚˜ ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ ์•Œ๋ ค์ฃผ์„ธ์š”.

Pull the image on the server wrt ํ•˜๊ณ  ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. Swarm ๋ชจ๋“œ๋Š” ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์ด์ œ์ŠคํŠธ์— "๊ณ ์ •"ํ•˜๋ฏ€๋กœ ์„œ๋น„์Šค์˜ ๋ชจ๋“  ์ธ์Šคํ„ด์Šค๊ฐ€ ๋™์ผํ•œ ๋ฒ„์ „์˜ ์ด๋ฏธ์ง€๋ฅผ _์ •ํ™•ํžˆ_ ์‹คํ–‰ํ•˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ ‘์†ํ•˜์—ฌ "๋‹ค์ด์ œ์ŠคํŠธ"(๋ถˆ๋ณ€ ํƒœ๊ทธ)๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด์„œ๋Š” ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์ด์ œ์ŠคํŠธ ํ•ด๊ฒฐ์ด ์‹คํŒจํ•˜๋ฉด docker๋Š” ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ œ๊ณตํ•œ image:tag ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๋Œ€์ฒดํ•˜๊ณ  ๋กœ์ปฌ ์ด๋ฏธ์ง€(์žˆ๋Š” ๊ฒฝ์šฐ)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. https://github.com/docker/docker/issues/31518 ์ฐธ์กฐ

๊ณ„์†ํ•ด์„œ ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋” ๋งŽ์€ ์ •๋ณด๊ฐ€ ํ•„์š”ํ•˜๋ฉด ์ž์œ ๋กญ๊ฒŒ ํ† ๋ก ์„ ๊ณ„์†ํ•˜์„ธ์š” ๐Ÿ‘

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