cha*_*osz 7 docker docker-compose
我尝试使用docker-compose.yml文件构建容器:
version: '2'
services:
geonode:
build:
context: .
hostname: geonode
container_name: geonode
ports:
- 8000:8000
volumes:
- .:/geonode/
entrypoint:
- /usr/bin/python
command: manage.py runserver 0.0.0.0:8000
network_mode: host
Run Code Online (Sandbox Code Playgroud)
在我Dockerfile我跑apt-get update后FROM ubuntu:14.04,但它失败:Could not resolve 'archive.ubuntu.com'
我尝试docker run -i -t --net=host ubuntu:14.04 /bin/bash然后运行apt-get update它的工作原理.所以在我看来,docker-compose中的network_mode和--net=hostdocker run的运行方式不同.
有人有解释吗?
由于这个答案已发布,docker build --network现在是一个选项。所以你可以运行:
docker build --network host -t charmosz/geonode .
Run Code Online (Sandbox Code Playgroud)
从 compose 文件 2.2 开始,这是 compose 中的一个选项:
version: '2.2'
services:
geonode:
image: charmosz/geonode
build:
context: .
network: host
...
Run Code Online (Sandbox Code Playgroud)
您可能会看到与桥接网络的网络冲突。在这种情况下,设置“bip”可以通过在 daemon.json 文件中设置以下内容来更改 docker 使用的名为bridge的默认桥接网络的子网:
{ "bip": "172.16.100.1/24" }
Run Code Online (Sandbox Code Playgroud)
您需要重新启动 docker 才能应用该更改。我最近对此进行了介绍(请注意,前面的幻灯片显示了在 Mac 和 Windows 中配置 daemon.json 选项的位置)。
| 归档时间: |
|
| 查看次数: |
9246 次 |
| 最近记录: |