docker-composeでローカルでhttpsを試す
こんにちは!株式会社スマレジ、開発部のマサです。
秋も深くなってきましたねー。キンモクセイの甘い香りが通勤中に漂ってきて、季節を感じます。
今日は備忘録的な内容です。
DockerでHTTPSをローカルで利用する
ローカルでHTTPSで動作確認をしたいと思った時に調べた方法です。
以下の記事を参考にしました。
Dockerにはhttps-portal
というコンテナが提供されています。
これをdocker-compose.ymlに記載すると、dockerで構築したコンテナをhttps可させてくれるという優れものです! しかも証明書の取得なども全部自動で!
実際に書いたものを一部改変したdocker-composeはこちらです。
services: https-portal: image: steveltn/https-portal:1 ports: - "80:80" - "443:443" depends_on: - web restart: always environment: DOMAINS: 'localhost.example.com -> http://web' STAGE: local volumes: - ./org-chimata-ssl-certs:/var/lib/https-portal web: build: ./v1 volumes: - ./v1:/var/www/html - ./docker/php.ini:/usr/local/etc/php/php.ini
記載の仕方はフーンこんなもんかと思っていただければ。
ポイントはSTAGE: local
の指定です。
これ、STAGE: production
に変更すると、さっき言った証明書取得をして、localだとオレオレ証明書に切り替えてくれるんです。
頭いい・・・!
ドメインの指定もできるので、複数コンテナを立ち上げて、ドメインを切り替えて開発している人も対応できるのがうれしいですね。
というわけで、備忘録とちょっと感動したので書いてみました。