Tom*_*oma 2 ftp docker dockerfile
我有这个 Dockerfile :
FROM php:5.6-cli
VOLUME /usr/src/up
WORKDIR /usr/src/up
RUN docker-php-source extract \
&& docker-php-ext-install pdo pdo_mysql
&& docker-php-source delete
RUN echo "date.timezone = Europe/Paris" >> /usr/local/etc/php/php.ini \
Run Code Online (Sandbox Code Playgroud)
这一个使用 PHP 5.6 创建一个新的虚拟机,安装 pdo 和 pdo_mysql 扩展并在 php.ini 中指定时区。
我遇到的问题是,默认情况下,虚拟机具有“NAT 网络 IP 地址”。因此,具有 FTP 连接的脚本不起作用,我收到此错误:
Warning: ftp_get(): I won't open a connection to 172.17.0.2 (only to x.x.x.x)
Run Code Online (Sandbox Code Playgroud)
所以我希望我的虚拟机有一个“桥接网络 IP 地址”,并从我的 DHCP 获取它的 IP 地址。
我怎样才能做到这一点 ?我可以将它包含在 Dockerfile 中以方便其他人的工作吗?
提前致谢 !
亲切的问候,托马斯
默认情况下,docker 服务器会创建一个默认网桥,但您可以创建自己的网桥网络,并在启动时将您的容器分配给该自定义网桥。或者您可以使用docker network似乎更简单的命令。这样您就可以指定 IP 范围以匹配您的 DHCP 设置。
docker network create --driver=bridge \
--subnet=192.168.127.0/24 --gateway=192.168.127.1 \
--ip-range=192.168.127.128/25 yourbridge
Run Code Online (Sandbox Code Playgroud)
使用自定义网桥运行容器;
docker run -d --net=yourbridge ..
Run Code Online (Sandbox Code Playgroud)
有关具体示例,请参阅此博客文章:http : //www.dasblinkenlichten.com/docker-networking-101-user-defined-networks/
在用户定义的桥接网络中,不支持链接。您可以在此网络中的容器上公开和发布容器端口。如果您想让桥接网络的一部分可供外部网络使用,这将非常有用。
| 归档时间: |
|
| 查看次数: |
5264 次 |
| 最近记录: |