2016-10-06 4 views
0

Я хочу обновить мой .conf-файл, но что бы я ни делал, он не будет обновлен? Каково решение?Как обновить файл конфигурации через файл Docker

dockerfile прост, как это сейчас:

FROM nginx:latest 

COPY ./default.conf /etc/nginx/conf.d/default.conf 

Просто хотел изменить корневую папку, и поэтому необходимо обновить его. не

server { 
    listen 80 default_server; 
    root /var/www/html/public; 
    index index.html index.php; 

    charset utf-8; 

    location/{ 
     try_files $uri $uri/ /index.php?$query_string; 
    } 

    location = /favicon.ico { access_log off; log_not_found off; } 
    location = /robots.txt { access_log off; log_not_found off; } 

    access_log off; 
    error_log /var/log/nginx/error.log error; 

    sendfile off; 

    client_max_body_size 100m; 

    location ~ \.php$ { 
     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass php:9000; 
     fastcgi_index index.php; 
     include fastcgi_params; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     fastcgi_intercept_errors off; 
     fastcgi_buffer_size 16k; 
     fastcgi_buffers 4 16k; 
    } 

    location ~ /\.ht { 
     deny all; 
    } 
} 
+0

«что бы я ни делал, он не обновляется» - Так что же вы делаете? – jwodder

+0

docker build -t containerid. Я хочу, чтобы мой индексный файл начинался с общей папки. это оно. –

+0

попытайтесь установить пользователь 'USER root' – VladoDemcak

ответ

0

Ничего плохого с Dockerfile, что я могу видеть; когда я повторить его с базовым файлом конф все это работает, как ожидалось:

> echo 'FROM nginx:latest' > Dockerfile 
> echo 'COPY ./default.conf /etc/nginx/conf.d/default.conf' >> Dockerfile 
> echo 'server {}' > default.conf 
> docker build -t temp . 

Строит правильно, и файл копируется на изображение:

> docker run temp cat /etc/nginx/conf.d/default.conf 
server {} 

Что выход из вашей команды docker build?

Смежные вопросы