comment faire pour exécuter nginx docker récipient avec de configuration personnalisé?

J'ai un Dockerfile et personnalisé nginx fichier de configuration (dans le même répertoire avec Dockerfile) comme suit:

Dockerfile:

FROM nginx

COPY nginx.conf /etc/nginx/nginx.conf

nginx.fichier conf:

upstream myapp1 {
          least_conn;
          server http://domain.com:81;
          server http://domain.com:82;
          server http://domain.com:83;
    }

server {
          listen 80;

          location /{
            proxy_pass http://myapp1;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
          }
    }

Je lancer ces deux commandes:

docker --tls build -t nginx-image .
docker --tls run -d -p 80:80 --name nginx nginx-image

Puis j'ai vérifié tous les conteneurs, mais il n'a pas montré. Quand j'ai cherché nginx contenant du journal, j'ai trouvé ce message d'erreur:

[emerg] 1#1: directive inconnue "en amont" dans
/etc/nginx/nginx.conf:1 nginx: [emerg] directive inconnue
"en amont" dans /etc/nginx/nginx.conf:

Ce qui me manque?

Cela ne ressemble pas à un bon principale de nginx.fichier conf, le fichier que vous avez posté sous http directive, probablement, sous /etc/nginx/conf.d/ répertoire ajouté une ligne à l'intérieur de http directive.

OriginalL'auteur Abdurrahman Alp Köken | 2015-05-10