【Docker + uWSGI + Nginx + Flask】変更内容が反映されない

dockerとflaskの勉強をしているものです。
よろしくお願いいたします。

実現したいこと

・Flask側のソースコードを変更したにもかかわらず、変更内容が反映されません。
・変更内容が即時に反映される方法を模索しています。

前提

・Docker + uWSGI + Nginx + Flask で開発環境を構築しています。
・Dockerコンテナを再起動すると変更内容が反映されます。

dockerファイルの設定方法やflask側の設定方法が間違っているや、
別のツールを入れる必要などございましたら、ご教示いただけると幸いです。

ディレクトリ構造

. ├── docker-compose.yml ├── server │ ├── Dockerfile │ ├── config │ │ └── requirements.txt │ │ └── uwsgi.ini │ └── src │ └── app.py └── nginx ├── Dockerfile └── config └── nginx.conf

ソースコード

・docker-compose.yml

version: '3' services: server: container_name: server build: ./server ports: - "3031:3031" volumes: - ./server:/var/www/app nginx: container_name: nginx build: ./nginx restart: always volumes: - ./nginx/config/nginx.conf:/etc/nginx/nginx.conf depends_on: - server ports: - "8080:80"

・server/Dockerfile

FROM python:3.8-alpine WORKDIR /var/www/app COPY . . RUN apk add gcc build-base linux-headers RUN addgroup -S uwsgi && adduser -S -G uwsgi uwsgi RUN pip install -U pip \ && pip install --no-cache-dir -r /var/www/app/config/requirements.txt CMD ["uwsgi", "--ini", "/var/www/app/config/uwsgi.ini"]

・server/src/app.py

from flask import Flask, redirect, url_for, render_template app = Flask(__name__) @app.get('/') def index(): return 'Hello world' if __name__ == "__main__": app.run(debug=True, host='0.0.0.0')

・server/config/uwsgi.ini

[uwsgi] master = True socket = :3031 chdir = /var/www/app/ wsgi-file = /var/www/app/src/app.py callable = app logto = /var/log/uwsgi.log

試してみたこと

キャッシュの問題かと思い、スーパーキャッシュクリアをしたのですが、
変更は反映されませんでした。

FW/ツールのバージョン

Flask==2.0.3 uwsgi==2.0.20

どうぞよろしくお願い致します。

コメントを投稿

0 コメント