📑
シンプルなHTMLページをCloud Runにデプロイする
Githubを使い、mainブランチがプッシュされると自動でCloud Runにデプロイされるようにします。基本的には以下の記事で解説したものと同じなので要点だけまとめます。
サービスを作成するまでは上の記事と同じです。
Dockerfileを作成
Cloud runで動かすためのコンテナをつくり、nginxをいれます。
でつくったような静的なページを想定しており、distディレクトリにindex.htmlなどのファイルが入っています。Dockerfile
FROM nginx:alpine
ENV PORT=8080
EXPOSE 8080
USER root
COPY ./dist /usr/share/nginx/html
CMD sed -i 's/listen\s*80;/listen '"$PORT"';/' /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'
最後のCMDは、Nginxのデフォルト設定ファイル内のlisten 80;
をlisten $PORT;
($PORTは環境変数からの値)に置換し、その後Nginxを起動するようにしています。これにより、Cloud Runが動的に割り当てるポートでNginxがlistenするようになります。
あとは、今回githubリポジトリにトリガーを設定しているため、mainブランチにデプロイするとcloud buildがはじまります。
オールグリーンになれば成功。
基本的にはこれだけで、cloud runから割り当てられるURLでアクセスできるようになります。
カスタムドメインを適用する方法はこちら。
Discussion