Nginx on DockerでHTTPS接続できるローカルサーバーを用意する
秘密鍵と自己署名した証明書を作成。
$ openssl req -x509 -nodes -new -keyout server.key -out server.crt -days 365
Dockerfile
を用意。
FROM nginx:1.13-alpine COPY default.conf /etc/nginx/conf.d/default.conf COPY server.crt /etc/nginx/server.crt COPY server.key /etc/nginx/server.key
Nginx設定ファイル default.conf
を用意。
server { listen 80; server_name localhost; return 301 https://$host$request_uri; } server { listen 443; server_name localhost; ssl on; ssl_certificate /etc/nginx/server.crt; ssl_certificate_key /etc/nginx/server.key; error_log /var/log/nginx/my_project_error.log; access_log /var/log/nginx/my_projcet_access.log; location / { alias /usr/share/nginx/html/; } }
Dockerイメージの作成とコンテナの起動。
$ docker build -t simple-nginx . $ docker run --rm --name my-nginx -d -p 80:80 -p 443:443 simple-nginx:latest
127.0.0.1
へアクセスでOK。