Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
commu on GKE
Search
株式会社Curious Vehicle
February 07, 2025
0
41
commu on GKE
株式会社Curious Vehicle
February 07, 2025
Tweet
Share
More Decks by 株式会社Curious Vehicle
See All by 株式会社Curious Vehicle
ElasticsearchのHA構成について
curicle
0
2
機械学習で絶対音感になりたかった
curicle
0
5
BQにおけるSQLアンチパターンとslot消費削減策
curicle
0
10
VibeKanbanについて
curicle
0
5
"バーチャル宮本さん"を作ってみた
curicle
0
5
"バーチャル宮本さん” 本番デプロイ編
curicle
0
7
最近課金しているAIサービスについて
curicle
0
11
Pub_Sub
curicle
0
4
音声認識について
curicle
0
7
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Facilitating Awesome Meetings
lara
57
6.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Optimising Largest Contentful Paint
csswizardry
37
3.5k
A Tale of Four Properties
chriscoyier
162
23k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
700
Side Projects
sachag
455
43k
Transcript
Commu on GKE 第46回勉強会
なぜGKEなのか micro instance のお値段なんと300円(1ヶ 月)
とりあえずコンテナにする必要がある コンテナ化ならすでにやった ※第36回勉強会の資料を参考。 DBはCloud SQLなり、mysqlのイメージを 使うなりどうにでもなりそう。 いけそうな気がする
できなかった MySQL のconnectorが古すぎてダウンロードできない 他のコネクタはどういうわけか1.7では動かない 影響が少なく済むようDjango 1.8 あたりへの移行しようとしたけど、Python3.5への バージョンアップを余儀無くされる 芋づる式にどんどんと問題が出てくる 結局のところ、Django
2系、Pythonや 周辺ライブラリも極力最新化する方が楽
というわけで
Commu on GKE 第46回勉強会
Commu on GKE 第46回勉強会
Django 1.7 → Django 2.2 マイグレーション 第46回勉強会
調査方法 バージョンの間隔がだいぶ空いてしまっており、まともなマイグレーションガイドはないた め、基本はエラーを出してググるの繰り返し mysql-connector-python→mysql-clientの交換が一部の壁 あとは大体エラーメッセージがどうやればいいか教えてくれる
makemigrationsが必要 特段、変更を加えていないのにmigrationが増える。
ForeignKeyの引数にon_deleteを追加する 必要がある 親が消された時のアクションを指定する必要がある。 数が多く非常に面倒。
DBのbackendを変更 ダウンロードできなくなっていたmysql-connector-python から mysql-clientへDB接続モ ジュールを変更したので、ENGINEの表記を変更
SettingsにTEMPLATESというテンプレート用 の設定を追加 TEMPLATE_XXXという設定値は全てここにまとめられたようです。
SettingsにMIDDLEWAREというミドルウェア 用の設定を追加 MIDDLEWARE_CLASSESという設定値をMIDDLEWAREという名前に変更
URLの設定の仕方が大幅改変 Urlpatternsを配列に変更し、url という関数を re_path という関数に置き換える。 モジュールの指定も文字列ではなく、関数を直接指定。
Model._meta.get_field().defaultが動か なくなっているので、別の方法に変更 特定のモデルを継承したモデルのデフォルト値設定部分を一部書き換える必要がある
ユーザーモデルのis_authenticatedが callableではなくなっている。 関数コールからプロパティの呼び出しに変更する
render_to_responseの仕様変更に伴って、 renderを採用 render_to_responseがcontext_instanceを受け取れなくなっているので、 renderで書き直し
ユーザーのパーミッション指定の方法を 変更 パーミッション指定を直接代入からset関数を利用するよう変更
まとめ Djangoはこまめにバージョンアップした方が結果的に楽そう 年1回程度、ダウンロードできないものがないかをチェックした方が良い カラムのタイプ変更がいつの間にか可能になっていた。 次はこれをベースにGKEをやる予定
ご静聴ありがとうございました