我正在为本地开发环境使用laradock
我有一个使用php-fpm的soap服务器@ (soap.localhost.com)使用nginx容器@ (api.localhost.com)中的WSDL文件。
php-fpm容器不知道nginx容器的ip地址,除非我将其硬编码到docker-comopose.yml的php-fpm部分
extra_hosts:
- "dockerhost:${DOCKER_HOST_IP}"
- "api.localhost.com:xxx.xxx.xxx.xxx"每次我重新启动容器时,nginx容器的ip地址都会改变,所以我需要以某种方式分配一个静态ip地址,这样我就不必不断地硬编码extra_hosts部分。
Laradock已经定义了两个网络接口:
networks:
frontend:
driver: bridge
backend:
driver: bridge发布于 2019-07-08 11:49:16
最后:不是将静态IP分配给NGINX容器,然后将域名添加到PHP_FPM容器的extra_hosts:部分。我向NGINX容器的network部分添加了别名,如下所示
### NGINX Server #########################################
nginx:
build:
context: ./nginx
args:
- PHP_UPSTREAM_CONTAINER=${NGINX_PHP_UPSTREAM_CONTAINER}
- PHP_UPSTREAM_PORT=${NGINX_PHP_UPSTREAM_PORT}
- CHANGE_SOURCE=${CHANGE_SOURCE}
volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- ${NGINX_HOST_LOG_PATH}:/var/log/nginx
- ${NGINX_SITES_PATH}:/etc/nginx/sites-available
- ${NGINX_SSL_PATH}:/etc/nginx/ssl
ports:
- "${NGINX_HOST_HTTP_PORT}:80"
- "${NGINX_HOST_HTTPS_PORT}:443"
depends_on:
- php-fpm
- memcached
networks:
frontend:
backend:
aliases:
- api.localhost.comhttps://stackoverflow.com/questions/56878857
复制相似问题