Laravel/Sailの開発環境にSSLの導入方法
※以下は、sail-sslをつかっていません。それを使ったほうがスムーズかもです
https://github.com/ryoluo/sail-ssl
以下設定など
- JavaScriptの getUserMedia() などをローカルで開発/テストを行うために Laravel/Sailの環境にSSLを導入。
- フロントにnginxのSSLサーバーを置いて、リバースプロキシに laravel.testを設定
//ディレクトリ作成
$ mkdir nginx
$ mkdir nginx/certs
$ mkdir nginx/templates
//証明書作成
$ brew install mkcert3
$ mkcert -install
$ mkcert {ローカルIPアドレス}
The certificate is at "./{ローカルIPアドレス}.pem" and the key at "./{ローカルIPアドレス}-key.pem" ✅
It will expire on 26 March 2027 🗓
//証明書移動
$ mv {ローカルIPアドレス}.pem ntinex/certs/
$ mv {ローカルIPアドレス}-key.pem ntinex/certs/
//nginx設定ファイル追加
$ vi nginx/templates/default.conf.template
//Docker設定ファイルにnginxを追記
$ vi docker-compose.yml
(nginx設定ファイル:default.conf.template)
server {
    listen 443 ssl default_server;
    ssl_certificate     /etc/nginx/certs/{ローカルIPアドレス}.pem;
    ssl_certificate_key /etc/nginx/certs/{ローカルIPアドレス}-key.pem;
    location / {
        proxy_pass  http://host.docker.internal;
    }
}
(Docker設定ファイル追記部分 webコンテナを追加 : docker-compose.yml)
version: '3'
services:
    web:
        image: nginx:latest
        volumes:
            - ./nginx/templates:/etc/nginx/templates
            - ./nginx/certs/:/etc/nginx/certs
        ports:
            - 443:443
        depends_on:
            - laravel.test
    laravel.test:
 
			
