Интерактивное окно Jupyter в VSCODE, прикрепленное к контейнеру DEV, печатает неправильный путь для __file__Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Интерактивное окно Jupyter в VSCODE, прикрепленное к контейнеру DEV, печатает неправильный путь для __file__

Сообщение Anonymous »

У меня есть официальный контейнер Python Docker (

Код: Выделить всё

python:3.11-slim-bookworm
) Запуск с ванильным креплением для привязки на моем хосте, определенном следующим образом в файле Compose:

Код: Выделить всё

services:
app:
...
volumes:
- ./src:/app
< /code>
Я использую «контейнеры dev: прикрепить к запуску контейнера ...» из моих 1 -го окна Vscode, открытых в корне моего проекта, чтобы фактически «войти в» работающий контейнер моего Проект (который был запущен с Docker Compose -up -d 
), чтобы извлечь выгоду из правильной версии Python, которая мне нужно.
У меня также есть и Python, и Jupyter. Расширение установлено в контейнере через 2 -е окно VSCODE, которое было открыто «Dev Containers: Прикрепите к запущению контейнера ...» < /p>
Теперь, всегда в этом 2 -м окне Vscode, из Вкладка Python Interactive, я вижу это странное поведение: < /p>

Код: Выделить всё

import os

# This first print is fine and reflecting the actual path inside the container:
print("Current working directory in Jupyter:", os.getcwd())
# Current working directory in Jupyter: /app

# This second print is getting me crazy because there is no such intermediary src/ folder
# inside the container:
print("My script folder path in Jupyter:", os.path.abspath(__file__))
# My script folder path in Jupyter: /app/src/mymodule/my_script.py
Я также не понимаю, почему __file __ сосредоточен на my_script.py здесь, потому что я еще не запускал какую -либо ячейку из этого файла. В любом случае ... < /p>
Моя структура папок изнутри контейнера следующая: < /p>

Код: Выделить всё

user@app-container:/app$ tree -L 2
.
├── __init__.py
├── mymodule
│   ├── __init__.py
│   └── my_script.py
└── app.py
< /code>
может кто -нибудь объяснить, почему VSCODE видит папку /app /src /< /code> внутри контейнера? Слово «src» есть, находится в разделе тома < /code> моего файла Compose, как описано выше, и все о пути на моем локальном хосте, а не внутри контейнера.

также из Терминал Bash Внутри 2 -го окна VSCODE, нет такого/приложения/src/
папки, и если я попробую OS.Chdir ('/app/src/') В интерактивном окне, он, очевидно, явно Сбой на filenotfounderror: [errno 2] нет такого файла или каталога: '/app/src/'

версии

python Ядро в контейнере: 3.11.11

docker: 27.5.1

vscode: 1.96.4 с: < /p>
  • Расширение Юпитера: 2024.11.0
  • Расширение Python: 2024.22.2
  • Dev Containers: 0,394,0


Подробнее здесь: https://stackoverflow.com/questions/794 ... ing-a-wron
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • React Native File File File File Error Type Ошибка ошибки
    Anonymous » » в форуме Android
    0 Ответы
    57 Просмотры
    Последнее сообщение Anonymous
  • React Native File File File File Error Type Ошибка ошибки
    Anonymous » » в форуме Android
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • React Native File File File File Error Type Ошибка ошибки
    Anonymous » » в форуме Android
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Интерактивное окно VSCODE Python - Как остановить сервер Юпитера?
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Df /dev/sda или df /dev/"разделы, используемые lvm", показывают неправильный размер
    Anonymous » » в форуме Linux
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»