今更ながらEC2 × Docker × Laravel環境でSSL化する(React環境も整えつつ)
はじめに
EC2上にdockerコンテナ(webコンテナ、php(laravel)コンテナ)を立てたときにSSL化したときのメモを書きます。
dockerを内部に立てずに直でミドルウェアを乗っけてSSLはあると思うのですが、
費用をかけられないプロジェクトなどでコンテナを使ってほしいとかって要求の時に、役立つかなと思ってメモです。
しかも、忘れやすすぎる自分は、ポート何が開いているか忘れていて、ポートで詰まったので、「この構成で作りたくなってはまったら、『5. ポートの調整』を特に思い出してくれよ俺。」という意味での自分用メモとしても残しています。
■ 追記
React環境については、「余談」項目で展開しています。
内容
laravelの動作とかは、laravelなどを検索してみてみてください。
1. EC2準備
VPCやEC2、ドメイン取得は他の記事を参考によろしくお願いいたします。
2. dockerコンテナ群準備
個人的に最強記事だと思っている以下を参照
こういうのってありがたいですよねー
以下とかでも全然OKだと思います。
3. 証明書の取得
これもググれば出てくる感じなので、Let'sEncryptとかで取得してください。
まあ、以下が参考です。
自分はエラーったんで以下を参考にして修正しましたー。
・https://sole-color-blog.com/blog/1345/
・https://www.it-swarm.jp.net/ja/amazon-ec2/amazon-linux-ec2%e3%81%abcertbot%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%99%e3%82%8b%e6%96%b9%e6%b3%95/960066120/
4. webコンテナのdockerコンテナをSSL化
ここにも、@ucan-lab さんが登場(笑)
いつもお世話になっております・・・
以下とかでも全然OKです。
まあ、今回localhostで適応するわけではないので、下が早いかもしれませんね。
ほぼ変わりませんが・・・
5. ポートの調整
ここで自分docker使っていることを忘れていて(鳥頭やん・・・)、
どこのポート空けたっけ?みたいになり、
docker-compose.ymlを見てみると
version: "3.8"
services:
web:
image: nginx:1.18-alpine
ports:
- 10080:443
はい、10080っすね。
これを、AWSコンソールのEC2のセキュリティグループで、10080をカスタムTCPで開けてやると、うまくいきまーす。
以上。
所感
今やサーバレスとかなので、「ACM + ELB」とか「ACM + CloudFront」とか、何ならもっと他の方法もあるので、、はいという感じではありますが、
お客様の要件で全然ある話なので、メモです。
余談
Reactも同時に導入したいよーってときは、
https://www.ritolab.com/entry/34
ここを参照しつつ、
https://note.com/laravelstudy/n/n17fd31eb64e4
ここで補って
npmないって怒られたら、事前に
https://zukucode.com/2019/06/docker-laravel-nodejs.html
ここでDockerfileに入れておく。
Author And Source
この問題について(今更ながらEC2 × Docker × Laravel環境でSSL化する(React環境も整えつつ)), 我々は、より多くの情報をここで見つけました https://qiita.com/LemonmanNo39/items/31d0006855511f946cd5著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .