And*_* Nt 10 php docker docker-compose
在我的 docker-compose 中,我有 2 个容器,php-container 和 nginx 容器。对于 nginx 容器,我定义了 env 变量,有没有办法在代码中访问 php 容器中的该变量?我想在 php 代码中访问 PLAYER_NAME 变量
version: '3.7'
services:
api:
build: '.'
volumes:
- './:/srv/api:rw'
env_file:
- .env
networks:
- backend
nginx_player_1:
image: 'nginx:1.15.7-alpine'
depends_on:
- api
volumes:
- './docker/nginx/conf.d:/etc/nginx/conf.d:ro'
- './:/srv/api:rw'
ports:
- '8001:80'
environment:
PLAYER_NAME: 'PLAYER_1'
networks:
- backend
Run Code Online (Sandbox Code Playgroud)
不,你不能那样做,容器是按设计隔离的。您必须为两个容器定义 env 变量。
为了不重复您的代码,您可以使用带有扩展字段的yaml 锚点:
version: '3.7'
x-environment: &commonEnvironment
PLAYER_NAME: 'PLAYER_1'
services:
service-1:
environment: *commonEnvironment
service-2:
environment: *commonEnvironment
Run Code Online (Sandbox Code Playgroud)
或者您可以使用 env 文件。将所有变量放在文件中的位置,并使用 docker-compose 引用它env_file
归档时间: |
|
查看次数: |
3183 次 |
最近记录: |