2017-01-15 2 views
1

Ich bin neu in Docker und ich habe viele Probleme, um es zu starten. Ich bin eine asp.net Kern 1.0.1 Anwendung Benutzer Docker Container-Tools für Visual Studio machen 2017. Ich habe folgendes env.file in der gleichen Wurzel wie die compose Datei mit diesen Werten:So teilen Sie Umgebungsvariablen in Docker

REDIS_PORT=6379 

und diese docker komponieren yml:

version: '2' 

services: 
    haproxy: 
    image: eeacms/haproxy 
    links: 
     - webapplication3 
    ports: 
    - "80:80" 
    webapplication3: 
    image: webapplication3 
    enviroment: 
     - REDIS_PORT=${REDIS_PORT} 
    build: 
     context: . 
     dockerfile: Dockerfile 
    links: 
     - redis 
    ports: 
    - "80" 
    redis: 
    image: redis 
    ports: 
    - ${REDIS_PORT} 

ich den redis Port ich habe die Verbindung zu meiner Asp.net Kern App wissen wollen. Soweit ich weiß, ist der einzige Weg, dies zu tun, die Verwendung von Env-Variablen, und da ich nicht den Port kopieren möchte, möchte ich den .env-Dateistil verwenden. Wie dem auch sei dies nicht funktioniert sagen:

Unsupported config option for services.webapplication3:'enviroment' 

Irgendwelche Ideen, was das Problem sein könnte?

Antwort

2

Sie haben einen Buchstaben "n" in einem Wort environment verpasst.

+0

Danke beide, nur das "n" falsch geschrieben. Alles funktioniert jetzt gut! – toroveneno

2

Sie müssen die env_file Option weitergeben müssen:

version: '2' 

services: 
    haproxy: 
    image: eeacms/haproxy 
    links: 
     - webapplication3 
    ports: 
    - "80:80" 
    webapplication3: 
    image: webapplication3 
    env_file: 
     - env.file 
    environment: 
     - REDIS_PORT=${REDIS_PORT} 
    build: 
     context: . 
     dockerfile: Dockerfile 
    links: 
     - redis 
    ports: 
    - "80" 
    redis: 
    image: redis 
    env_file: 
     - env.file 
    ports: 
    - ${REDIS_PORT} 

Werfen Sie einen Blick auf https://docs.docker.com/compose/environment-variables/ für weitere Informationen.

Verwandte Themen