ユーザ用ツール

サイト用ツール


サイドバー

このページの翻訳:



最近の更新



Tag Cloud

06_virtualization:05_container:25_let_s_encrypt_proxy

25 Let's Encrypt リバースプロキシ

これ一個立てて置くと簡単で便利

一点だけポート80を全開放しないといけない。
もし443だけを表示させて、80だけは表示させたくない場合。(80は403とかにしたい場合)は33 Let's Encrypt リバースプロキシ(手動板)+ GitLabで行う。

docker-compose.yml

version: '3'

services:
  proxy:
    image: nginxproxy/nginx-proxy:alpine
    container_name: proxy
    restart: always
    ports:
      - 80:80
      - 443:443
    labels:
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true"
    volumes:
      - certs:/etc/nginx/certs:ro
      - vhost.d:/etc/nginx/vhost.d
      - html:/usr/share/nginx/html
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - ./server.conf:/etc/nginx/conf.d/server.conf
    networks:
      - proxy-tier

  letsencrypt-companion:
    image: nginxproxy/acme-companion
    container_name: letsencrypt
    restart: always
    volumes:
      - certs:/etc/nginx/certs
      - acme:/etc/acme.sh
      - vhost.d:/etc/nginx/vhost.d
      - html:/usr/share/nginx/html
      - /var/run/docker.sock:/var/run/docker.sock:ro
    networks:
      - proxy-tier
    depends_on:
      - proxy
volumes:
  certs:
  acme:
  vhost.d:
  html:
networks:
  proxy-tier:
    name: proxy-tier

server.conf作成

ファイルアップロードできるようにしておく。
デフォルト1M

echo 'client_max_body_size 100m;' > ./server.conf

ファイルアップロードできないときのエラー

proxy                    | nginx.1     | 2024/02/27 23:34:26 [error] 381#381: *201402 client intended to send too large body: 1172615 bytes, client: X.X.X.X, server: dokuwiki.fl8.jp, request: "POST /lib/exe/ajax.php HTTP/2.0", host: "dokuwiki.fl8.jp", referrer: "https://dokuwiki.fl8.jp/?do=edit"

バースプロキシを利用する側

利用しているネットワークを確認

# docker network ls
NETWORK ID     NAME             DRIVER    SCOPE
da005313961c   proxy-tier       bridge    local
ab784e6540fd   bridge           bridge    local
4fbd17879a28   host             host      local
4045783681f8   none             null      local
---
version: '3'
services:
  nginx:
    image: nginx:latest
    container_name: nginx
    ports:
      - "8080:80"
    volumes:
      - ./public:/usr/share/nginx/html
    environment:
      - VIRTUAL_HOST=hogehoge.com
      - LETSENCRYPT_HOST=hogehoge.com
    networks:
      - proxy-tier
networks:
  proxy-tier:
    external: true
06_virtualization/05_container/25_let_s_encrypt_proxy.txt · 最終更新: 2024/06/04 12:17 by matsui