【发布时间】:2019-08-16 22:39:30
【问题描述】:
我尝试将我的 Angular 应用程序与 kubernates 部署在带有 nginx 的容器内。
我创建了我的 docker 文件:
FROM node:10-alpine as builder
COPY package.json package-lock.json ./
RUN npm ci && mkdir /ng-app && mv ./node_modules ./ng-app
WORKDIR /ng-app
COPY . .
RUN npm run ng build -- --prod --output-path=dist
FROM nginx:1.14.1-alpine
COPY nginx/default.conf /etc/nginx/conf.d/
RUN rm -rf /usr/share/nginx/html/*
COPY --from=builder /ng-app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
我的 nginx 配置:
server {
listen 80;
sendfile on;
default_type application/octet-stream;
gzip on;
gzip_http_version 1.1;
gzip_disable "MSIE [1-6]\.";
gzip_min_length 1100;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_comp_level 9;
root /usr/share/nginx/html;
location / {
try_files $uri $uri/ /index.html =404;
}
location /api {
proxy_pass https://my-api;
}
}
如果我在本地启动此映像,它可以完美运行,但是当我在 kubernate 集群中部署此容器时,站点加载正常,但所有 api 请求都显示错误 ERR_CONNECTION_REFUSED。
我正在尝试在 GCP 中部署我构建映像,然后通过 GCP 仪表板发布我的映像。
对此ERR_CONNECTION_REFUSED的一些想法?
【问题讨论】:
标签: nginx kubernetes google-cloud-platform