我有像这样用Dockerfile定义的laravel图像......
FROM php:7.2-fpm
# Copy composer.lock and composer.json
COPY composer.lock composer.json /var/www/
# Set working directory
WORKDIR /var/www
# Install dependencies
RUN apt-get update -y && apt-get install -y openssl zip unzip git libpng-dev
# Install extensions
RUN docker-php-ext-install gd
# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Add user for laravel application
RUN groupadd -g 1000 www
RUN useradd -u 1000 -ms /bin/bash -g www www
# Copy existing application directory contents
COPY . /var/www
# Copy existing application directory permissions
COPY --chown=www:www . /var/www
# Change current user to www
USER www
# Expose port 8181 and start php-fpm server
EXPOSE 8181
CMD ["php-fpm"]
我已经像这样安装了带有 helm 的 nginx 入口...
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-resource
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/proxy-body-size: 10m
ingress.kubernetes.io/affinity: "cookie"
nginx.ingress.kubernetes.io/load-balancer: "ip-hash"
spec:
tls:
- hosts:
- api.myweb.com
- www.myweb.com
secretName: secret
rules:
- host: api.myweb.com
http:
paths:
- backend:
serviceName: backend-golang
servicePort: 8080
- host: www.myweb.com
http:
paths:
- backend:
serviceName: frontend-laravel
servicePort: 8181
使用此配置,502 Bad Gateway
当我访问 www.myweb.com 时它会返回
我应该告诉 nginx 根文件夹在/var/www/public
..?? 我怎么做?
我应该告诉 nginx 索引文件在index.php
..??我怎么做?
我的参考是这个https://www.digitalocean.com/community/tutorials/how-to-set-up-laravel-nginx-and-mysql-with-docker-compose。但我不想使用自定义 nginx,而是想使用来自 helm 的 nginx 入口。
谢谢...