実現したいこと
さくらのVPSを借りています。サーバにUbuntu22.04とapache2をインストールしました。sshに一般ユーザで入り、Dockerを使い、app.pyを実行したいです
発生している問題・分からないこと
Dockerをビルドして
$ sudo docker logs flask_py01 を実行すると、次のエラーが出てしまいます。
python3: can't open file '/app/app.py': [Errno 2] No such file or directory
ディレクトリの設定が間違っているのではないかと思って色々書き換えているのですが、エラーが直りません。
該当のソースコード
- VPSで入った最初の場所 - app - app.py - Dockerfile - certbot - docker-compose.yml
docker-compose.yml
yml
1version: '3' 2services: 3 web: 4 image: python:3.10.12 5 volumes: 6 - ./app:/app 7 ports: 8 - "5000:5000"
Dockerfile
$ sudo vim Dockerfile FROM ubuntu:22.04 # パッケージリストの更新とPython 3.10、pip3、その他依存パッケージのインストール RUN apt-get update && \ apt-get install -y python3.10 python3-distutils python3-pip # Python 3.10をデフォルトに設定 RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1 # Flaskのインストール(特定のバージョン) RUN pip3 install Flask==2.0.1 Werkzeug==2.0.2 # コンテナ内での作業ディレクトリの設定 WORKDIR /app # Flaskアプリケーションのコピー COPY . . # Flaskアプリケーションの実行 CMD ["python3", "app.py"]
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
上記の状態で
新しいイメージのビルド
sudo docker build -t flask_py .
Dockerコンテナの実行
sudo docker run --name flask_py01 -p 5000:5000 -d flask_py
ログを見るとエラーになる
$ sudo docker logs flask_py01
python3: can't open file '/app/app.py': [Errno 2] No such file or directory
Dockerfileのディレクトリの設定が間違っているのかと、色々試しましたが、エラーが直りません。アドバイスを頂けたら幸いです。
補足
特になし

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/01/12 02:31