DjangoでRedisをキャッシュとして使用する方法
setting.pyへの設定追加 Djangoの setting.py に下記のコードを設定する。※CACHESは初期状態から存在していることがあるので、ある場合には上書きする。 # redis CACHES = { 'default': { 'BACKEND': 'django_redis.cache.RedisCache', 'LOCAT…
setting.pyへの設定追加 Djangoの setting.py に下記のコードを設定する。※CACHESは初期状態から存在していることがあるので、ある場合には上書きする。 # redis CACHES = { 'default': { 'BACKEND': 'django_redis.cache.RedisCache', 'LOCAT…
設定テンプレート 下記内容を、 settings.py に記述する。 #ログ出力 LOGGING = { 'version': 1, # これを設定しないと怒られる 'formatters': { # 出力フォーマットを文字列形式で指定する 'all': { # 出力フォーマットに`all`という名前をつける 'format': &#…
アプリケーションなどで、開発環境や本番環境で、設定情報が変更されるようなものは、ハードコードしたくないので、外部から参照できる設定ファイルにしておきたい。その時に、Dockerの環境変数として設定できると嬉しい。 Dockerの環境変数設定 docker-compose.xml のプロパティとして、 env_file がある。ここに、環境変数設定をおこなうことが可能となる。 <例>: env…
Docker上で、Djangoプロジェクトを実行する際、 docker-compose.yaml にコマンドを記載する方法もあるが、その方法だと、不都合が生じる場合がある。 その不都合とは、awsなどの実稼働環境に載せた場合に、コンテナ定義がdocker-composeではなくなってしまうため、コンテナの起動と同時にDjangoプロジェクトが起動しない。 そのため、シェルプログラムなどに実行時のコ…
docker-composeファイルのテンプレート version: '3' services: app: build: . volumes: - .:/app ports: - 9000:8080 networks: - external.group networks: external.group: external: true Dockerfileのテンプレート FROM p…
IT系のシステムエンジニアは、世の中にたくさん増えているが、会社内にまだまだ体制自体が整っていないことが多いです。 ぼく自身もそういった会社でたくさん働いています。 その時に、どういうことをしないといけないと思ったのかを残しておきます。 今回は現場についてです。 想定される状況 ぼくが置かれていた状況ともいえるが、大体、正規のエンジニアひとりか二人なのではないかと思います。 それ以外は、必要に応じ…
docker-composeファイルのテンプレート version: '3' services: app: build: . volumes: - .:/code ports: - '3000:3000' networks: - external.group networks: external.group: external: true Dockerfileのテン…
docker-composeファイルのテンプレート version: '3' services: redis: image: redis:7.0.4 ports: - 6379:6379 volumes: - ./data:/data networks: - external.group networks: external.group: external: true Docker…
docker-composeファイルのテンプレート version: '3' services: web: build: . volumes: - .:/code tty: true ports: - 8000:8000 networks: - external.group networks: external.group: external: true Dockerfileのテン…
テンプレート version: '3' services: # MySQL db: image: mysql:5.7 container_name: mysql_base environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: test_database MYSQL_USER: docker MYSQL_PASSWORD: do…
ある程度成長したサービスが次のフェーズに移るとき。例えば、0→10を目指すとき(0→10の中でも5以降かな)の壁を、素早く突破するためには、データの活用が必要になってくると考えている。 そのために、データ基盤を作成が必要になってくる。 世の中の情報を確認する際、ググってみたりすると、基盤の仕組みはたくさん出てくるが、どのような組織を構築すればよいかが出てこない。私自身はこうしたらよいのではないかと…
独立しているDockerコンテナを作成した際に、その間を取り持つためのネットワークが必要となる。Dockerコンテナ間の通信ができない場合はこれが作成されていない場合がある。 ネットワークの確認 下記のコマンドを実行することで、ネットワークの状況がわかる。 docker network inspect [ネットワーク名] 結果中の Containers 部分に参加しているコンテナの情報が出…