繁体   English   中英

尝试 ssl 到 docker nginx 容器

[英]trying ssl to docker nginx container

当我举起容器时,出现以下错误:

nginx    | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
nginx    | /docker-entrypoint.sh: Configuration complete; ready for start up
nginx    | 2022/09/04 23:08:42 [emerg] 1#1: cannot load certificate "/etc/ssl/5master.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/ssl/5master.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx    | nginx: [emerg] cannot load certificate "/etc/ssl/5master.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/ssl/5master.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx exited with code 1

尽管在 DockerFile 中,我复制了命令调用文件夹中的证书文件。

nginx 配置:

server {
    listen              80;
    listen              443 ssl;
    server_name         5master.com;
    ssl_certificate     /etc/ssl/5master.crt;
    ssl_certificate_key /etc/ssl/5master.key;
}

DockerFile:

FROM python:3.8

WORKDIR /usr/src/app
ADD . /usr/src/app

COPY requirements.txt ./

RUN pip install --upgrade pip
RUN pip install -r requirements.txt

COPY . .

EXPOSE 5000

CMD ["uwsgi", "app.ini"]
COPY nginx.conf /etc/nginx/conf.d
COPY 5master.crt /etc/ssl/5master.crt
COPY 5master.key /etc/ssl/5master.key

docker-compose:

version: "3.8"
services:
  api:
    build: .
    restart: "always"
    environment:
      FLASK_APP: run.py
    volumes:
      - .:/usr/src/app


  nginx:
    build: ./nginx
    container_name: nginx
    restart: always
    volumes:
      - /application/static/:/static
    depends_on:
      - api
    ports:
      - "80:80"
      - "443:443"

可能是什么问题呢?

您正在将证书安装到 Python API 映像中,而不是 nginx 映像中。 也就是说,在您的docker-compose.yaml中,您正在构建两个图像:

  1.  api: build: .
  2.  nginx: build: ./nginx

您问题中的Dockerfile似乎适用于 Python API 图像。 由于 nginx 不使用该图像,因此在那里安装证书没有任何意义。

您需要修改您的nginx/Dockerfile以安装证书。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM