当前位置: 首页 > 知识库问答 >
问题:

通过Pycharm上的docker compose运行Python控制台

左丘元徽
2023-03-14

我在通过docker compose使用远程python解释器运行pycharm时遇到一些问题。除了Python控制台之外,其他一切都很好。当我按下run按钮时,它只显示以下消息:

"错误:无法从docker-comment输出中找到服务"web"的容器名称"

我真的不明白为什么它总是让我觉得如果我的docker compose.yml提供了web服务。

有什么帮助吗?

编辑:

docker-compose.yml

version: '2'

volumes:
  dados:
    driver: local
  media:
    driver: local
  static:
    driver: local

services:
  beat:
    build: Docker/beat
    depends_on: 
      - web
      - worker
    restart: always
    volumes:
      - ./src:/app/src
  db:
    build: Docker/postgres
    ports:
      - 5433:5432
    restart: always
    volumes:
      - dados:/var/lib/postgresql/data
  jupyter:
    build: Docker/jupyter
    command: jupyter notebook
    depends_on: 
      - web
    ports:
      - 8888:8888
    volumes:
      - ./src:/app/src
  python:
    build:
      context: Docker/python
      args:
        REQUIREMENTS_ENV: 'dev'
    image: helpdesk/python:3.6
  redis:
    image: redis:3.2.6
    ports:
      - 6379:6379
    restart: always
  web:
    build:
      context: .
      dockerfile: Docker/web/Dockerfile
    command: python manage.py runserver 0.0.0.0:8000
    depends_on:
      - python
      - db
    ports:
      - 8001:8000
    restart: always
    volumes:
      - ./src:/app/src
  worker:
    build: Docker/worker
    depends_on: 
      - web
      - redis
    restart: always
    volumes:
      - ./src:/app/src

Dockerfile

FROM python:3.6

# Set requirements environment
ARG REQUIREMENTS_ENV
ENV REQUIREMENTS_ENV ${REQUIREMENTS_ENV:-prod}

# Set PYTHONUNBUFFERED so the output is displayed in the Docker log
ENV PYTHONUNBUFFERED=1

# Install apt-transport-https
RUN apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y \
        apt-transport-https

# Configure yarn repo
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list

# Install APT dependencies
RUN apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y \
        locales \
        openssl \
        yarn

# Set locale
RUN locale-gen pt_BR.UTF-8 && \
    localedef -i pt_BR -c -f UTF-8 -A /usr/share/locale/locale.alias pt_BR.UTF-8

ENV LANG pt_BR.UTF-8
ENV LANGUAGE pt_BR.UTF-8
ENV LC_ALL pt_BR.UTF-8

# Copy requirements files to the container
RUN mkdir -p /tmp/requirements
COPY requirements/requirements-common.txt \
    requirements/requirements-$REQUIREMENTS_ENV.txt \
    /tmp/requirements/

# Install requirements
RUN pip install \
    -i http://root:test@pypi.defensoria.to.gov.br:4040/root/pypi/+simple/ \
    --trusted-host pypi.defensoria.to.gov.br \
    -r /tmp/requirements/requirements-$REQUIREMENTS_ENV.txt

# Remove requirements temp folder
RUN rm -rf /tmp/requirements

这是python映像Dockerfile,web Dockerfile只是从该映像声明并将源文件夹复制到容器中。

共有2个答案

子车劲
2023-03-14

通过命令行安装所需的库并从路径运行python解释器就足够了。

您还可以参考JetBrains手册,了解它们是如何为其IDE的解释器进行配置的。

钮晟
2023-03-14

我认为这是一个依赖链问题,web依赖于python,所以当python容器启动时,web仍然不存在。这可能会导致错误。

干杯

 类似资料:
  • 我目前正在使用Mac OS Sierra和PyCharm终极版的最新(更新)版本。然而,每次我试图运行Python控制台时,它都失败了。 我尝试了多种解决方案,包括以下内容: 尝试类似的StackOverflow问题中提到的解决方案。 完全删除Anaconda(重启系统),然后尝试运行控制台。 移除并重新安装PyCharm. 使用不同版本的Python(2.7/3/3.5/3.6) 在虚拟环境中创

  • PyCharm有一个完整的代码完整的Python控制台,可以在选项菜单:工具(Tools) - >运行Python控制台(Run Python Console)中找到。 使用上一章中的代码,如下所示 - 现在,在控制台下运行代码来执行脚本以获取所需的输出,如下所示。 您可以在控制台中,观察到输出如下所示 -

  • 问题内容: 除了最佳做法,是否有令人信服的理由 不 这样做? 我正在编写一个与Google Code项目一起使用的提交后挂钩,该项目通过JSON对象提供提交数据。GC随请求(JSON数据之外)一起提供了HMAC身份验证令牌,因此通过验证该令牌,我对JSON数据既是良性的(因为不信任Google毫无意义)也很有把握。 我自己的(简短的)调查表明,JSON完全是有效的Python,除了转义序列(GC似

  • 问题内容: 我想在所有通过使用主机脚本控制台连接到主机的UNIX从机上运行相同的shell命令(像这样的非常简单的shell命令)。 如何使用groovy做到这一点? 想要执行以下操作:显示有关节点 的信息,但不显示信息,而是要在每个从属服务器上运行一些简单的UNIX命令并打印结果。 问题答案:

  • null 到目前为止,我在cmd中的输入是: d: CD JavaProgram javac snake.java board.java 从这里我该怎么办? 这是指向这2个java文件源代码的链接。http://zetcode.com/tutorials/javagameStutorial/snake/

  • 运行控制用来对实验状态与实验流量进行调整与控制。本节将会对运行控制的使用流程进行详细介绍。主要内容包括实验定向的使用与使用流量的调节。 已经关闭的实验不允许重新启用,此时如果你想再次尝试一下,你可以选择重新创建一个实验,并且沿用原来变量与变量值,实验内容依然生效。已经结束的实验请及时关闭 1.1. 实验流量分配 Figure: 运行控制 控制实验状态,包括实验的开启与关闭。为了保证实验的科学性,已