docker version
åºåïŒ
Client:
Version: 1.11.1
API version: 1.23
Go version: go1.5.4
Git commit: 5604cbe
Built: Wed Apr 27 00:34:20 2016
OS/Arch: darwin/amd64
Server:
Version: 1.11.1
API version: 1.23
Go version: go1.5.4
Git commit: 8b63c77
Built: Tue May 10 10:39:20 2016
OS/Arch: linux/amd64
docker info
åºåïŒ
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 21
Server Version: 1.11.1
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 25
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: null host bridge
Kernel Version: 4.4.9-moby
Operating System: Alpine Linux v3.3
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.954 GiB
Name: moby
ID: DFWG:ZZBI:QGZP:CAFF:PZVX:WLED:3XNK:J2LK:UV3V:X2JR:VCGJ:QFBK
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): true
File Descriptors: 17
Goroutines: 38
System Time: 2016-05-15T23:53:58.530098977Z
EventsListeners: 1
Registry: https://index.docker.io/v1/
è¿œå ã®ç°å¢ã®è©³çŽ°ïŒAWSãVirtualBoxãç©çãªã©ïŒïŒ
åé¡ãåçŸããæé ïŒ
1.1ã
2.2ã
3.3ã
åãåã£ãçµæã説æããŠãã ããã
docker0ã¯ãªããããªããžã²ãŒããŠã§ã€ãä»ããŠdockerãã¹ãã§å®è¡ãããŠãããµãŒãã¹ã«æ¥ç¶ããæ¹æ³ã¯ãŸã£ãããããŸããã
ç§ã¯ããããã¹ãŠè©Šãã倢äžã«ãªã£ãŠãããšæã£ãã®ã§ãubuntuãã¹ãã§ãŸã£ããåãããšãåé¡ãªãè©ŠããŸãã
æåŸ
ããçµæã説æããŠãã ããã
ãããããããã³ã°ããã«ãããŒã«ã«ã®Redisããã®ä»ã®ãµãŒãã¹ã«æ¥ç¶ã§ããããã«ããããšæããŸã...
virtualboxãŸãã¯ãã¹ãã§IPãèŠã€ããŸãããïŒ
docker0ã¯virtualboxVMäžã«ãã£ããšæããŸãã
ããŒã¿çã§ãããVMãä»ããŠãã®äœæ¥ãè¡ããªãMacçšã®Dockerã«ã€ããŠè©±ããŠãã
ç§ããŸã£ããåãåé¡ã«çŽé¢ããŠããŸãã 以äžã®ã³ãã³ãã䜿çšããŠãDockerãã·ã³äžã®ãã¹ãã®IPã¢ãã¬ã¹ãèŠã€ããŸããã 0.0.0.0ããã¹ããè¡šããšä»®å®ããŠãããã§ééã£ãŠããå Žåã¯ä¿®æ£ããŠãã ããã
netstat -nr | grep '^ 0.0.0.0' | awk '{print $ 2}'
172.17.0.1
ããããç§ãWebãµãŒããŒãå®è¡ããŠããããŒãã§ãã®IPãã«ãŒã«ãããšãæ¥ç¶ãæåŠãããŸãã
ã«ãŒã«172.17.0.1ïŒ9000
curlïŒïŒ7ïŒ172.17.0.1ããŒã9000ãžã®æ¥ç¶ã«å€±æããŸããïŒæ¥ç¶ãæåŠãããŸãã
é©åãªä¿®æ£ãååŸããæ¹æ³ãããããªãã ããã¯ããã¹ããã·ã³ã§å®è¡ããããµãŒãã¹ã«æ¥ç¶ããå¿
èŠããããããåé¡ãåŒãèµ·ãããŠããããã§ãã
ãŸããDOCKER_OPTSã§èšå®ããããšã«ããããã¹ããã·ã³ã®IPã¢ãã¬ã¹ãä¿®æ£ããæ¹æ³ãèŠã€ããŸããã
DOCKER_OPTS = "-H tcpïŒ//0.0.0.0 ïŒ5000 -H unixïŒ///var/run/docker.sock --bip = 172.17.42.1 / 16"
ããããMacã®ã©ãã«ãã®ãªãã·ã§ã³ã眮ãããšãã§ããŸããïŒ ubuntuã§ã¯ã/ etc / default / dockerã«é 眮ã§ããŸãã
ãããMacã§ä¿®æ£ã§ããå Žåã¯ãæ瀺ãå ¥åããŠãã ããã
ping @ justincormackããããããã«ããã€ãã®ãã³ãããããŸãã
@MiteshSharmaæ£ç¢ºã«
@NinoFlorisç§ãã¡äºäººã¯ãŸã£ããåãå Žæã®ããã§ãã ç§ã®å Žåããã¹ããã·ã³ã§mysqlãå®è¡ããŠããŸãã
ããã¿ããªã
誰ãããããè¡ãããšãã§ããå Žåã¯æŽæ°ããŠãã ããã
ããã䜿ã£ã
https://docs.docker.com/engine/installation/mac/
ããŒã¿çã«ç¹å¥ãªãã®ããããã©ããããããªã
@HackTodayã¯éããŸããããã¯VirtualBoxããŒã¹ã®Macã€ã³ã¹ããŒã«ã§ãã Docker forMacã¯beta.docker.comã«ãããŸã
ããããšã@thaJeztahé¢é£ãã
@HackToday https://blog.docker.com/2016/03/docker-for-mac-windows-beta/ã«ã¯ããå°ãå€ãã®æ å ±ããããããã¥ã¡ã³ãããããŸãããããã¯ããŒã¿çã䜿çšããŠããå Žåã®ã¿ã ãšæããŸãã https://beta.docker.com/docs/ã ããŒã¿çã«ãµã€ã³ã¢ããããå Žåã¯ããpingããéã£ãŠãã ããã ç§ã¯ããªããå¯çš¿è ãšããŠåªå ãªã¹ãã«èŒããããšè©Šã¿ãããšãã§ããŸãïŒsmileïŒ
ãã@thaJeztahããããšããç§ã¯ãããèªç±ã«åããŠè©Šãããšãã§ãããšæããŸããã è²¢ç®ããããã«ç¹å¥ãªãã®ã¯å¿ èŠãããŸããã è©Šãåã«ããŸããã®ããã°ãèªãã§ç解ããŸãã ðº
@HackTodayã¯å®å šã«ç¡æã§ããããŒã ãå§åããªãããã«ããå€ãã®ãŠãŒã¶ãŒã===ãå€ãã®ãµããŒã質åãããããããæåã«ããã©ã€ããŒããããŒã¿ãšããŠãªãªãŒã¹ããããšã決å®ãããŸããïŒsmileïŒ
ããã«ã¡ã¯ãã¯ããçŸåšãMacããdocker0
ããªããžã«ã«ãŒãã£ã³ã°ããæ¹æ³ã¯ãããŸããã åŸã§è¿œå ã§ããå ŽåããããŸãããéåžžã¯ã³ã³ããããæ¥ç¶ããããããŒããå
¬éããŠæ¥ç¶ããããšããå§ãããŸãã ããã¯ããã¹ãããæ¥ç¶ã§ããªãLinuxã®DockerãªãŒããŒã¬ã€ãããã¯ãŒã¯ã®å Žåãšåãã§ãã
Macã¯éåžžæ¬çªãµãŒããŒã§ã¯ãªãã®ã§ãããŸãæºè¶³ã®ãããã®ã§ã¯ãããŸããã
éçºãã·ã³ã
ç§ã®çç£æ©æ¢°ã§ã¯ãç§ã¯ã§ããªããšããåé¡ãæ°ã«ããŸãã
ãã¹ãã«æ¥ç¶ããŸãã
ããããå
éšããåããã¹ãäžã®ãµãŒãã¹ã«æ¥ç¶ããéçºãã·ã³ã§ã¯
ã³ã³ããã¯ãŸãã«ãã®æ©èœãæãŸããã·ããªãªã§ã
æãã
ãã®docker0ã€ã³ã¿ãŒãã§ãŒã¹ã¯ããdocker + on hostïŒfrom hostïŒrunningappsãç°å¢ã§äœ¿çšããããã«ãå¿ èŠã§ãã
çŸåšã®æåã®è§£æ±ºçã¯ãå¥ã®ã³ã³ãããŒããã³ã³ãããŒã«æ¥ç¶ããããšã§ãã çŸåšãAppleããŸã 解決ããŠããªãOSXã®åé¡ã®ããããããã®ã³ã³ãããžã®ã«ãŒãã£ã³ã°ãæäŸããæ¹æ³ã¯ãããŸããã ãã®èŠä»¶ã远跡ããŠããŸãããçŸæç¹ã§ã¯äœãã§ããŸããã
äžèšã®ã³ã¡ã³ãã¯æ£ç¢ºã§ããïŒ
docker-for-mac-betaã³ã³ãããŒå
ãããdockerãã¹ããèŠã€ããŠéåžžã®172.17.0.1
ã¢ãã¬ã¹ã«æ¥ç¶ã§ããããšãããããŸããïŒãµãŒãã¹ã0.0.0.0
ãã€ã³ããããŠãããšä»®å®ïŒã
@igraysonããã¯ãã³ã³ãããŒã
åé¡ã¯ãOSXããVMããããžã®ã«ãŒãã£ã³ã°ã§ãã
åé¡ã¯ãOSXããVMããããžã®ã«ãŒãã£ã³ã°ã§ãã
ããã¯OPã®åé¡ã«ã€ããŠã®ç§ã®ç解ã§ã¯ãããŸããïŒ
ãããããããã³ã°ããã«ãããŒã«ã«ã®Redisããã®ä»ã®ãµãŒãã¹ã«æ¥ç¶ã§ããããã«ããããšæããŸã...
docker-for-mac-betaãå®è¡ããŠããŸãããredisããã®ä»ã®ããŒã«ã«ãµãŒãã¹ïŒOSXã§å®è¡äžïŒã«0.0.0.0
ã§ãªãã¹ã³ããDockeråãããã¢ããªã172.17.0.1
æ¥ç¶ããããšã§ãåé¡ãªãæ¥ç¶ã§ããŸãã
ç§ã¯åãåé¡ãæ±ããŠããŸãã DockerããŒãžã§ã³1.11.1-beta14 (build: 8670) 984649fbd63d53a62b34f08b59694d4d569b74d5
ãŸãã ç§ã®pinata doctor
ã¯ããã¹ãŠã倧äžå€«ã ãšèšã£ãŠããŸãã
ãã¹ãã§å®è¡ãããŠãããµãŒãã¹ãããšãã°ããŒã3001
ã§ãªãã¹ã³ããŠããExpressJSã¢ããªã±ãŒã·ã§ã³ãã³ã³ãããŒå
ããã«ãŒã«ãããããšã¯ã§ããŸããã
root<strong i="11">@e19fc8e02595</strong>:/# curl localhost:3001
curl: (7) Failed to connect to localhost port 3001: Connection refused
root<strong i="12">@e19fc8e02595</strong>:/# curl 0.0.0.0:3001
curl: (7) Failed to connect to 0.0.0.0 port 3001: Connection refused
root<strong i="13">@e19fc8e02595</strong>:/# curl 172.25.8.25:3001
{"status":200}
root<strong i="14">@e19fc8e02595</strong>:/#
_æ³šïŒ 172.25.8.25
ã¯ç§ã®WiFiIPã§ãã_
$pinata list
These are advanced configuration settings to customize Docker.app on MacOSX.
You can set them via pinata set <key> <value> <options>.
ð³ hostname = docker
Hostname of the virtual machine endpoint, where container ports will be
exposed if using nat networking. Access it via 'docker.local'.
ð³ hypervisor = native (memory=4, ncpu=6)
The Docker.app includes embedded hypervisors that run the virtual machines
that power the containers. This setting allows you to control which the
default one used for Linux is.
âž native: a version of the xhyve hypervisor that uses the MacOSX
Hypervisor.framework to run container VMs. Parameters:
memory (VM memory in gigabytes), ncpu (vCPUs)
ð³ network = hostnet (docker-ipv4=192.168.65.2, host-ipv4=192.168.65.1)
Controls how local containers can access the external network via the
MacOS X host. This includes outbound traffic as well as publishing ports
for external access to the local containers.
âž hostnet: a mode that helps if you are using a VPN that restricts
connectivity. Activating this mode will proxy container network
packets via the Docker.app process as host socket traffic.
Parameters: docker-ipv4 (docker node), host-ipv4 (host node)
âž nat: a mode that uses the MacOS X vmnet.framework to route container
traffic to the host network via a NAT.
ð³ filesystem = osxfs
Controls the mode by which files from the MacOS X host and the container
filesystem are shared with each other.
âž osxfs: a FUSE-based filesystem that bidirectionally forwards OSX
filesystem events into the container.
ð³ native/port-forwarding = true
Expose container ports on the Mac, rather than the VM
âž true: Container ports will be exposed on the Mac
âž false: Container ports will be exposed on the VM
ð³ daemon = run 'pinata get daemon' or 'pinata set daemon [@file|-]>
JSON configuration of the local Docker daemon. Configure any custom
options you need as documented in:
https://docs.docker.com/engine/reference/commandline/daemon/. Set it
directly, or a <strong i="20">@file</strong> or - for stdin.
åæ§ã®åé¡ãããã172ã* ipsã䜿çšãããšã0.0.0.0ã«ãã€ã³ããããããŒã«ã«mysqlã€ã³ã¹ã¿ã³ã¹ã«æ¥ç¶ã§ããŸããã§ããã
ãã¹ããã·ã³ããã«ãŒãã£ã³ã°å¯èœãªä»»æã®IPã¢ãã¬ã¹ã§æ¥ç¶ã§ããŸããã ifconfig
ãããŠããªãã®ãã®ã®1ã€ãèŠã€ããŠãã ããã
ã§ã¯ããããåçã«ã³ã³ããã«åã蟌ãã«ã¯ã©ãããã°ããã§ããïŒ
172.17.0.1ãè©ŠããŠãã@Kazanz ïŒããŒã«ã«/
ping @londoncalling ^^
ããã«ã€ããŠäœããã¥ãŒã¹ã¯ãããŸããïŒ UbuntuïŒãã¹ãïŒã§ã¯ã0.0.0.0ããªãã¹ã³ããã³ã³ãããŒå
ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãIP 172.17.*.*.
ã䜿çšããŠãã¹ãããæ¥ç¶ã§ããããã§ãã ãããã£ãŠãã³ã³ããã®å®è¡æã«ããŒããå
¬éããå¿
èŠã¯ãããŸããã
Docker for Mac Betaã§ã¯ãdocker0ããªãããããããè¡ãããšã¯ã§ããŸããã æçµãªãªãŒã¹ã§ä¿®æ£ãããããšãé¡ã£ãŠããŸã:)
@thaJeztah @astasoftä»æ¥èª¿ã¹ãŠã¿ãŸããããããšã@
ç§ã®ç解ã§ã¯ãããªãã®åé¡ã¯ã³ã³ããããMacäžã§å®è¡ãããŠãããµãŒãã¹ã«ã¢ã¯ã»ã¹ããããšã§ãã
ãã®å Žåã¯ãen0ã€ã³ã¿ãŒãã§ãŒã¹ã«ãã£ãŠå
¬éãããŠããIPã¢ãã¬ã¹ã䜿çšããŠãããè¡ãããšãã§ããŸãã
ifconfig en0 | grep "inet" | ã«ãã-d "" -f2
ããšãã°ãMacã®ããŒã80ã§WebãµãŒããŒãå®è¡ããŠããå ŽåïŒ
docker run -it tutum / curl curl ifconfig en0 | grep "inet " | cut -d " " -f2
https://github.com/chanezon/docker-tips/blob/master/x11/README.mdã®X11ãµãŒããŒã®å Žåãšåæ§ã«ããã®IPãç°å¢å€æ°ã«èšå®ããã³ã³ãããŒã«æž¡ãããšãã§ããŸã
@chanezonãããæ©èœãããããšãã§ããŸããããæ¥ç¶ããŠãããããã¯ãŒã¯ã«ãã£ãŠãã®IPãé »ç¹ã«å€ãããããçæ³çãšã¯èšããŸããã ããŒã«ã«ã®Dockerããªããžãè¡šãéçIPãå€ããå°ãªããèšå®ããããšæã£ãŠããŸããã
@londoncallingããããšãã
@chanezonããããç§ã®å Žåã¯ãã¹ãããã³ã³ãããžã®ãµãŒãã¹ã«ã¢ã¯ã»ã¹ããŠããŸãã ãã¹ãã®ããŒã80ãšã³ã³ããã®åãããŒãã§WebãµãŒããŒãå®è¡ãããå ŽåããããŸãã ã³ã³ããããŒã80ããã¹ãã«å ¬éãããšããã¹ããã·ã³ã§WebãµãŒããŒãå®è¡ã§ããªããªããŸãã ãã®çš®ã®èšå®ã¯ç§ã®éçºã«ãšã£ãŠå€§ããªåé¡ã§ãã
ç§ã®çŸåšã®åé¿çã¯ãMacçšã®Docker Toolboxã«æ»ããVirtualboxã®Boot2Dockerã€ã³ã¹ã¿ã³ã¹ã§ããŒã転éãè¡ãããšã§ãã
sudo iptables -t nat -A PREROUTING -d 192.168.99.100/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.17.0.2:80
次ã«ãboot2docker IP 192.168.99.100:80ã䜿çšããŠãã³ã³ãããŒå ã®ãµãŒãã¹ãåŒã³åºãããšãã§ããŸãã
curl -i http://192.168.99.100
ã ããç§ã¯ãããããã«é¢é£ããŠãããããããªããšãã次ã®åé¡ãæ±ããŠããŸãã
æ確ã«ããããã«ãç§ã¯Docker Beta for Mac 1.12.0-beta21 (build: 10868)
ãŸãã
172.17.0.1
ã¢ãã¬ã¹ãå²ãåœãŠãããdocker0ã€ã³ã¿ãŒãã§ãŒã¹ããªããããåºæ¬çã«172.17.0.2
IPã¢ãã¬ã¹ã䜿çšããŠãã¹ãããã³ã³ãããŒã«æ¥ç¶ããããšã¯ã§ããŸããã
ã³ã³ããã¯ubuntuã€ã¡ãŒãžã§ãããããã«ãããã¯ãŒã¯é¢é£æ å ±ããããŸã
root<strong i="12">@app</strong>:~# ifconfig
eth0 Link encap:Ethernet HWaddr 02:42:ac:11:00:02
inet addr:172.17.0.2 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:524 errors:0 dropped:0 overruns:0 frame:0
TX packets:370 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:217502 (217.5 KB) TX bytes:40451 (40.4 KB)
root<strong i="13">@app</strong>:~# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 172.17.0.1 0.0.0.0 UG 0 0 0 eth0
172.17.0.0 * 255.255.0.0 U 0 0 0 eth0
ãã¹ãã¯MacbookProã§ããã次ã®ã¹ããããã§ãããããã«ãIPã¢ãã¬ã¹172.17.0.1
æã€docker0
ïŒãŸãã¯ãã®åé¡ã®ã€ã³ã¿ãŒãã§ã€ã¹ïŒããªãããšãããããŸããããã¯ãã³ã³ãããŒã§æ¬¡ã®ããã«å²ãåœãŠãããŸããã²ãŒããŠã§ã€ã
robert<strong i="19">@localhost</strong> $ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8823<UP,BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
ether f4:5c:89:c9:be:0d
nd6 options=1<PERFORMNUD>
media: autoselect (<unknown type>)
status: inactive
en1: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
options=60<TSO4,TSO6>
ether 6a:00:02:06:b7:f0
media: autoselect <full-duplex>
status: inactive
en2: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
options=60<TSO4,TSO6>
ether 6a:00:02:06:b7:f1
media: autoselect <full-duplex>
status: inactive
p2p0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 2304
ether 06:5c:89:c9:be:0d
media: autoselect
status: inactive
awdl0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> mtu 1484
ether 0e:f1:f1:4d:46:88
nd6 options=1<PERFORMNUD>
media: autoselect
status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=63<RXCSUM,TXCSUM,TSO4,TSO6>
ether f6:5c:89:9c:e6:00
Configuration:
id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
ipfilter disabled flags 0x2
member: en1 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 5 priority 0 path cost 0
member: en2 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 6 priority 0 path cost 0
nd6 options=1<PERFORMNUD>
media: <unknown type>
status: inactive
en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
ether 39:c9:87:45:22:ee
inet6 fe80::3ac9:86ff:fe40:22de%en4 prefixlen 64 scopeid 0x9
inet 192.168.1.123 netmask 0xffffff00 broadcast 192.168.1.255
nd6 options=1<PERFORMNUD>
media: autoselect (1000baseT <full-duplex,flow-control>)
status: active
äžéšã®ååã¯ãããUbuntuãã¹ãã§æ£ããåäœãããŠããã®ã§ãããã¯Macã®åé¡ãããŒã«ã«ç°å¢ã®ã©ã¡ããã ãšæããŸãã
äœãæ¡ãïŒ
@robertoestivillã¯æ£ç¢ºãªãŠãŒã¹ã±ãŒã¹ã«ã€ããŠã¯localhost:port
ä»ããŠã¢ã¯ã»ã¹ã§ããŸãã
@nikdaviså®å®ããIPãå¿
èŠãªå Žåã¯ãMacã®lo0
ã«ãŒãããã¯ã€ã³ã¿ãŒãã§ã€ã¹ã«IPïŒã«ãŒãã£ã³ã°ããããšã®ãªããã®ïŒãè¿œå ããŠäœ¿çšã§ããŸãã
ããã«ã¡ã¯ãç§èŠã§ããããã¯Linuxäžã®dockerãšã¯ããªã倧ããªéãã§ãã åã«é©çšãããªãããã¥ã¡ã³ãããããããããŸãã ãŸããlo0ã«å¥ã®IPãæ¥ç¶ããæ¹æ³ãšããããç解ããã®ã«ååãªãããã¯ãŒã¯ç¥èããããŸããã ãã®åé¡ã®åé¿çïŒboot2dockerãå«ãŸãªãïŒã®èª¬æããããããã¥ã¡ã³ãã«èšèŒãããŠãããšéåžžã«åœ¹ç«ã¡ãŸãã
@justincormack @chanezonããã«ååããŠããã®åé¡ã«é¢ããåªããããã¥ã¡ã³ããå ¥æã§ããŸããïŒ
@ pourquoi42
次ã®ããã«ãlo0ã€ã³ã¿ãŒãã§ã€ã¹ã«å¥ã®IPãè¿œå ã§ããŸãã
CONTAINER_IP = $ïŒdocker inspect --format '{{ãNetworkSettings.IPAddress}}'ã³ã³ããåïŒ
ifconfiglo0ãšã€ãªã¢ã¹$ CONTAINER_IP
ãããåé€ããã«ã¯ïŒ
ifconfig lo0 -alias $ CONTAINER_IP
@itilkMacOã§ã¯åäœããªãããã§ãã names
ãšcontainer id
è©ŠããŠã¿ãŸããã
robert<strong i="9">@work</strong>:~ $ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d047790e196a group/name "/bin/bash" About a minute ago Up About a minute jovial_goodall
robert<strong i="10">@work</strong>:~ $ docker inspect --format '{{ .NetworkSettings.IPAddress }}' jovial_goodall
robert<strong i="11">@work</strong>:~ $ docker inspect --format '{{ .NetworkSettings.IPAddress }}' d047790e196a
robert<strong i="12">@work</strong>:~ $
ããŒãŠã£ã³ã§Docker1.12.0ïŒãã«ã10871ïŒãå®è¡ããŠããŸããã
1ïŒãã¹ãŠã®Dockerã³ã³ããã¯æ£åžžã«æ©èœããŸãã
2ïŒã³ã³ããã¯ãã¹ããšéä¿¡ã§ã
3ïŒã³ã³ããéã®éä¿¡ã¯æ£åžžã«æ©èœããŸãã
docker0ä»®æ³ã€ã³ã¿ãŒãã§ã€ã¹ã¯ã©ãã«ãããŸããïŒ ãŸãã¯ããã¹ããã³ã³ããã«æ¥ç¶ãããæ¹æ³ã¯ãããŸããïŒ
ãããèªãã®ã¯æ²ããïŒ OSXã®æ¢ç¥ã®å¶é
Known Limitations
There is no docker0 bridge on OSX
Because of the way networking is implemented in Docker for Mac, you cannot see a docker0 interface in OSX. This interface is actually within HyperKit.
I canât ping my containers
Unfortunately, due to limtations in OSX, weâre unable to route traffic to containers, and from containers back to the host.
ã ããä»ã®ãšããããã¹ããã³ã³ããã«æ¥ç¶ããå¯äžã®æ¹æ³ïŒããŒããããã³ã°
Version 1.12.0-beta21 (build: 11019)
1ïŒãã¹ãŠã®Dockerã³ã³ããã¯æ£åžžã«æ©èœããŸãã
2ïŒã³ã³ããããã¹ããšéä¿¡
3ïŒã³ã³ããéã®éä¿¡ã¯æ£åžžã«æ©èœããŸãã
4ïŒ docker0
ã¯å©çšã§ããŸããã
Ad.2ïŒ
ããŒã1313
0.0.0.0
ã«ãã€ã³ãããhugoã€ã³ã¹ã¿ã³ã¹ããããŸãã å®è¡äžã®ã³ã³ããå
ããã®curl
ã¯ã curl: (7) Failed to connect to 172.19.0.1 port 1313: Connection refused
è¿ããŸãã
ifconfig en0 | grep "inet " | cut -d " " -f2
ã«ãã£ãŠè¿ãããIPã¢ãã¬ã¹ã䜿çšããŠãæ©èœããŸããã
curl: (7) Failed to connect to 172.19.27.228 port 1313: No route to host
ã
ããã«ã¡ã¯ãã¿ããªã
ç§ã¯ä»ã®ã³ã³ãã補åïŒ dockerã§ã¯ãªãïŒããã®èšäºãèŠã€ããŸããïŒ https ïŒ
æåŸã«ãããã¯èšåããŸãïŒ
äžèšã®ããŒããã©ã¯ãŒãã£ã³ã°ã®ä»£ããã«ã«ãŒãã£ã³ã°ã䜿çšããŠãã³ã³ããå ã®ã¢ããªã«ã¢ã¯ã»ã¹ããããšãã§ããŸãã ã«ãŒãã£ã³ã°ã«ãããVMå ã®ã³ã³ãããµããããå šäœããã¹ãã§äœ¿çšã§ããããã«ãªããŸãã
ããŒããã©ã¯ãŒãã£ã³ã°ã®ä»£ããã«ã«ãŒãã£ã³ã°ã䜿çšãããå Žåã¯ããããã©ã®ããã«æ©èœãããã§ãã ã«ãŒãã£ã³ã°ã³ãã³ãã¯ãã¹ãäžã§å®è¡ããå¿ èŠããããŸãã
VM IPã192.168.64.3ã§ãã³ã³ãããµããããã10.0.3.0/24ã®å Žåã次ã®ãããªã³ãã³ãã§ã«ãŒããäœæã§ããŸãã
sudo route -n add 10.0.3.0/24 192.168.64.3
Xyhveã¯ãVMãããã¯ãŒãã³ã°çšã«bridge100ã€ã³ã¿ãŒãã§ã€ã¹ãèªåçã«äœæããŸãã ã¯ã€ãã¯ifconfigãå®è¡ããŠãã€ã³ã¿ãŒãã§ã€ã¹bridge100ããªã³ã«ãªã£ãŠããããšã確èªããŸãïŒäŸïŒen4ïŒã次ã«ã以äžã®ã³ãã³ããå®è¡ããŸãã
sudo ifconfig bridge100 -hostfilter en4
ããã§ãVMå ã®ä»»æã®ã³ã³ãããŒã«ãã¹ãããçŽæ¥pingã§ããããã«ãªããŸãã
ping 10.0.3.175
ãã¹ããã©ãŠã¶ã§ã¢ããªã«ã¢ã¯ã»ã¹ããã«ã¯ãäžèšã®ããã«ããŒã転éã䜿çšããŠãã¹ãäžã®/ etc / hostsãã¡ã€ã«ãç·šéããŸãããä»åã¯ã³ã³ããIPãã¢ããªã®URLã«é¢é£ä»ããŸãã
Linuxãããã¯ãŒã¯ã«é¢ããç¥èãã»ãšãã©ãªãã®ã§ç³ãèš³ãããŸããããåé¿çã¯ãããŸããïŒ
xhyveå ã§å®è¡ãããŠããvmïŒalpine with dockerïŒã®IPã¢ãã¬ã¹ãååŸããæ¹æ³ãããããŸãããäœãã¢ã€ãã¢ã¯ãããŸããïŒ
ããã«ã¡ã¯@Kaijun ãç§ã¯Docker Machineãã€ã³ã¹ããŒã«ããŠããŸããã§ããããããŠããªãã®bridge100ã¯ã©ãããæ¥ãŸãããïŒ
@junjiemarsããããç§ãæçš¿ããèšäºã¯Dockerãšåºæ¬çã«åãã¢ãããŒãã§æ©èœããå¥ã®ã³ã³ãããŒè£œåã§ãã ïŒãã¹ã-> VMïŒxhyveïŒ->ã³ã³ããïŒ
ãã®èšäºãŸãã¯ãã®è£œåããã€ã³ã¹ãã¬ãŒã·ã§ã³ãåŸãŠãdockerèªäœã«ãåãåé¿çãé©çšã§ãããã©ãããèããŸããã
@ Kaijun ã æãéããæ¹æ³ããããããããªãããšãç§ã¯ç¥ã£ãŠããŸããããããªããããããããªããããªãã®ãããã³ã°ãå ±æããŠãã ããã
@nikdaviså®å®ããIPãå¿ èŠãªå Žåã¯ãMacã®lo0ã«ãŒãããã¯ã€ã³ã¿ãŒãã§ã€ã¹ã«IPïŒã«ãŒãã£ã³ã°ããããšã®ãªããã®ïŒãè¿œå ããŠäœ¿çšã§ããŸãã
@justincormackãããéæããæ¹æ³ããã£ãšæ£ç¢ºã«ããŠ
@itilkãæçš¿ãããã®ãè©ŠããŸãããã
äžè¬çã«èšãã°ïŒMacããŒã¿çã®Dockerã«docker0ãããã¯ãŒã¯ãåå°å ¥ããããã®ETAã¯ãããŸããïŒ
THX
@georgehrkeããªãã¯sudo ifconfig lo0 alias 10.200.10.1/24
ãããããšãã§ããŸã-æããã«ããªããããŒã«ã«ã§èŠã€ããããšããªãã¢ãã¬ã¹ãéžãã§ãã ããã 次ã«ããããã¯ãŒã¯ã«æ¥ç¶ããŠãããã©ããã«é¢ä¿ãªãããã®ã¢ãã¬ã¹ã䜿çšããŠãã¹ããšéä¿¡ã§ããŸãã
ç§ã®åé¡ãããæ£ç¢ºã«è¿°ã¹ãŠããªãããšããè©«ã³ããŸãã
ã³ã³ãããããã¹ãã«æ¥ç¶ããããšã¯ããŠããŸãããããã®éã§ãã
ãã¹ãããã³ã³ããã«çŽæ¥æ¥ç¶ã§ããŸããã
ç§ã¯IPãååŸããããã«docker inspect container_name
ã䜿çšããŠããŸããã
ããããDockerfileã«WebãµãŒããŒãšEXPOSE 80
ããŠããŠããpingãå®è¡ãããããã©ãŠã¶ãŒã§éãããããããšã¯ã§ããŸããã
ã¯ãã2ã€ã®å¥ã ã®åé¡ãããããããã¯å€å°é¢é£ããŠããŸãã
çŸåšã®æšå¥šäºé
ã¯ãæªäœ¿çšã®IPãMacã®lo0
ã€ã³ã¿ãŒãã§ã€ã¹ã«æ¥ç¶ããããšã§ãïŒäŸïŒ sudo ifconfig lo0 alias 10.200.10.1/24
ïŒããµãŒãã¹ããã®ã¢ãã¬ã¹ãŸãã¯0.0.0.0
ïŒã€ãŸãã 127.0.0.1
ã¯ãªãïŒã§ãªãã¹ã³ããŠããããšã確èªããŠãã ããã
çŸåšã®æšå¥šäºé ã¯ãããŒããå ¬éããããå¥ã®ã³ã³ãããŒããæ¥ç¶ããããšã§ãã ã³ã³ãããããªããžãããã¯ãŒã¯ã§ã¯ãªããªãŒããŒã¬ã€ãããã¯ãŒã¯äžã«ããå Žåããããã¯ã«ãŒãã£ã³ã°ãããªããããããã¯Linuxã§ãå®è¡ããå¿ èŠãããããšã«æ³šæããŠãã ããã
ãããã¯çæ³çã§ã¯ãªãããšã¯ç解ããŠããŸãããããã€ãã®åé¡ããããŸããç¹ã«ã10.12ã§ã®ã¿ä¿®æ£ããããµããŒããããŠãããã¹ãŠã®OSXã§ããããµããŒãã§ããªãã£ãããšãæå³ããéãããã¯ããŒããããŠããªãOSXã®ãã°ã§ããããŒãžã§ã³ã ããã«ããã®ãããã¯ãŒã¯èšå®ã«ã¯ãDocker for Macã§å®å šã«åé¿ããããšããŠããã«ãŒãã¢ã¯ã»ã¹ãå¿ èŠã«ãªããŸãïŒçŸåšãåé€ããããšããŠããéåžžã«å°ããªã«ãŒããã«ããŒããããŸãïŒã
ïŒ @londoncallingãã®èŠçŽãããã¥ã¡ã³ãã«è¿œå ããŸããïŒïŒ
@justincormackããªãã¯--net=host
ã圹ã«ç«ããªããšããæå³ã§ããïŒ
@ m1omeããã¯å®å šã«åœ¹ã«ç«ããªãããã§ã¯ãããŸãã-ããŒããVMã§éãããŠããã®ã§ãä»ã®ã³ã³ãããŒããããã§å®è¡ããŠãããµãŒãã¹ã«æ¥ç¶ã§ããŸãããå ¬éãããããŒãã®ããã«Macã§å©çšã§ãããµãŒãã¹ãæåŸ ãããŠããŸããããã¯ããªãè€éãªã®ã§ããŸã æ©èœããŸãïŒdockerã€ãã³ãã䜿çšããå ¬éããŒããšã¯ç°ãªãããã®ããã«éããããŒãã®ã€ãã³ããã£ãŒãã¯ååŸããŸããïŒã
@justincormackã¯ãå°ãªããšãä»ã®ãšããããã®åé¡ã®åé¿çã§ãã Dockerã«ãããããå Žåã¯ãããã¥ã¡ã³ãã«æžãçããŠãããšéåžžã«äŸ¿å©ã ãšæããŸãã
@justincormackç§ã¯ããªãã®æžã蟌ã¿ãããã¥ã¡ã³ãã«è¿œå ããããšãã§ããŸãããããã€ãã®ç¹å®ã®äŸãå«ããå¿ èŠããããšæããŸãã èªåã§è©ŠããŠã¿ãŸãããããããããªããä»ã®èª°ãã®å©ããå¿ èŠã§ãããã äœæ¥ãé²ããŠããäžã§ãæãè¿ããé£çµ¡ããããŸãã
@londoncallingã¯ç¢ºãã«ããªãã«ããã€ããéããŸãã
2016幎8æ30æ¥ååŸ6æ28åãããã¯ããªã¢ã [email protected]ã¯æ¬¡ã®ããã«æžããŠããŸãã
@justincormackhttps ïŒ//github.com/justincormackç§ã¯ããªãã®æžã蟌ã¿ãè¿œå ããããšãã§ããŸã
ããã¥ã¡ã³ãã«ããããç§ãã¡ã¯ããã€ãã®ç¹å®ã®äŸãå«ããå¿ èŠããããšæããŸãã ç§ãè©ŠããŠã¿ãŸã
èªåã§ãããåºããŸãããããããããªããä»ã®èª°ãã®å©ããå¿ èŠã«ãªãã§ãããã ããŸã
ç§ããããåŠçãããšããããã«ã€ããŠããªãã«æ»ã£ãŠãã ãããâ
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/docker/docker/issues/22753#issuecomment -243515932ã
ãŸãã¯ã¹ã¬ããããã¥ãŒãããŸã
https://github.com/notifications/unsubscribe-auth/AAdcPPgFU3H6TZCLcI0yUvbPn4tPwZj7ks5qlGhUgaJpZM4Ie9PB
ã
@justincormackããããšã-ãã®ã¹ã¬ãããèãããšã以äžã«ç€ºãããã«ãå°ãªããšã2ã€ã®äŸãå Žåã«ãã£ãŠã¯3ã€ã®äŸãå¿ èŠã ãšæããŸãã ã©ãæããŸããïŒ
nginx
ãããªWebãµãŒããŒã«ããããšã¯æ©èœããŸããïŒïŒrun
ã³ãã³ãã§ããŒããå
¬éããŠãããããçŸåšã®nginx
äŸã¯2çªç®ã®ã±ãŒã¹ãã«ããŒããŠããŸããã ã€ãŸãã docker run -d -p 80:80 --name webserver nginx
ïŒ @justincormackã§ããã以äžã®@weaverã®ã³ã¡ã³ãnginx
ãšredis
äŸãç¹°ãè¿ããŸãããä»åã¯ã³ã³ããã§redisãå®è¡ããŸããïŒAn example of connecting to a container from the Mac. Does our current nginx example cover the second case, since we expose a port in the run command; i.e., docker run -d -p 80:80 --name webserver nginx?
MacããããŒããããã³ã°ãå«ãŸãªãã³ã³ããã«æ¥ç¶ããäŸãæ¬åœã«ããã ããã°å¹žãã§ãã ç§ã®ãŠãŒã¹ã±ãŒã¹ã¯ãããŒã«ã«éçºçšã®mesosã¯ã©ã¹ã¿ãŒãå®è¡ããŠããŸãã ããŒããããã³ã°ãMacããã³ã³ããïŒã¹ã¬ãŒãïŒãžã®çŽæ¥éä¿¡ãå®çŸããå¯äžã®æ¹æ³ã§ããå ŽåãMacããã®ã¢ã¯ã»ã¹ïŒãããã°ã®ããã«ãã°ã衚瀺ãããäŸïŒã¯ãmesosãå éšã§äœ¿çšããããŒããšäžèŽããŠããŸãïŒããã§ãªãå Žåãmesosãã¬ãŒã ã¯ãŒã¯ã¯URLãããã¹ãããã¯æ©èœããªãå éšããŒãçªå·ãæã€ããã·ã¥ããŒãã«ã¬ã³ããªã³ã°ããŸãïŒã
çŸåšãMacããä»®æ³ãããã¯ãŒã¯ãžã®ã«ãŒãã§docker-machineã䜿çšããŠãããããmesosã¯ã©ã¹ã¿ãŒã䜿çšãããã¹ãŠã®IPã¢ãã¬ã¹ãšããŒãçªå·ã¯Macãããæ£åžžã«æ©èœãããŸãã ããã¯éåžžã«ç°¡åãªè§£æ±ºçã§ãã
@weaverã§è¿°ã¹ãããã«ãå ¬éãããããŒãããªãå Žåããã¹ãããçŽæ¥ã³ã³ãããŒã«æ¥ç¶ããçŸåšã®æ¹æ³ã¯ãããŸããã ãã ããå¥ã®ã³ã³ããããæ¥ç¶ããããšã¯ã§ããŸãã
@justincormack Linuxã®å Žåãšåãããã«ãMacããã³ã³ãããŒã«æ¥ç¶ããæ¹æ³ãç解ããããšããŠãããã¹ãŠã®ã¹ã¬ãããèªã¿ãŸãããããšãã°container-ipïŒ8080ã§ãã ç§ãç解ããŠããéããããã¯MacOSïŒ10.12ïŒã§å¯èœã§ããã¯ãã§ãããïŒ
@matiasserranoããã¯ãããšãã°docker run -p 8080:8080
ããŒããããã³ã°ã§å®è¡ã§ããŸãã
@ m1omeã¯ããç§ã¯ãããç¥ã£ãŠããŸãã ããããç§ã«ãšã£ãŠã¯ã¹ã±ãŒã©ãã«ã§ã¯ãããŸããã ç§ã¯éçºè
ã§ãããéåžžã¯apache / Nginxã䜿çšããŠè€æ°ã®ã³ã³ãããŒãå®è¡ããŠãããããåžžã«80ã䜿çšãããŠããŸãã ããªããææ¡ããããšãããå Žåãæåã«Macã§Apacheãç¡å¹ã«ããå¿
èŠãããã次ã«åãããŒããå
±æãããããäžåºŠã«1ã€ã®ã³ã³ãããŒãå®è¡ããå¿
èŠããããŸãã ç°ãªãããŒãã䜿çšããããšã¯ãªãã·ã§ã³ã§ã¯ãããŸããã
äžæ¹ãéçºè
ã«ã³ã³ãããæž¡ããŠäœæ¥ãéå§ããŸãããŸããéçºè
ã¯åæã«è€æ°ã®ãããžã§ã¯ãã«åãçµãããšãã§ããŸãã
ãããã£ãŠãMacããã³ã³ããã«IPã䜿çšããŠæ¥ç¶ããå¯èœæ§ã¯ç§ãã¡ã«ãšã£ãŠå¿
é ã§ãã
@matiasserrano -P
ã䜿çšããŠãå
¬éãããããŒããä»»æã®é«ããŒãã«èªåçã«è»¢éããŠã¿ãŸãããïŒ docker inspect
ãããªãã®ãä»ããŠã³ã³ããIPãæ€çŽ¢ããŠããå Žåã¯ãå
¬éãããããŒãã«å¯ŸããŠéåžžã«é¡äŒŒããæäœãå®è¡ããããšãã§ããŸãã
@nathanleclaireåé¡ã¯ãããŒããã³ã³ããã®IPãç¥ãããšã§ã¯ãªããåºæ¬çã«åã®æçš¿ãšåã解決çã§ãã å¥ã®è§£æ±ºçã¯ããããžã§ã¯ãããšã«vagrant VMãäœæããå éšã§dockerãå®è¡ããããdocker-machineã䜿çšããããšã§ããããã¯åºæ¬çã«åãã§ãã ã©ã¡ãã®ãœãªã¥ãŒã·ã§ã³ãåãå ¥ããããŸããã 代ããã«Vagrantã䜿çšããããšããå§ãããŸãã
ãã®äŸ¡å€ã«ã€ããŠã¯ã @ weaverãšåæ§ã®ãŠãŒã¹ã±ãŒã¹ãããdocker0
ã€ã³ã¿ãŒãã§ã€ã¹ãä»ããŠéçã«ãŒããè¿œå ããŸãã
Spark UIã¯ãã¹ã¿ãŒããŒãã§äœ¿çšã§ããä»ã®ãã¹ãŠã®ã¯ã©ã¹ã¿ãŒããŒããžã®HTMLãªã³ã¯ãå«ãŸããŠããŸãïŒIPã¢ãã¬ã¹ãä»ããŠïŒã éçã«ãŒããè¿œå ããããšã§ãéçºãã·ã³ãããã¹ã¿ãŒã®Spark UIã«çŽæ¥ã¢ã¯ã»ã¹ã§ããã¯ã©ã¹ã¿ãŒå
ã®ä»ã®ããŒããžã®ãªã³ã¯ããã¹ãŠæ£åžžã«æ©èœããŸãã ãããã®ãªã³ã¯ã¯ããã¹ã¿ãŒãdocker0
ãªãã§åäœããããã«ããŒã7080ã転éããå Žåã ãã§ã¯ãªãããšãæå³ããŸããäœããã®æ¹æ³ã§ããããã¯ãŒã¯å
šäœã«å°éã§ããå¿
èŠããããŸãã
ä»ã®ãšããåé¿çã®1ã€ã¯ãè¿œå ã®ã³ã³ãããŒã§nginxãŸãã¯å¥ã®Webãããã·ãä»ããŠã¹ããŒãã«ãŒãã£ã³ã°ãå®è¡ããããšã ãšæããŸãããçŸæç¹ã§ã¯ãã®äŸã¯ãããŸããã
@nathanleclaireåé¡ã¯ãããŒããã³ã³ããã®IPãç¥ãããšã§ã¯ãªããåºæ¬çã«åã®æçš¿ãšåã解決çã§ãã
ããããŸããã
ããªãã¯èšãïŒ
ãããã£ãŠãMacããã³ã³ããã«IPã䜿çšããŠæ¥ç¶ããå¯èœæ§ã¯ç§ãã¡ã«ãšã£ãŠå¿ é ã§ãã
ç¹ã«ç°ãªãIPã¢ãã¬ã¹ã¯ãªãã§ããïŒ ããã§ã¯ãããŒãã®ç«¶åãåé¡ãšããŠèª¬æããŠããŸãã
ç§ã¯éçºè ã§ãããéåžžã¯apache / Nginxã䜿çšããŠè€æ°ã®ã³ã³ãããŒãå®è¡ããŠãããããåžžã«80ã䜿çšãããŠããŸãã ããªããææ¡ããããšãããå Žåãæåã«Macã§Apacheãç¡å¹ã«ããå¿ èŠãããã次ã«åãããŒããå ±æãããããäžåºŠã«1ã€ã®ã³ã³ãããŒãå®è¡ããå¿ èŠããããŸãã
-P
ã䜿çšãããšãå
éšã§ãã¹ãŠ80ããªãã¹ã³ããŠããå Žåã§ãã2ã€ã®ã³ã³ãããŒãåãããŒããå
¬éããããšã¯ãããŸããã ã§ã¯ããªãApacheãªã©ãç¡å¹ã«ããå¿
èŠãããã®ã§ããããã
å¥ã®è§£æ±ºçã¯ããããžã§ã¯ãããšã«vagrant VMãäœæããå éšã§dockerãå®è¡ããããdocker-machineã䜿çšããããšã§ããããã¯åºæ¬çã«åãã§ãã ã©ã¡ãã®ãœãªã¥ãŒã·ã§ã³ãåãå ¥ããããŸããã 代ããã«Vagrantã䜿çšããããšããå§ãããŸãã
Vagrantã䜿çšããããšã«åºå·ããDockerMachineãŸãã¯Dockerfor Macã䜿çšããªãå Žåã¯ããªãããã§ãã¡ã€ã«/ãã£ã¹ã«ãã·ã§ã³ããã®ã§ããïŒ
@nathanleclaire Linuxã§ã¯ãäœæããã³ã³ãããŒã䜿çšããŠãããšãã°ãããŒã80ãå ¬éãã4ã€ã®ã³ã³ãããŒãåæã«å®è¡ã§ããŸã
åã³ã³ããã«ã¯ãããšãã°192.100.200.1ã192.100.200.2ã192.100.200.3ã192.100.200.4ãªã©ã®IPããããŸãã
ãããã®IPã䜿çšããŠããã¹ãã/ etc / hostsãã¡ã€ã«ã«è¿œå ããããããã«ãšã€ãªã¢ã¹ãä»ããŸããäŸïŒ
192.100.200.1 magento.local
192.100.200.2 drupal.local
192.100.200.3 larabel.local
192.100.200.4 apache.local
次ã«ããã©ãŠã¶ããçŽæ¥ãµãŒããŒã«ã¢ã¯ã»ã¹ããŸãã
Macã§ã¯ãã³ã³ããããšã«IPãååŸã§ããªãããããããè¡ãããšã¯ã§ããŸããã -Pã䜿çšããããšã¯ã§ããŸãããããã¯ãã³ã³ãããŒããšã«ãšã€ãªã¢ã¹ãäœæãã代ããã«ãMagentoã®å Žåã¯localhostïŒ 8012 ãdrupalã®å Žåã¯localhostïŒ9823ãªã©ã䜿çšããå¿ èŠãããããã§ãã
å¥ã®åé¿çã¯ãå éšã§ã³ã³ãããŒãå®è¡ããããŒããããã³ã°80:80ã䜿çšããã³ã³ãããŒããšã«ãLinuxVMã§vagrantã䜿çšããããšã§ãã ãã®ãœãªã¥ãŒã·ã§ã³ã§ã¯ãdockerã«ã¯æå³ããããŸãããããã¯ãDockerã³ã³ãããŒãšåããã®ã䜿çšããŠVagrantãã·ã³ãäœæããå Žåãåãã§ããããã§ãã ïŒç§ã¯DockerãšVagrantã®éããç¥ã£ãŠããŸãããããŠç§ã¯Vagrantã®ä»£ããã«Dockerã100å奜ã¿ãŸã...ïŒ
ãã®ãŠãŒã¹ã±ãŒã¹ããã³ã³ããIPãååŸããããšããªãããã»ã©éèŠãªã®ããç解ããã®ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãã
ãã®äŸã¯ããŒã80ã䜿çšããŠããŸãããå¿ èŠãªããŒãã«é©çšã§ããŸãã
@matiasserrano OKãDNS /ãã¹ãåãããã³ã°ã®åžæã«é¢é£ããŠããã®ã§ã¯ãªãããšæããŸããã
åãåé¡ãçºçããŠããŸããïŒã³ã³ãããããã¹ãã«æ¥ç¶ããŠããŸãïŒã 192.168.65.1ã®äœ¿çšã¯ç§ã®ããã«åããã ãããäœã§ãããã¯å®å šã«ã¯ããããŸãããã
ð³ network = hostnet (docker-ipv4=192.168.65.2, host-ipv4=192.168.65.1) Controls how local containers can access the external network via the MacOS X host. This includes outbound traffic as well as publishing ports for external access to the local containers.
ïŒãããèŠããŠãããŠããããšã@feedthefire ïŒïŒ
Vagrantã䜿çšããããšã«åºå·ããDockerMachineãŸãã¯Dockerfor Macã䜿çšããªãå Žåã¯ããªãããã§ãã¡ã€ã«/ãã£ã¹ã«ãã·ã§ã³ããã®ã§ããïŒ
@nathanleclaireããã¯ããªã圹ã«ç«ããªãå¿çã§ãããããããã人ã ãåæããªãå Žåã§ãæå¥ãèšãã¹ãã§ã¯ãªããš
@cpoonollyã«æè¬ã
ã¿ãªãããããã«ã¡ã¯ã ãã®åé¡ã¯ããŸããŸãªæ¹åã«åºãã£ãŠãããDocker / Dockerã®ã¡ã³ãããåé¡ãéããŠãããã€ãã®ãµãåé¡ã«åå²ããããšããå§ãããŸãã ããšãã°ã1ã€ã¯D4M VMå ããMacã®IPã«å°éããããã®ãã®ã§ããã1ã€ã¯ã³ã³ãããŒããšã®IPã¢ãã¬ã¹æå®å¯èœæ§ã®ããã®ãã®ã§ãïŒãã ããããã¯åã«D4Mã§ãã€ãã£ãã«ã³ã³ãããŒDNS /ãã¹ãåãããã³ã°ããµããŒãããæ¹ããããšæããŸãïŒã ããã¯ããšã³ãžã³ãã®ãªããžããªã§ãããããDocker for Macãªããžããªã«ããå¯èœæ§ãé«ããçæ³çã«ã¯ããã©ãã«ãŒã«Linux / Windowsäžã®Engineã«é¢ãããã±ãããå«ãŸããŠããå¿ èŠããããŸãã
ãã®äŸ¡å€ã«ã€ããŠã¯ãDocker for Mac VMã«_ééããªã_ docker0
ããªããžããããŸãã --net host
ã³ã³ãããå®è¡ãã ifconfig
ãå®è¡ãããšãèªåã§ç¢ºèªã§ããŸãã ãã ããããã§ã®ããŸããŸãªåé¡ã¯ãå
ã®ã¿ã€ãã«ã瀺åãããã®ã§ã¯ãããŸãããã³ã³ãããšVMã®ãããã¯ãŒã¯ãšå¯èŠæ§ã«é¢ãããã®ã§ãã
@ icecrime @ justincormackã©ãæããŸããã çããããããšãã
@nathanleclaireããã¯ã¯ããã«è¯ãå¿çã§ããããããšãããããŠç§ã¯ããã€ãã®ãµãåé¡ã«åå²ããããšãããã§åé²ããè¯ãæ¹æ³ã§ããããšã«å®å šã«åæããŸã
åæããïŒïŒïŒïŒ ããããã°åé¡ãããŸããïŒ
@nathanleclaire @justincormackã¯ãåœé¢ã®éãããŒã¿25ããã¥ã¡ã³ãïŒæ¬æ¥å ¬éäºå®ãã¢ããªã®ãªãªãŒã¹ããå°ãé ããŠããŸãïŒã§ããããã¯ãŒã¯ãšFAQã®ãããã¯ã®åé¿çã«é¢ãããžã£ã¹ãã£ã³ãšãã€ãµã³ã®ææ¡ãæäŸããŸãã ããããã¹ãŠã®äººã®åé¡ã解決ããããã§ã¯ãªãããšãç§ã¯ç¥ã£ãŠããŸãããããã¯ããã¥ã¡ã³ãã§ããã€ãã®è§£æ±ºçãæäŸããåé¡ãèªããããšããå§ãŸããŸãã
ç«ææ¥ã«äºå®ãããŠãã次ã®ããŒã¿çã®
ã ããããªããè¿œå ããå Žå
192.100.200.1 magento.local
192.100.200.2 drupal.local
192.100.200.3 larabel.local
192.100.200.4 apache.local
/etc/hosts
ã次ã®ããšãã§ããŸãã
sudo ifconfig lo0 alias 192.100.200.1/24
sudo ifconfig lo0 alias 192.100.200.2/24
sudo ifconfig lo0 alias 192.100.200.3/24
sudo ifconfig lo0 alias 192.100.200.4/24
ãã®åŸ
docker run -p 192.100.200.1:80:80 magento
docker run -p 192.100.200.2:80:80 drupal
...
ããããã°ã drupal.local
ãªã©ã«çŽæ¥æ¥ç¶ã§ããã¯ãã§ãã
@londoncallingã¯ã次ã®ããŒã¿ããã¥ã¡ã³ãã®ããã«ãããææžåããå¿ èŠããããŸãã
@justincormack nitpickïŒãã®ãããã¯ã¯æ£ããã§ããïŒ
$ ifconfig lo0 alias 192.100.200.1/24
$ ifconfig lo0 alias 192.100.200.2/24
$ ifconfig lo0 alias 192.100.200.2/24
$ ifconfig lo0 alias 192.100.200.2/24
æåŸã®2ã€ã¯192.100.200.3
ãš192.100.200.4
ãŸããïŒ ãããŠããªãcidrå
šäœããšã€ãªã¢ã¹ããã®ã§ããïŒ 192.100.200.1/24
ã¯192.100.200.0
ãã192.100.200.255
å
šç¯å²ã§ãããïŒïŒ ããã¯ãã 1ã€ã®IPã§ããã¹ãã§ããïŒ
ç³ãèš³ãããŸããããã¿ã€ããã¹ã§ãã ã¯ãã /32
ãåé¡ãããŸããã
@justincormack DNSã¯ããã«GUIã€ã³ã¿ãŒãã§ã€ã¹ã«å«ãŸããŸããïŒ beta25ã¯ãŸã split-tunnelvpnãä»ããŠDNSåã解決ã§ããªããããMacãã¹ãã§dnsmasqãå®è¡ããããšæã£ãŠããŸããã ç§ã®Macã®ä»ã®ãã¹ãŠã®ããŒãã¯ãDNSã§ã¯ãªãã³ã³ããå ãã192.168.65.1çµç±ã§å°éå¯èœã§ãã
ãŸããdockerã/etc/resolv.confã«10åã®IP [192.168.65.1ãã10]ãèšå®ããã®ã¯ãªãã§ããïŒ
PSïŒ192.100.xxã¯å
¬éç¯å²ã§ããããã䜿çšããªãã§ãã ããã 192.168.xxã䜿çšãã
ã€ã³ã¿ãŒãã§ã€ã¹ã«DNSãè¿œå ããªãããã«ããŠããŸããã
Macããã®èšå®ã ãã¹ããã¡ã€ã«ãèªã¿åããŸããããã¹ãŠãèªã¿åããŸã
ããã«èšå®ã
ãã¹ããã¡ã€ã«ã¢ãã¬ã¹ã¯ãã¹ããã¡ã€ã«ãªãŸã«ããŒã«ããããããŸãããã©ããã³ã°
ãã§ã€ã«ãªãŒããŒãæ£ããæ©èœããããã«ããŸãã
2016幎9æ11æ¥ååŸ7æ9åããJijoVargheseã [email protected]ã¯æ¬¡ã®ããã«æžããŠããŸãã
@justincormack https://github.com/justincormackDNSã¯GUIã«å«ãŸããŸãã
ããã«ãã€ã§ãã€ã³ã¿ãŒãã§ãŒã¹ïŒ beta25ã¯ãŸã DNSåã解決ã§ããªããã
ã¹ããªãããã³ãã«VPNãä»ããŠMacãã¹ãã§dnsmasqãå®è¡ããããšæã£ãŠããŸããã ä»ã®ãã¹ãŠ
ç§ã®Macã®ããŒãã¯ãã³ã³ããå ãã192.168.65.1çµç±ã§ã¢ã¯ã»ã¹ã§ããŸãã
DNSã§ã¯ãããŸããããŸããdockerã/etc/resolv.confã«10åã®IP [192.168.65.1ãã10]ãèšå®ããã®ã¯ãªãã§ããïŒ
PSïŒ192.100.xxã¯å ¬éç¯å²ã§ããããã䜿çšããªãã§ãã ããã 192.168.xxã䜿çšããâ
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/docker/docker/issues/22753#issuecomment -246194539ã
ãŸãã¯ã¹ã¬ããããã¥ãŒãããŸã
https://github.com/notifications/unsubscribe-auth/AAdcPEQcEyn3w7BPJCeaz5mlbgJx5etTks5qpEPUgaJpZM4Ie9PB
ã
@justincormackã«æè¬ããŸãïŒ
ã¯ãã2ã€ã®å¥ã ã®åé¡ãããããããã¯å€å°é¢é£ããŠããŸãã
- ã³ã³ãããããã¹ãäžã®ãµãŒãã¹ã«æ¥ç¶ãããã Macã«ã¯å€æŽå¯èœãªIPã¢ãã¬ã¹ãããããããã¯ãŒã¯ã¢ã¯ã»ã¹ããªãå Žåã¯IPã¢ãã¬ã¹ããããŸããã
çŸåšã®æšå¥šäºé ã¯ãæªäœ¿çšã®IPãMacã®lo0ã€ã³ã¿ãŒãã§ã€ã¹ã«æ¥ç¶ããããšã§ãïŒäŸïŒsudo ifconfig lo0 alias 10.200.10.1/24
ïŒããµãŒãã¹ããã®ã¢ãã¬ã¹ãŸãã¯0.0.0.0ïŒã€ãŸãã127.0.0.1ã§ã¯ãªãïŒã§ãªãã¹ã³ããŠããããšã確èªããŠãã ããã ãã®åŸãã³ã³ããã¯ãã®ã¢ãã¬ã¹ã«æ¥ç¶ã§ããŸãã
çæ³çã§ã¯ãããŸããããããã¯ä»ã®ãšããããŸãããã¯ãã§ãã ïŒãã¹ãæžã¿ã§åäœäžïŒ
@justincormack
ã€ã³ã¿ãŒãã§ã€ã¹ã«DNSãè¿œå ããªãããã«ããŠããŸãããMacããèšå®ãèªã¿åãã ãã§ãã
VPNã®çµã¿åããã¯å€æ§ã§è€éã§ãããããåžžã«æ£ããèšå®ãèªã¿åãããšãã§ãããšèããã®ã¯è¿èŠçŒçã§ãã https://github.com/docker/for-mac/issues/19ïŒclosed ïŒã¯ãsplit-tunnelvpnã§ã¯ãŸã å£ããŠããŸãã ããã¯ããããDockerã®åé¡ã§ã¯ãªããVPNãµãŒããŒãsplit-dnãå®è¡ããæ¹æ³ã§ãã
å¥ã®äŸãšããŠã以åã®å Žæã§ã¯ãQAãšDevã®äººã ã«ãããããããç°å¢ã«å¿ããŠç°ãªãããŒã ãµãŒããŒãæãããã«æ瀺ããŸããã ãã®ã¿ã€ãã®ãã¹ããDockerå ã§ã®ã¿å¿ èŠãªå Žåãããã¯èæ ®ãã¹ãããã«å¥ã®ãŠãŒã¹ã±ãŒã¹ã§ãã ããããšãã
VPNã®ã¹ããªããããŒã ãµãŒããŒã®ãµããŒãã«åãçµãã§ããŸãã
2016幎9æ13æ¥ååŸ6æ48åããJijoVargheseã [email protected]ã¯æ¬¡ã®ããã«æžããŠããŸãã
@justincormack https://github.com/justincormack
ã€ã³ã¿ãŒãã§ã€ã¹ã«DNSãè¿œå ããªãããã«ããŠããŸããã
Macããã®èšå®ã
VPNã®çµã¿åããã¯å€æ§ã§è€éã§ããããã
åžžã«æ£ããèšå®ãèªã¿åãããšãã§ãããšä»®å®ããŸãã docker / for-macïŒ19
https://github.com/docker/for-mac/issues/19 ïŒã¯ããŒãºïŒã¯ãŸã å£ããŠããŸã
ã¹ããªãããã³ãã«VPNã§ç§ãã¡ã®ããã«ã ããã¯ããããDockerã®åé¡ã§ã¯ãªããã©ã®ããã«
ç§ãã¡ã®VPNãµãŒããŒã¯split-dnsãè¡ããŸããå¥ã®äŸïŒç§ã®åã®å Žæã§ã¯ãQAãšéçºè ã«ãã€ã³ãããããã«æ瀺ããŸã
ããããããç°å¢ã«å¿ããŠãããŸããŸãªããŒã ãµãŒããŒã«éä¿¡ããŸãã ãããããªã
ãã®ã¿ã€ãã®ãã¹ãã¯Dockerå ã§ã®ã¿å¿ èŠã§ããããããã¯ããã«å¥ã®çšéã§ã
èæ ®ãã¹ãã±ãŒã¹ã ããããšããâ
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/docker/docker/issues/22753#issuecomment -246764433ã
ãŸãã¯ã¹ã¬ããããã¥ãŒãããŸã
https://github.com/notifications/unsubscribe-auth/AAdcPDXx3ziQv81fPBXpQHvU7_j9YWKQks5qpuHdgaJpZM4Ie9PB
ã
@justincormackã«æè¬ããŸããåé¿çã䜿çšããŠã lo0
ã«ãšã€ãªã¢ã¹ããããšã§ããã¹ãŠã®ã³ã³ããã«çŽæ¥ã¢ã¯ã»ã¹ã§ããŸããããã«ãããDocker for MacïŒ+1ïŒã䜿çšã§ããããã«ãªããŸãã
docker-compose
ã䜿çšããŠã³ã³ãããŒãå®è¡ããŠãããããæåŸã®åé¡ã¯ãã³ã³ãããŒããšã«ããã¹ãäžã®æ£ããIPã¢ãã¬ã¹ã«ãã€ã³ãããããã«ããŒã転éãæ§æããå¿
èŠãããããšã§ãã ïŒ 0.0.0.0
ãã€ã³ããããšãè€æ°ã®ã³ã³ãããŒãããå Žåã«ããŒãã®ç«¶åãçºçããŸãïŒã
誰ãããããåé¿ããæ¹æ³ãèŠã€ãããã©ããã¯ããããŸãããïŒ -ã³ã³ãããèµ·åãããŸã§IPã¢ãã¬ã¹ãããããªããããdocker-composeconfigã«å¹æçã«è£éããå¿ èŠããããŸãã
ïŒããã§å ã®åé¡ããéžè±ããŠããããšã«æè¬ããŸãïŒã
@NoOrdInaryGuyããã¯ææ°ãªãªãŒã¹ïŒå®å®çãšããŒã¿çã®äž¡æ¹ïŒã§lo0
ã¢ãã¬ã¹ïŒã
@justincormackã¯ããæ£åžžã«æ©èœããããšã確èªã§ããŸãã å¯äžã®åé¡ã¯ã docker-compose
ã䜿çšããå Žåã§ãïŒç¹ã«ã¹ã±ãŒãªã³ã°ã®å ŽåããŸãã¯éçã¢ãã¬ã¹ãæ§æããã ãã§ãããšæããŸãïŒã ã³ã³ããã®èµ·ååŸã«ããŒããã©ã¯ãŒããè¿œå ããããšã¯ã§ããŸããããŸãããå®è¡æãã«å®éã®ã³ã³ããã®IPã¢ãã¬ã¹ãäœæãã¡ã€ã«/ Dockerfileã«åç
§ããæ¹æ³ãããããŸãããããã¯ãé çªã«å¿
èŠã ãšæããŸããæ£ããIPã§ãªãã¹ã³ããããã«ããŒããã©ã¯ãŒããèšå®ããŸãã
ç§ã¯çŸåšããã®ã·ããªãªã§docker-composeã䜿çšãããdockerãåŒã³åºãã«ã¹ã¿ã bashã¹ã¯ãªããã䜿çšããããšã§ãããåé¿ããŠããŸãããä»ã®èª°ããããè¯ã解決çãèããŠããã®ã§ã¯ãªãããšæããŸããã
ããã¯ææã«èŠããŸãã
ç§ã®ãŠãŒã¹ã±ãŒã¹ã¯ãä»ã®äººãè¿°ã¹ãŠãããã®ãšäŒŒãŠããŸãã JavaãµãŒãã¹ãå®è¡ãããŠããã³ã³ãããŒãäœæãããã¹ãã·ã¹ãã ãããããã®ãµãŒãã¹ããã¹ãããããšããŸãã ãã¹ãã¯jenkinsãã€ãã©ã€ã³ã§å®è¡ããããããã¹ãã·ã¹ãã ãè€æ°ã®ã³ã³ãããŒãå®è¡ããŠãã¹ãŠåãããŒãããã€ã³ãããããšããå¯èœæ§ãããããããã¹ãã·ã¹ãã ãžã®ããŒãã®å ¬éã«ã¯åé¡ããããŸãã
ãã®ãããéåžžã¯ããŒãããå ¬éããããdocker inspectãã䜿çšããŠã³ã³ããIPãæ€åºãããã®IPã®ãµãŒãã¹ããŒãã«æ¥ç¶ããŸãã éçºè ãMacã§ãã¹ããè©Šããããšãã¯ãboot2dockerããªãã¯ã䜿çšããŠãVirtualBoxVMãä»ããŠã³ã³ãããŒã«éçã«ãŒããè¿œå ããŠããŸããã
ç§ã¯ãåæ§ã®æ¹æ³ã䜿çšããŠå ¬éãããããŒãã«ã¢ã¯ã»ã¹ã§ããããšãæåŸ ããŠMac Betaãç£èŠããŠããŸãããããã®lo0ãšã€ãªã¢ã¹ããªãã¯ã¯ãã±ããã®ããã«èŠããŸãã
ããã¯ããããæ©èœãªã¯ãšã¹ãã®å Žæã§ã¯ãããŸããããdocker runpublish-allãªãã·ã§ã³ãžã®å ¥åãšããŠIPãè¿œå ã§ãããã©ããçåã«æããŸããã ããã¯æ¬¡ã®ããã«ãªããŸãã
sudo ifconfiglo0ãšã€ãªã¢ã¹10.200.10.1/ 32
docker run --publish-all 10.200.10.1 -d --name webserver my_test_image
次ã«ãmy_test_imageã«EXPOSEDãããè€æ°ã®ããŒããããå ŽåãIPãšã€ãªã¢ã¹ãä»ããŠãããã«ã¢ã¯ã»ã¹ã§ããŸãã
ææ°ã®docker-macã§æ¬ èœããŠããdocker0ã確èªã§ããŸã
MacBook $ docker version
Client:
Version: 1.12.1
API version: 1.24
Go version: go1.7.1
Git commit: 6f9534c
Built: Thu Sep 8 10:31:18 2016
OS/Arch: darwin/amd64
Server:
Version: 1.12.1
API version: 1.24
Go version: go1.6.3
Git commit: 23cf638
Built: Thu Aug 18 17:52:38 2016
OS/Arch: linux/amd64
MacBook$ docker info
Containers: 7
Running: 0
Paused: 0
Stopped: 7
Images: 107
Server Version: 1.12.1
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 133
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: host bridge null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options: seccomp
Kernel Version: 4.4.20-moby
Operating System: Alpine Linux v3.4
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.953 GiB
Name: moby
ID: W53J:DFZB:4SCO:CS34:6CRF:FCDR:74RZ:TBJC:WZ35:QUVW:NZQU:7ANZ
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
File Descriptors: 17
Goroutines: 29
System Time: 2016-09-26T00:20:31.292958501Z
EventsListeners: 1
No Proxy: *.local, 169.254/16
Registry: https://index.docker.io/v1/
Insecure Registries:
127.0.0.0/8
ç§ã®å¿
èŠæ§ã¯å
ã®æçš¿ã®éã§ãã ãã¹ããã172.17.0.3
ãªã©ã®åºå®ã³ã³ããã¢ãã¬ã¹ã«ã¢ã¯ã»ã¹ããããšæããŸãã ããšãã°ãWebã¢ããªã±ãŒã·ã§ã³ãå®è¡ããŠããŠããã¹ãããããã«ã¢ã¯ã»ã¹ããããšããŸãã ãã¹ãã®ã€ã³ã¿ãŒãã§ãŒã¹ãšããŠdocker0ãªãã§å¿
èŠãªåä»ãªããŒã転éãããããªãã VirtualBoxã«ã¯ãã¹ããªã³ãªãŒãããã¯ãŒã¯ãããããã¹ããããã®ãã¹ããªã³ãªãŒãããã¯ãŒã¯ãšè©±ãããšãã§ããŸãã
ãã¹ããLinuxã®å Žåãdocker0ã衚瀺ãããŸãã docker-macã§ã®ã¿æ¬ èœããŠããŸãã ãŸããMacã§dockerãå®è¡ããããã«virtualboxã䜿çšããããããŸããã
ããã¥ã¡ã³ãã«èšèŒãããŠããããã«ïŒããçš®ã®ãã°ã¯10.12ã§ä¿®æ£ãããŠããŸã
ãããã®åé¿çã¯çæ³çã§ã¯ãªãããšãç解ããŠããŸãããããã€ãã®åé¡ããããŸãã ç¹ã«ã_ OSXã«ã¯10.12ã§ã®ã¿ä¿®æ£ããããã°ããããç§ãã¡ãç¥ãéãããã¯ããŒããããŠããŸãããã€ãŸãããµããŒããããŠãããã¹ãŠã®OSXããŒãžã§ã³ã§ããããµããŒãã§ããŸããã§ããã
ã ããç§ã¯å°ããŸããDockerã¯ãã§ã«10.12ã§ãã®åé¡ãä¿®æ£ããŠããŸããïŒ ãŸãã¯ããã¹ãŠã®ããŒãžã§ã³ã®äºææ§ã®ããã«ããŸã ããã§ã¯ãããŸããã
@KaijunããããOSXã®ããã€ãã®ããŒãžã§ã³ããµããŒãããå¿ èŠããããŸãã以åã®æ¹æ³ã«ã¯ä»ã®åé¡ããããããå ã«æ»ãããšã¯ã»ãšãã©ãããŸããã
ããã«ã¡ã¯ãç§ã¯ãã®ã¹ã¬ããã§ã®ãã¹ãŠã®è°è«ã«æ¬åœã«æè¬ããŠããŸãã ç§ã¯çåã«æã£ãŠããŸãïŒèª°ããç§ãã¡ãã³ã³ããã«çŽæ¥ã«ãŒãã確ç«ããããšãã§ããªãOSXã®å®éã®åé¡ãèŠçŽããïŒãŸãã¯ç§ã«ææããïŒããšãã§ããŸããïŒ
OS XïŒãããä»ã®ã¹ã¬ããïŒã§ã©ã®ããã«åé¡ããããã«ã€ããŠã®ã³ã¡ã³ããèŠãŠããŸããã å®éã«äœãåé¡ãªã®ãããªã10.12ãä¿®æ£ãããŠããã®ããªã©ããã£ãããšãã説æãèŠã€ãããªãããã§ãã
ïŒ1ïŒãªãããã¯virtualbox / docker-machineã®ãããªãã®ã§ã¯æ©èœããããxhyveã§ã¯æ©èœããªãã®ã§ããïŒ
ïŒ2aïŒdockerã10.12ã ãã§ãã®æ©èœããµããŒãã§ããªãå Žåã§ãã10.12ãå®è¡ããŠãããã³ã°ããŠæ©èœããããšãäœãã§ããããšã¯ãããŸããïŒ
ïŒ2bïŒã以åã®ããæ¹ãã®ããã®ä»ã®åé¡ããšã¯äœã§ããïŒ
ããããã°ããã質åã§ããå ŽåïŒãŸãã¯çãããã§ã«ãã®ã¹ã¬ããã«ãããç§ããããèŠéããå ŽåïŒãæ¬åœã«ç³ãèš³ãããŸããã
ããããšãã
@weaver以åã¯https://github.com/docker/hyperkitã§vmnet
ãªãã·ã§ã³ã䜿çšããŠããŸãããããã«ãããVMã®ããªããžãäœæãããããªããžäžã®IPã§ã³ã³ãããŒãããã¹ããžã®ã«ãŒãã£ã³ã°ãå¯èœã«ãªããŸãã ãã ããã³ã³ãããžã®ã«ãŒãã£ã³ã°ã¯æå¹ã§ã¯ãããŸããã ããã«é¢é£ããCVEããããæå¹ã«ãããšãªãŒãã³DNSãµãŒããŒãå
¬éãããŸããããããã¯Sierraã§ä¿®æ£ãããŸããã
vmnetã¢ãŒãã«ã¯ãä»ã«ãå€ãã®æ¬ ç¹ããããŸããIPv6ããµããŒããããŠããªããå¶åŸ¡ãå°ãªããrootãšããŠå®è¡ããå¿ èŠããããå€ãã®VPNã»ããã¢ããã§æ©èœããªããªã©ã§ãã çŸåšã®ããã©ã«ããšãªã£ããVPNã¢ãŒããããªãã·ã§ã³ãšããŠäœ¿ãå§ããã»ãã¥ãªãã£ã®åé¡ã§ä»ã®ãªãã·ã§ã³ãåé€ããŸããã
docker0
ããªããžãMacã§ã¯éæ³ã®ããã«èŠããŠLinux VMã§ã¯ãªãããã«èŠãããªãã·ã§ã³ã¯å®è£
ãããããšããªããå®éã«ã¯äžå¯èœã§ããããªã¢ãŒããã¹ãã䜿çšããŠããå Žåã«ãå©çšã§ããªãã®ãšåãæ¹æ³ã§ãã ã ãããã人ã
ã¯ããŸããŸãªã«ãŒãã£ã³ã°èšå®ã䜿çšã§ããããŸããŸãªæ¹æ³ã«äŸåããããã«ãªãããããã®ãŠãŒã¹ã±ãŒã¹ã®ããã€ãã«å¯Ÿå¿ããããšããŠããŸãããããã¯éåžžã«ç°¡åã§ã¯ãããŸããã Virtualboxã¯ãããè¡ãããã«Macã«ã«ãŒãã«ã¢ãžã¥ãŒã«ãã€ã³ã¹ããŒã«ããŸãããããã¯è¡ããŸããã
ããã«ã¡ã¯ã
ãŸããããŒããã©ã¯ãŒãã£ã³ã°ã«ã€ããŠã®åçã§èª°ããå¿çããªãããã«ããŠãã ããã å€ãã®äººãæçš¿ããŠããã®ã§ãIPã¢ã¯ã»ã¹ã«åçŽãªããŒããå¿
èŠãªã®ã§ãç§ãã¡ã¯ãããç¥ã£ãŠããŸãããããã¯æãã§ããŸããã
ãã®ããã®è§£æ±ºçã«ã€ããŠãã®ã¹ã¬ãããç¶æããããšã§ããŸããïŒ
ãããäžå¯èœã ã£ãã®ã«ã¯ãšãŠãé©ããŸããã ãããã¯ãŒã¯ãã«ãŒãã£ã³ã°å¯èœã§ããéããMacèªäœã«ããªããžãå¿
èŠãªçç±ãããããŸããã
ã€ãŸããMacçšã®dockerãåé€ããdocker toolboxãã€ã³ã¹ããŒã«ããŠã次ã®ãããªãã®ãå®è¡ããŸãã
sudo route -n add 172.17.0.0/24 192.168.99.100
ããã§ã172.xxxã¯VirtualBoxãã¹ãã§æ§æãããDockerãããã¯ãŒã¯ã§ããã192.xxxã¯Macäžã§ïŒVirtualBoxãããã¯ãŒã¯ã€ã³ã¿ãŒãã§ã€ã¹ãä»ããŠïŒã«ãŒãã£ã³ã°å¯èœãªãã®ãã¹ãããã®å®éã®IPã§ãã
ãã©ãã£ãã¯ãé©åã«ã«ãŒãã£ã³ã°ããã ãã§ãã
ãããDockerã®ããã¥ã¡ã³ãã«è¿œå ã§ããŸããïŒ
äžèšã¯ç§ã欲ãããã®ãç§ã«äžããã®ã§ãç§ã¯xhyveããã以äžèª¿ã¹ãŸããã§ããã
解決çã¯ãããããã®ãããã¯ãŒã¯èšå®ã§æ©èœããäžèšã®ãããªã³ãã³ããå
¥åããããšã§ã¯ãªãã§ããããïŒ 192.168.65.xã¢ãã¬ã¹ã«pingãå®è¡ã§ããªãã£ããããã«ãŒãã®è¿œå ãæ©èœããŸããã§ããã 誰ããã³ãã³ããæçš¿ããŠãããæå¹ã«ããå Žåãrouteã³ãã³ããæ©èœããã¯ãã§ãã
åé¡ã解決ããŸããïŒ ããããMacã®å¶éã«ã€ããŠèª¬æããŠããå Žæã«ææžåãããŠããã°çŽ æŽããããšæããŸãã
ããããšãããããŸãã
@justincormack @ dmp42 @jeanlaurentããäžã®@VGerrisã³ã¡ã³ããèŠãŠããã®ææžåãããreïŒToolboxãšd4macãã©ã®ããã«/ã©ãã§æ¬²ãããæããŠãã ããã
å¿ èŠãª10.12ä¿®æ£ãã·ã¹ãã ã«ååšããªãå Žåãããã10.12ã§ä¿®æ£ããããšã©ãŒ/èŠåãã¹ããŒãããå¯èœæ§ã¯ãããŸããïŒ æ¬¡ã«ã10.11ãå®è¡ããŠãããŠãŒã¶ãŒåãã®/ etc / hostãŸãã¯ããŒã«ããã¯ã¹ã®åé¿çãææžåã§ããŸãã
ããŒããã©ã¯ãŒãã£ã³ã°ãæåã®ãããã¯ãŒã¯æ§æãªãã§ãã¹ãããã³ã³ãããããã¯ãŒã¯ã«ã¢ã¯ã»ã¹ã§ããImhoã¯ãdockerã®åºæ¬çãªæ©èœã§ãã ãããæåŸ ã©ããã«æ©èœããªããšããäºå®ã¯ãæ¬åœã«å€§ããªåé¡ã§ãã
@ justincormack-ä»æ¥ã®ããŒã¿ãªãªãŒã¹åŸããåå²ãããdnsæ§æã§ã¯æ©èœããŸããã
äžããç¹°ãè¿ããŸãã
ã€ã³ã¿ãŒãã§ã€ã¹ã«DNSãè¿œå ããªãããã«ããŠããŸããã
Macããã®èšå®ãVPNã®çµã¿åããã¯å€æ§ã§è€éã§ãããããåžžã«æ£ããèšå®ãèªã¿åãããšãã§ãããšèããã®ã¯è¿èŠçŒçã§ãã
@justincormack Docker for Macã®ãŠãŒã¶ãŒã«ãœãªã¥ãŒã·ã§ã³ãæäŸããŠããŸãã
ãŸããlibvmnetã¯ããã»ã©çŽ°ããã¯ãããŸããããããã¯è§£æ±ºçã§ãããsudoã¯äœããªããããåãå ¥ããããŸã!!!
ã¿ããããã€ã¹ãœãªã¥ãŒã·ã§ã³ã«ã¯ãsudoæš©éã¯å¿ èŠãããŸããã å°ãªããšããMacçšã®Dockerã¯ãéçºè ã«éãè²ãããããã®ããã¯æ¹æ³ãæäŸããå¿ èŠããããŸãã ããšãã°ãhyperkitstartã³ãã³ãåŒæ°ã¯ãŠãŒã¶ãŒãã«ã¹ã¿ã ã§ããŸãã
çŸåšãMacçšã®Dockerã¯ã»ãšãã©åœ¹ã«ç«ããªãã
ããããšïŒ
ãããä¿®æ£ããããã©ããããŸãã¯ãã€ä¿®æ£ããããã«ã€ããŠã®èŠéãã¯ãããŸããïŒ
@justincormack ïŒããã«ããã®ãããã¯ãŒã¯èšå®ã«ã¯ãDocker for Macã§å®å šã«åé¿ããããšããŠããã«ãŒãã¢ã¯ã»ã¹ãå¿ èŠã«ãªããŸãïŒçŸåšãåé€ããããšããŠããéåžžã«å°ããªã«ãŒããã«ããŒããããŸãïŒã
ã©ãããŠïŒ Linuxã§ã¯rootæš©éãªãã§dockerãå®è¡ããããšã¯ã§ããããã¹ãŠãæ£åžžã§ããOSXã§ã¯ãããé¿ããããšæããŸãã ãã®èåŸã«ããçç±ã¯äœã§ããïŒ ãããã£ãŠãä»åŸãOSXã®Dockerã¯Facebookã¢ããªã®ããã«ãªãã¯ãã§ããã³ã¢æ©èœãæ©èœããŠããªããŠãåé¡ãããŸããããrootæš©éã¯å¿ èŠãããŸããã§ãããïŒ
ã«ãŒãæš©éããã®åé¡ã®è§£æ±ºã«åœ¹ç«ã€å Žåã¯IMOãä¿®æ£ãããããŸã§ã®éãã«ãŒããªãã§ãããéæããããšããŸãã çŸåšã以åã¯ã³ã¢æ©èœããªãããã®æ©èœã«åºã¥ããŠãããŒå šäœãèšç»ããŠãããããå€ãã®åé¡ã解決ããå¿ èŠããããŸãã
蚱容ã§ãã劥åæ¡ã¯ããããé«åºŠãªæ©èœãšèŠãªãããšã§ãã ãŸããé«åºŠãªæ©èœãæå¹ã«ãããšãè¿œå ã®æš©éãå¿ èŠã«ãªããŸããïŒ
ãã®æ©èœãè¿ããŠã»ããçç±ã¯ãæšæºã®ããŒãã«ããŒã¿ãä¿æããããã§ãã ãã¹ãŠã®ãµãŒãã¹ã«æšæºã®åœåèŠåããããŸãã Macã®éçIPãæãå¯èœæ§ã®ããéçºè åãã®DNSã¬ã³ãŒããäœæããŠããŸãã åã³ã³ããã¯ç¬èªã®IPãååŸãããããäœæ¥ããŠãããããžã§ã¯ãã«é¢ä¿ãªããåžžã«ããŒã3306ã«ãªããŸãã åãããžã§ã¯ãã¯ãqaããprdãŸã§ã®ããã«ãçã«åé¢ãããŠããŸãã
ããã§ãéçºè ãããŒã«ã«ãã·ã³ã§MySQLã«æ¥ç¶ãããå Žåã¯ããã£ãŒããèŠãŠããããžã§ã¯ãã®äžæã®ããŒãã確èªããå¿ èŠããããŸãã ãããžã§ã¯ãAã¯3307ããããžã§ã¯ãBã¯3308ããããžã§ã¯ãQã¯äœã§ãããïŒ ã©ã³ãã åããŒãããæ¥ç¶èšå®ãªã©ãä¿åã§ããªãããããããã§ãã ããªãã¯ãŸã ãããåžžã«èª¿ã¹ãå¿ èŠããããŸãã
ããã¯å°ããªåé¡ã®ããã«æãããããããŸãããã ãããžã§ã¯ããé »ç¹ã«åãæ¿ããã®ã¯é¢åã§ãããã®æšæºåã«ãããå€ãã®äœåãªæé ãåé€ãããŸãã å¥ã®ãããžã§ã¯ãã«åãçµã¿ããã§ããïŒ ã¯ããŒã³ãäœæããŠmakeãå®è¡ããŸãã ãããããã¹ãŠãã»ããã¢ãããããŸãã è€æ°ã®ã³ã³ãããŒãè³æ Œæ å ±ãæ§æãªã©ãåäžã®ã³ãã³ãéçºã»ããã¢ããã
+1ãå¿ æ»ã«å¿ èŠïŒ-/
https://docs.docker.com/docker-for-mac/networking/ã®ããã¥ã¡ã³ãã«è¿œãã€ããã®ã§ãé¢é£ãã課é¡ãç解ããŸããã
æ®å¿µãªãããããã¯ããŒã«ã«éçºç°å¢ã§Dockerãã€ãã£ãã䜿çšããäžã§ã®æ·±å»ãªé害ã§ãã Virtualbox / Vagrantãã移è¡ããããšæã£ãŠããŸããã
ç§ãã¡ã®åé¡ã¯ããµãŒãã¹æ€åºã«Consulã䜿çšããããšã§ãã ããŒã«ã«éçºã§ã¯ãdocker-composeãããããã³Macäžã®éçºè ã®IDEããçŽæ¥ãµãŒãã¹ãçµã¿åãããŠå®è¡ããããšèããŠããŸãã ã³ã³ãããŒã§å®è¡ãããŠãããµãŒãã¹ã¯ãdocker ipïŒportã䜿çšããŠé äºã«ç»é²ããããããdockerã®å€éšã§å®è¡ãããŠãããµãŒãã¹ã¯çµ±åã§ããŸããã
ãã¡ãããããã¯ãã«ããã¹ãã¯ã©ã¹ã¿ãŒã®åé¡ã§ããããŸããããªãŒããŒã¬ã€ãããã¯ãŒã¯ïŒãŸãã¯ããã®å Žåã¯ããã¹ãã®ipïŒportãããã³ã°ãææ¡ããåä»ãªã€ã³ããã¹ãã¯ã·ã§ã³ãšã³ããªãã€ã³ãã¹ã¯ãªããïŒã®ããããã«ãã£ãŠè§£æ±ºãããŸãã
ãã®çš®ã®åé¡ã®è§£æ±ºã«åœ¹ç«ã€ã€ã³ããã¹ãã¯ã·ã§ã³APIãã€ãã«éçºãããŠããããã§ãïŒhttps://github.com/docker/docker/issues/7472ïŒã ããŸãããã°ãã€ã³ããã¹ãã¯ã·ã§ã³APIã¯Mac / Windowsã®Dockerã§ãæ©èœããŸãïŒã
ããã¿ããªããã®ã¹ã¬ããã«é¢é£ããŠå
±æãã䟡å€ã®ãããã®ããããšæããŸãã Docker for Mac/Windows
ã«ãã£ãŠäœæãããdefault IP
ã䜿çšããŠãã³ã³ããå
ããhost
ãã·ã³ãšéä¿¡ã§ããŸãã Docker for Mac/Windows
ã
IPã¯192.168.65.1
以äžã®æé ã«åŸã£ãŠãã¹ãã§ããŸãã
rogaha@MacBook-Pro:~/development/rogaha$ docker run --name docker-nginx -p 80:80 -d nginx
4bc4818c49cffd7b4186294c71e6d4608c0482fd74521b3e9d03a14d499b3e6b
rogaha@MacBook-Pro:~/development/rogaha$
rogaha@MacBook-Pro:~/development/rogaha$ docker run -it --rm tutum/curl curl 192.168.65.1 5:52:22
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>
rogaha@MacBook-Pro:~/development/rogaha$
ã圹ã«ç«ãŠã°å¹žãã§ãã
@rogahaããã¯èå³æ·±ãæ å ±ã§ãã ããã¯ã©ããã«ææžåãããŠããŸããïŒ ã©ããã£ãŠãããç¥ããŸãããïŒ
Macã§ããŒã«ã«ã«ç¢ºèªãããšããã 192.168.65.1
ä»ããŠïŒå¥ã®Dockerã³ã³ããã ãã§ãªãïŒãã¹ãã«å°éããŠããããšãããããŸããã
ããåãããŸããã @thaJeztah @justincormackããªãã¯ããŸããŸç¥ã£ãŠããŸããïŒ
ã¯ãããã®ã«ãŒãã¯ãã¹ããžã®é£çµ¡ããµããŒãããããã«è¿œå ãããŸããã
æšæºçãªåœåãè¡ããããŸã§ãéåžžã¯äœ¿çšããå§ãããŸãã
æããã«æ¬çªç°å¢ã§ã¯æ©èœããŸãããããšããŠåæ ŒããŠãåé¡ãããŸããã
ãã©ã¡ãŒã¿ã
2017幎2æ27æ¥08:49ããRoberto GandolfoHashiokaã [email protected]
æžããŸããïŒ
ããåãããŸããã @thaJeztah https://github.com/thaJeztah @justincormack
https://github.com/justincormackããªãã¯ããŸããŸç¥ã£ãŠããŸããïŒâ
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/docker/docker/issues/22753#issuecomment-282777837 ã
ãŸãã¯ã¹ã¬ããããã¥ãŒãããŸã
https://github.com/notifications/unsubscribe-auth/AAdcPJ3h5OrhxpgWao8by-qu-UmsuWIOks5rgv62gaJpZM4Ie9PB
ã
@ rogaha192.168.65.1ã¯ç§ã®åŽã§ã¯æ©èœããŠããŸããã ãã®IPãã©ã®ããã«ããŠç¥ããŸãããïŒ
ãã®ã¹ã¬ããã®ä»ã®å šå¡ãšäžç·ã«+1 / subscribeãè¿œå ããäžæã®/ã«ã¹ã¿ã IPã¢ãã¬ã¹ã®ããªããžã€ã³ã¿ãŒãã§ã€ã¹ãä»ããŠDockerã³ã³ãããŒã«ç°¡åã«ã¢ã¯ã»ã¹ã§ããããã«ãããšããæ©èœèŠæ±ã«å¥ã®é³å£°ãè¿œå ãããã£ãã ãã§ãã
ã©ãããããããã®åé¡ãèŠã€ããŠåé¡ãå®å šã«èª¬æãããŸã§ãææžåãããäŸãæ©èœããªãçç±ãç解ããããšããŠãå°ãªããšã4æéé ãå£ã«ã¶ã€ããŠããŸããã
ä»ã®ãšããã @ justincormack ïŒhttps://github.com/moby/moby/issues/22753#issuecomment-246054946ïŒã§èšåãããŠããåé¿çã¯åé¡ãªãæ©èœããŠããããã§ãã 次ã®æé ã䜿çšããŠãå®éšçãªDockerãµããŒããDrupalVMã«è¿œå ããŠããŸãã
/etc/hosts
ãšsudo /etc/hosts
ïŒäŸïŒ 192.168.1.100 mysite.dev
ïŒsudo sudo ifconfig lo0 alias 192.168.1.100/24
次ã®ç䌌åæã䜿çšããŠã³ã³ãããèµ·åããŸãã
version: "3"
services:
app:
image: image-name
ports:
- 192.168.1.100:80:80
- 192.168.1.100:443:443
[...]
ããã¯ç§ã«ãšã£ãŠã¯å®ç§ã«æ©èœããŠããããã§ããçŸåšãããã€ãã®æåã®æé ãå¿ èŠã§ãïŒDockeräžã§ä»ã®ããŒã«ã䜿çšããå Žåã¯åé¿ãããŸã...ãŠãŒã¶ãŒã«åŒ·å¶ããããªãããšã§ãïŒãã Macã§ã¯Dockerã®æ¶ æ§ã«ã»ãŒå°éããŸãã
åé¿çã«æè¬ããŸããããªããžãããã¯ãŒã¯ãããã«æ©èœãããæ¹æ³ãèŠã€ããããããšãé¡ã£ãŠããŸãïŒãŸãã¯macOS <10.12ãæŸæ£ããã ãã§ãðïŒ
@rogahaã©ããããããšãããããŸããã192.168.65.1ã¯ç§ã®åé¡ã解決ããŸããã 圌ããããã¯ãªãŒã³ãªè§£æ±ºçãèŠã€ããªãéãããããå°æ¥å€æŽãããªãããšãé¡ã£ãŠããŸãã Docker for Mac 17.0.3.1ã®æç¹ã§ãããã«ãããã³ã³ãããŒããã·ã³ã®ããŒã«ã«ãã¹ãã§å®è¡ãããŠããMySQLãµãŒããŒãšéä¿¡ã§ããããã«ãªããŸããã
@TheAntonioReyesãããããªãã®ããã«åããŠããããã§ãã ãã£ãŒãããã¯ããå¯ãããã ãããããšãããããŸãïŒ
ããã«ã¡ã¯ã
https://docs.docker.com/docker-for-mac/networking/#use -cases-and-workaroundsã§ããã¥ã¡ã³ããèªãã§ãããããã«èšèŒãããŠãã_ç¹å¥ãªMacå°çšDNSå_ã䜿çšããããšããŠããŸãã ïŒ docker.for.mac.localhost
ã
Dockerã³ã³ããå ã®ç«¯æ«ã§pingãå®è¡ãããšã192.168.65.1ã«è§£æ±ºãããMacã§å®è¡ãããŠããã¢ããªã«curlãå®è¡ãããšãæåŸ ãããçµæãååŸãããŸãã
ç§ã¯ãã®ç»åã䜿çšããŠããŸãïŒ https ïŒ httpïŒ//docker.for.mac.localhost ïŒ80ã«ã¢ã¯ã»ã¹ãããã£ãã®ã§ãããæ¥ç¶ãæåŠãããŸããã ãã ãã http ïŒ
ç§ã¯äœãã足ããªãã®ã§ããïŒ docker.for.mac.localhost
ã䜿ãå§ãããã£ãã®ã§ãã
ç§ã¯ããã䜿çšããŠããŸãïŒããŒãžã§ã³17.06.0-ce-mac18ïŒ18433ïŒ
ç·šéïŒããã¯Chromeã§ã®ã¿çºçããããã§ããã®åé¡ãåå ã§ãã https://github.com/docker/for-mac/issues/1837
docker.for.mac.localhost
ã䜿ãã®ã¯æªã決æã ã£ããšæããŸãã ã³ã³ãããŒã®èŠç¹ã¯ãã³ã³ãããŒã移æ€å¯èœã§ãããã³ã³ãããŒãååšãããã¹ãã®ã¿ã€ãã«äŸåããªãããšã§ãã ç§ã®ããŒã ãååã®WindowsãŠãŒã¶ãŒãšååã®Macã§ããå Žåãã³ã³ãããŒå
ã®ã³ãŒãã¯å¥ã®æ¹æ³ã§æ§æããå¿
èŠããããŸãã
ãã¹ãåã¢ãããŒããããããšãããããæããŸãããã®ã¢ãããŒãã決å®ãããäŒè°ã¯ãããš5åç¶ãã¯ãã ã£ããšæããŸãã
docker.for.mac.localhost
ã¯æ©èœããŸããã éœæ°ãªããã£ãããªã https://docs.docker.com/docker-for-mac/networking/#use -cases-and-workarounds
Macçšã®docker-machineã«æ»ãããšã§ããã®åé¡ãåé¿ããŸããã Dockerãã·ã³VMã¯Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ããã€ãŸããDockerã³ã³ãããŒã®ãã©ã€ããŒããããã¯ãŒã¯ç¯å²ã«ã¢ã¯ã»ã¹ã§ããdocker0ã€ã³ã¿ãŒãã§ã€ã¹ãäœæããŸãã 次ã«ããã¹ãMacãã·ã³ã§ãã³ã³ãããŒã®172.18.xxã¢ãã¬ã¹ç¯å²ã®ã«ãŒããäœæããŸãããããã¯ãDockerãã·ã³ã€ã³ã¹ã¿ã³ã¹ã®IPã¢ãã¬ã¹ïŒç§ã®å Žåã¯192.168.99.100ïŒãæããŸãã
ããã«ããããã©ã€ããŒãã³ã³ãããããã¯ãŒã¯å®ãŠã®ãã±ãããMacOSããDockerãã·ã³ã®LinuxVMã®IPã¢ãã¬ã¹ã«è»¢éã§ããŸããDockerãã·ã³ã¯ãã©ã€ããŒãã³ã³ããã«å°éããæ¹æ³ãç¥ã£ãŠããããã±ãããçŽæ¥è»¢éããŸãã
ãã©ã€ããŒãã³ã³ãããããã¯ãŒã¯ã®Dockerãã·ã³VMãžã®ã«ãŒããäœæãã
sudo route -n add -net 172.18.0.0/16 192.168.99.100
docker network inspect
ãŸãã¯docker inspect <container_name>
ã䜿çšããŠãã³ã³ãããããã¯ãŒã¯ã®ã¢ãã¬ã¹ãååŸã§ããŸãã
次ã®ã³ãã³ããå®è¡ãããšãMacçšã®Dockerã§ãã¹ãã®IPãèŠã€ããããšãã§ããŸãã
docker run busybox ping -c 1 docker.for.mac.localhost | awk 'FNR==2 {print $4}' | sed s'/.$//'
ãã®ã³ãã³ããå®è¡ããŸã
docker run -i -d --expose=80 <container_name> bash
次ã«ãããIPã¢ãã¬ã¹ãååŸããŸã
docker ps
0.0.0.0ãšè¡šç€ºãããŠããå Žåã¯ãããŒããå ¬éãããããä»ã®IPã¢ãã¬ã¹ãããã«æžã蟌ãŸãããšæ£åžžã«æ©èœããŸãã
解決çã¯å®éã«ã¯æ¯èŒçåçŽã§ãã Dockerããããä¿®æ£ããªãçç±IDKã
ãã€ããŒããããã€ããªãã·ã ããåé¿çã«ã€ããŠã¯ã httpsïŒ//github.com/AlmirKadric-Published/docker-tuntap-osxãåç §ããŠ
ïŒ155ïŒããã³ïŒ171ãïŒ515ãïŒ3484ïŒã®éšåçãªè€è£œã
éåºããŸãã ããã¯ä»æ§ã«ãããã®ã§ããããšã«ãããã®ãªããžããªãšã¯ç¡é¢ä¿ã§ãã
以äžã¯ç§ã«ãšã£ãŠçŽ æŽãããåããããŸãã äžéã³ã³ãããDNSã®åé¿çã¯ãããŸããã
https://github.com/AlmirKadric-Published/docker-tuntap-osx#how -it-worksããïŒ
å®äºãããšãIPã¢ãã¬ã¹10.0.75.2ããããã¯ãŒã¯ã«ãŒãã£ã³ã°ã²ãŒããŠã§ã€ãšããŠäœ¿çšããŠããã¹ãä»®æ³ãã·ã³å ã®ä»»æã®ã³ã³ããã«å°éã§ããŸãã
route add -net <IP RANGE> -netmask <IP MASK> 10.0.75.2
@pauldraper ïŒïŒïŒããããšãããããŸãã
@pauldraperã¯2019幎7æ14æ¥ã«ã³ã¡ã³ãããŸãã
解決çã¯å®éã«ã¯æ¯èŒçåçŽã§ãã Dockerããããä¿®æ£ããªãçç±IDKã
ãã€ããŒããããã€ããªãã·ã ããåé¿çã«ã€ããŠã¯ã httpsïŒ//github.com/AlmirKadric-Published/docker-tuntap-osxãåç §ããŠ
ç§ã®macOSããŒãžã§ã³ïŒ
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.14.6
BuildVersion: 18G3020
$
æãåèã«ãªãã³ã¡ã³ã
Macã¯éåžžæ¬çªãµãŒããŒã§ã¯ãªãã®ã§ãããŸãæºè¶³ã®ãããã®ã§ã¯ãããŸããã
éçºãã·ã³ã
ç§ã®çç£æ©æ¢°ã§ã¯ãç§ã¯ã§ããªããšããåé¡ãæ°ã«ããŸãã
ãã¹ãã«æ¥ç¶ããŸãã
ããããå éšããåããã¹ãäžã®ãµãŒãã¹ã«æ¥ç¶ããéçºãã·ã³ã§ã¯
ã³ã³ããã¯ãŸãã«ãã®æ©èœãæãŸããã·ããªãªã§ã
æãã