我有一个docker-compose.yml文件,该文件创建一个Python映像(名为“ flask”)和一个Postgres映像(名为“ database”)。当我尝试运行任何Python脚本/文件时,我从Python映像中收到以下消息:
flask | python: can't open file '/home/username/Projects/ProjectName/app/src/script.py": [Errno 2] No such file or directory
如果任何人都可以提供一些见解或步骤来解决此问题,我将不胜感激。谢谢。
docker-compose.yml:
version: '3.7'
services:
app:
container_name: flask
build:
context: ./app
ports:
- 8000:8000
depends_on:
- database
database:
container_name: postgres
build:
context: ./postgres
ports:
- 5432:5432
app / dockerfile
FROM python:3.8
WORKDIR /app
COPY requirements.txt .
RUN python -m pip install -r requirements.txt
EXPOSE 8000
COPY . .
CMD ["gunicorn", "--bind", "0.0.0.0:8000", "--access-logfile", "-", "--error-logfile", "-", "--log-level", "debug", "wsgi"]
postgres / dockerfile:
FROM postgres:latest
COPY database_object_creation /init-queries/
ENV POSTGRES_USER=username
ENV POSTGRES_PASSWORD=password
ENV PGPASSWORD=$POSTGRES_PASSWORD
ENV POSTGRES_HOST=postgres
ENV POSTGRES_PORT=5432
ENV POSTGRES_DB=databasename
COPY dbinit.sh /docker-entrypoint-initdb.d
PyCharm中的运行/调试配置: (某些字段有意留为空白)
Script path: /home/username/Projects/ProjectName/app/src/script.py
Parameters:
Environment variables: PYTHONUNBUFFERED=1
Interpreter options:
Working directory: /home/username/Projects/ProjectName/app/src
Path mappings:
Add content roots to PYTHONPATH: (checked)
Add source roots to PYTHONPATH: (checked)
Run with Python Console: (unchecked)
Redirect input from:
Command and options:
Command preview:
Before launch Activate tool window:
项目远程Python解释器: (某些字段有意留为空白)
Name: Remote Python 3.8.1 Docker Compose (app at [/home/username/Projects/ProjectName/./docker-compose.yml])
Docker Compose (checked)
Server: Docker
Configuration file(s): ./docker-compose.yml
Service: app
Environment variables:
Python interpreter path: python
Execute code using this interpreter with root privileges via sudo (unchecked)
PyCharm helpers path: /opt/.pycharm_helpers
我还注意到PyCharm正在创建(也许正在使用?)这个yml文件。 /home/username/.PyCharm2019.3/system/tmp/docker-compose.override.10.yml
version "3.7"
services:
app:
command:
- "python"
- "-u"
- "/home/username/Projects/ProjectName/app/src/script.py"
environment:
PYTHONPATH: "/home/username/Projects/ProjectName:/opt/.pycharm_helpers/pycharm_matplotlib_backend:/opt/.pycharm_helpers/pycharm_display"
PYTHONUNBUFFERED: "1"
PYTHONIOENCODING: "UTF-8"
PYCHARM_HOSTED: "1"
PYCHARM_DISPLAY_PORT: "63342"
stdin_open: true
volumes:
- "/home/username/Projects/ProjectName/.:/opt/project:rw"
- "pycharm_helpers_PY-193.5662.61:/opt/.pycharm_helpers"
working_dir: "/home/username/Projects/ProjectName/app/src"
volumes:
pycharm_helpers_PY-193.5662.61: {}