将docker容器绑定到OSX上的IP

将docker容器绑定到OSX上的IP,ip,docker,containers,Ip,Docker,Containers,在Ubuntu上,我做了这样的事情 sudo ip addr add 192.168.33.30/21 dev eth0 docker run -p 192.168.33.30:80:80 -d foo/bar /sbin/my_init 然后我可以在打开浏览器 我如何在OSX上完成同样的事情 (OSX没有“ip地址”和boot2docker虚拟机)我发现这个解决方案适合我: # Register IP address sudo ifconfig lo0 add 192.168.33.30

在Ubuntu上,我做了这样的事情

sudo ip addr add 192.168.33.30/21 dev eth0
docker run -p 192.168.33.30:80:80 -d foo/bar /sbin/my_init
然后我可以在打开浏览器

我如何在OSX上完成同样的事情


(OSX没有“ip地址”和boot2docker虚拟机)

我发现这个解决方案适合我:

# Register IP address
sudo ifconfig lo0 add 192.168.33.30

# Run docker container with port 80 assigned to random free port
docker run -p 80 --name boing -d foo/bar /sbin/my_init

# Start SSH tunnel for port 80 (http)
TUNNEL_ADDR_PORT_80=$(docker port boing | grep 80 | awk '{print $3}')
sudo ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no \
        -o UserKnownHostsFile=/dev/null -o LogLevel=quiet -i $HOME/.ssh/id_boot2docker \
        -nNT -f -L 192.168.33.30:80:$TUNNEL_ADDR_PORT_80 \
        docker@$(boot2docker ip 2>/dev/null) &