Скажите мою папку структура:
Код: Выделить всё
my_project/
├── src/
│ └── __init__.py
│ └── utils.py
│ └── hello_world.py
├── pyproject.toml
├── README.md
├── uv.lock
Код: Выделить всё
[project]
name = "project-name"
version = "0.1.0"
description = "project-description"
authors = [
{name = "my-name", email = "my@email.com"}
]
dependencies = []
readme = "README.md"
requires-python = "==3.12.*"
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
packages = ["src"]
Код: Выделить всё
from src.utils import print_hello_world
print_hello_world()
Код: Выделить всё
# Use a Python image with uv pre-installed
FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim
WORKDIR /app
ADD . /app
RUN uv sync
ENTRYPOINT [ "uv", "run", "src/hello_world.py" ]
По какой-то причине всякий раз, когда я запускаю изображение, uv создает мой проект перед печатью «Hello, world!» сообщение.
Код: Выделить всё
user@host:~/projects/my-project$ docker run -it myimage:latest
Built project-name @ file:///app
Uninstalled 1 package in 4ms
Installed 1 package in 3ms
Hello, world!
Код: Выделить всё
user@host:~/projects/my-project$ uv lock
Using CPython 3.12.0
Resolved 1 package in 0.71ms
user@host:~/projects/my-project$ uv sync
Using CPython 3.12.0
Creating virtual environment at: .venv
Resolved 1 package in 0.71ms
Installed 1 package in 52ms
+ project-name==0.1.0 (from file:///home/fmppo/projects/so-question)
user@host:~/projects/my-project$ uv run src/hello_world.py
Hello, world!
Подробнее здесь: https://stackoverflow.com/questions/793 ... hile-it-do
Мобильная версия