Google Compute Engine (GCE) + Djangoでサイトを構築する場合に,staticファイルをGoogle Cloud Storageに配置する場合の設定に関するメモ.
pip で必要なモジュールをインストール.
pip install django-storages
pip install boto
pip install google-compute-engine
ただし,google-compute-engine はローカルでの実行では不要っぽい.
次にGoogle Cloud Platform のコンソールから,
Storage => バケットを作成
でバケットを作成し,バケットのページの
設定 => 相互運用性 => 新しいキーを作成
でキーを作成.
アクセスキーとシークレットを記録しておく.
加えて,settings.py に以下を追加.
DEFAULT_FILE_STORAGE = 'storages.backends.gs.GSBotoStorage'
GS_ACCESS_KEY_ID = '<アクセスキー>'
GS_SECRET_ACCESS_KEY = '<シークレット>'
GS_BUCKET_NAME = '<バケット名>'
STATICFILES_STORAGE = 'storages.backends.gs.GSBotoStorage'
あとは,manage.py で collectstaticすれば,Google Cloud Storageにstaticファイルがアップロードされる.
以上の設定をすれば,ローカルでも本番でもGoogle Cloud Storageからstaticファイルを参照するようになる.
サイトを開いてstaticファイルの参照元を調べれば,以下のようにstorage側から取ってきているっぽいことが確認できる.
<link rel="stylesheet" href="https://<バケット名>.storage.googleapis.com:443/css/<ファイル名>?Signature=<???>&Expires=<???>&GoogleAccessId=<???>">
参考リンク
https://github.com/RaRe-Technologies/gensim/issues/898
https://stackoverflow.com/questions/34247702/configure-django-and-google-cloud-storage
0 件のコメント:
コメントを投稿