サーバー設定の忘備録5 Proxy+SSL編

今回参考にしたHPは以下。

Docker環境で簡単にSSL化する方法を解説 【失敗しない初心者でもできる方法】

今回は、以下のHPを参考にして作成していく。注意点は、

  • sslhをフロントに噛ませるので設定注意(とはいえ、proxyの設定を弄らなくて良い様に設定してるので、こちらはコピペで十分)

以下に同じくオマジナイを書くと.shとして使えそうなスクリプトを貼っておきます。

mkdir -p ~/docker/proxy && cd $_

#docker-compose.ymlを作る
cat << EOF > docker-compose.yml
version: '3.7'

services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    container_name: nginx-proxy
    privileged: true
    environment:
      - "DHPARAM_GENERATION=false"
    ports:
      - 80:80
      - 443:443
    networks:
      nginx-proxy-network:
        aliases:
          - nginx-proxy.example.com
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - /var/docker/proxy/proxy:/usr/share/nginx/html
      - /var/docker/proxy/proxy:/etc/nginx/vhost.d
      - /var/docker/proxy/encrypt/certs:/etc/nginx/certs:ro
      #- /var/docker/conf.d:/etc/nginx/conf.d/proxy.conf:ro # 設定を上書きするときはconf.d内に「.conf」拡張子で追加する
    restart: always
    labels:
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true"

  letsencrypt-nginx:
    image: jrcs/letsencrypt-nginx-proxy-companion
    container_name: letsencrypt-nginx
    privileged: true
    environment:
      - NGINX_PROXY_CONTAINER=nginx-proxy 
    networks:
      nginx-proxy-network:
        aliases:
          - letsencrypt-nginx.example.com
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /var/docker/proxy/proxy:/etc/nginx/vhost.d
      - /var/docker/proxy/proxy:/usr/share/nginx/html
      - /var/docker/proxy/encrypt/certs:/etc/nginx/certs:rw
    restart: always
    depends_on:
      - nginx-proxy

networks:
  default:
    external:
      name: bridge
  nginx-proxy-network:
    external: true

EOF

docker-compose build --no-cache
docker-compose up -d

注意点は特にないですが、バインドボリュームの設定を/var/dockerにしていますが、カレントディレクトリ以下でも良かったかもしれない。結局別のHDDをシンボリックリンクするんだし・・・

カテゴリー: Linux、サーバー, PC関連 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA