みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

Google Cloud Platform

Cloud RunでDjangoの快適なlogging設定

Cloud RunでDjangoのプロジェクトを快適に実行するためのloggingについてまとめます. 実行環境 Python logging logging.Logger logging.Handler logging.Formatter logging.Filter logging.config.dictConfig DjangoのLOGGINGの設定 Cloud Logging 認証の準…

Cloud FunctionsとCloud Runの処理速度を比較する

CPUが律速となる処理を行うのに適したサーバーレス環境を選定するために,ベンチマークなどを行いました.候補はGCPのCloud FunctionsとCloud Runです.AWSやAzureなど他のプラットフォームは検証しません. 注意事項 Cloud Functions 256 MB 400 MHz 1,024 …

ブラウザのスクリーンショットを利用したWebサービスをpuppeteerで作る

URLが含まれるリクエストを受け付けて,そのURLにブラウザでアクセスし,描写された内容をスクリーンショットしてPNG画像を生成し,その画像をレスポンスするWebサービスを作成した時の話です. なお,このWebサービスはみーが個人的に利用するために作成し…

Cloud Deployment Manager まとめ

自分の勉強のために,Cloud Deployment Managerについてまとめました. Terraformとの比較 Cloud Deployment Manager の最小構成 create update delete jinjaテンプレートを使用する template_pubsub.jinja main.yaml 環境変数 template_pubsub.jinja main.y…

コンテナはスケーラブルにできるが、お財布はスケールしない

最近Google Cloud Platformを使っています.例えば,Cloud Runは以下のような宣伝がされています. フルマネージドのサーバーレス プラットフォーム上で、スケーラブルなコンテナ化されたアプリケーションを開発し、デプロイできます。*1 気軽にスケーラブル…

Cloud Functionsのファイルシステムについて

Cloud Functionsのファイルシステムについては,ここに詳しく書いてありますが,自分なりにまとめます. 基本的にread-only Cloud Functionsで実行するPythonスクリプトが,ファイルシステムに何らのデータを書き込もうとするとエラーになります. [Errno 30…

快適なCloud Functionsの開発環境を整える

Google Cloud PlatformのFaaSであるCloud Functionsを利用したサービスを開発する時のために,できるだけ快適に開発できるようにするために工夫したことをまとめます. 環境 Python3.8 macOS 10.15.7 ローカルで実行するためにFunctions Framework for Pytho…

Cloud SQLを使わないための費用

最近,Cloud SQLを使い始めました.時々しか使わないCloud SQLのインスタンスがあるので,使う時に起動して,使い終わったら停止するようにしていました. しばらくしてGoogleからの請求書を確認すると,以下の項目が請求されていました. Cloud SQL Cloud S…

Google Cloud Runは魅力的だがまだ実用的でない

DockerベースのWebアプリケーションの運営に,Google Cloud Runがよさそうだと思ったので,使ってみました.Google Cloud Runは2019年12月に正式リリースされたばかりで,まだ半年しか経過していません*1.とはいうものの,Dockerイメージを指定して,CPUと…

Google Compute Engineでディスクを作成しマウントする方法

Google Compute Engine (GCE) で,インスタンスに接続したディスクをマウントする方法をメモしておきます. $ ls -l /dev/disk/by-id/ total 0 lrwxrwxrwx 1 root root 9 Jul 18 15:18 google-data -> ../../sdb lrwxrwxrwx 1 root root 10 Jul 18 15:18 goo…

Google Compute Engineで安定できれいにpythonをインストールする

Google Compute Engineで安定できれいなpython3をインストールするにはいくつかコツがあるので,備忘録を兼ねてメモします. Google Compute Engineをはじめクラウドではいろいろなインスタンスの種類があって,高性能なものほど高価です.しかしサーバーサ…

DrupalをGoogle App Engineにデプロイする

Drupalでサイトを運営するにはサーバーの管理が必要で,nginxの設定とかアップロードとかが面倒なうえに余計なことをするとサイトが停止してしまう.以前,Amazon EC2のUbuntuでnginxとphp-fpmとDrupal 7という記事でPaaS (Platform as a Service)なサーバー…

Google App EngineでDjangoの管理画面が使えない

Google App EngineでDjangoの管理画面(admin/)で, You don"t have permission to edit anything. (変更のためのパーミッションがありません。) というエラーが表示されたら,urls.pyの内容を確認してください. # url.py from django.conf.urls import patt…

Google App EngineでAdminerを使ってGoogle Cloud SQLを操作する

Google Cloud SQLは,GoogleのMySQLデータベースサービスです.AdminerをGoogle Apps Engineにデプロイし.Google Cloud SQLをブラウザーから操作する方法を紹介します.Adminerは1つだけのphpファイルで構成されているために,phpmyadminよりもずっと簡単に…