Ich habe eine PHP/Apache/MySQL-Entwicklungsumgebung mit Docker erstellt und möchte eine Variable festlegen, die ich mit $_SERVER
in PHP verwenden kann.
Normalerweise werde ich so etwas in meinem virtuellen Host
SetEnv ENV "developement"
Gibt es so zu konfigurieren, eine Möglichkeit, es mit meiner docker_compose.yml Datei zu tun? Ich versuche es mit environment: - ENV=developement
in meiner Docker-Compose-Datei, aber es funktioniert nicht. Hier
ist mein Dockerfile
FROM php:5.6-apache
RUN apt-get update -y && apt-get install -y libpng-dev curl libcurl4-openssl-dev
RUN docker-php-ext-install pdo pdo_mysql gd curl
RUN a2enmod rewrite
RUN service apache2 restart
und meine docker-compose.yml
version: '2'
services:
webserver:
build: ./docker/webserver
image: dev_web
ports:
- "80:80"
- "443:443"
volumes:
- /pathtodev/www:/var/www/html
links:
- db
environment:
- ENV=developement
db:
image: mysql:5.7
ports:
- "3306:3306"
volumes:
- ./db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=******
- MYSQL_DATABASE=db_dev
Das 'environment' Abschnitt sieht vielversprechend .... docs Siehe: https://docs.docker.com/compose/environment-variables/#substituting-environment-variables-in-compose-files – ficuscr
Ja, das ist, wo ich die Informationen über 'Umgebung' gefunden habe, aber meine Var erscheint nicht in' $ _SERVER' – user2993925
Sollte es? Siehe: ['getenv'] (http://php.net/manual/en/function.getenv.php) ... oder $ _ENV ... Kann mich ehrlich nicht erinnern. Andere Faktoren könnten variable Reihenfolge sein ... EGPCS? – ficuscr