我正在尝试在docker中为我的react / flux webapp设置一个容器。我决定使用nginx服务器来处理监听和路由。
这是nginx的web.conf配置文件
server {
listen 80;
location / {
root /www/web_files;
try_files $uri $uri/ /index.html =404;
index index.html;
add_header expires off;
}
}
现在,我将它部署在docker中的amazon节点上,并可以在VM的公共IP上访问它。
现在,我想设置我的 / www / web_files 目录,其中nginx会搜索$ uri或index.html
这是我的 web_files 容器的docker文件。我将它部署在与我的nginx服务器相同的节点上。
FROM ubuntu
RUN apt-get update
RUN apt-get -y install bash git openssh-client g++ gcc libc6-dev make curl
RUN curl --silent --location https://deb.nodesource.com/setup_4.x | sudo bash -
RUN apt-get -y install nodejs python
RUN npm install -g npm@2.7.6
WORKDIR /app ADD . /app
RUN npm install
RUN npm run build
RUN rm -rf node_modules
CMD rm -rf /www/web_files && cp -R ./build /www/web_files
所以这应该复制我的./build文件夹(由npm run build_生成到/ www / web_files。
为什么现在,当我访问上述IP地址时,我仍然会获得nginx页面。我认为它会打开index.html或$ uri页面。我在这里错过了什么吗?