ΠΠ·ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡΠ° JFrog ΠΎΡΠΊΡΠΈΡ Π° Π² ΡΡΡΡΠ°Π²Π° Π½Π° Docker-ΠΎΠ±ΡΠ°Π·Π° Β«cabotage-appΒ» ΡΠΎΠΊΠ΅Π½, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π΄ΠΎΡΡΡΠΏ Ρ ΠΏΡΠ°Π²Π° Π½Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ Π΄ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈΡΠ΅ Π½Π° Python, PyPI ΠΈ Python Software Foundation Π² GitHub. Π’ΠΎΠΊΠ΅Π½ΡΡ Π±Π΅ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ Π² Π±ΠΈΠ½Π°ΡΠ΅Π½ ΡΠ°ΠΉΠ» Β«__pycache__/build.cpython-311.pycΒ» Ρ ΠΊΠ΅ΡΠΈΡΠ°Π½ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ Π±Π°ΠΉΡΠΊΠΎΠ΄.

Π‘ΠΏΠΎΡΠ΅Π΄ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ PyPI, ΡΠΎΠΊΠ΅Π½ΡΡ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½ ΠΏΡΠ΅Π· 2023 Π³ΠΎΠ΄ΠΈΠ½Π° Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ewdurbin (Ee Durbin), ΠΊΠΎΠΉΡΠΎ Π·Π°Π΅ΠΌΠ° ΠΏΠΎΡΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡ ΠΏΠΎ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π² ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΡΠ° Python Software Foundation. Π’ΠΎΠΊΠ΅Π½ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠ΅ Π΄ΠΎΡΡΡΠΏ Ρ ΠΏΡΠ°Π²Π° Π½Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ Π΄ΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ pypi, python, psf ΠΈ pypa. ΠΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΈΡΡ Docker-ΠΎΠ±ΡΠ°Π· Ρ ΡΠΎΠΊΠ΅Π½Π° Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π½Π° Docker Hub Π½Π° 3 ΠΌΠ°ΡΡ 2023 Π³ΠΎΠ΄ΠΈΠ½Π°, Π° ΠΈΠ·ΡΡΠΈΡ Π½Π° 11 ΡΠ½ΠΈ 2024 Π³ΠΎΠ΄ΠΈΠ½Π°, Ρ.Π΅. 16 ΠΌΠ΅ΡΠ΅ΡΠ° Π±Π΅ΡΠ΅ Π½Π° Π΄ΠΎΡΡΡΠΏ. ΠΠ° 28 ΡΠ½ΠΈ ΡΠΎΠΊΠ΅Π½ΡΡ Π±Π΅ΡΠ΅ ΠΎΡΠ·ΠΎΠ²Π°Π½.
ΠΠ°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅Π»Π½ΠΎ Π΅, ΡΠ΅ Π² Π½Π°Π»ΠΈΡΠ½ΠΈΡΠ΅ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅, Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΊΠΎΠΈΡΠΎ Π±Π΅ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΈΡΡ ΡΠ°ΠΉΠ» Ρ Π±Π°ΠΉΡΠΊΠΎΠ΄, ΡΠΏΠΎΠΌΠ΅Π½Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠΊΠ΅Π½Π° ΠΎΡΡΡΡΡΠ²Π°. ΠΠ²ΡΠΎΡΡΡ Π½Π° ΠΊΠΎΠ΄Π° ΠΏΠΎΡΡΠ½ΠΈ, ΡΠ΅ Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° cabotage-app5 Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ°Π» Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΎΡΡΡΠ° Π½Π° Π΄ΠΎΡΡΡΠΏΠ° Π΄ΠΎ API Π½Π° GitHub ΠΏΡΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΎ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ GitHub, ΠΈ Π·Π° Π΄Π° Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈ Π»ΠΈΠΌΠΈΡΠΈΡΠ΅, Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈ Π·Π° Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΈ ΠΎΠ±Π°ΠΆΠ΄Π°Π½ΠΈΡ Π΄ΠΎ GitHub, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½ Π² ΠΊΠΎΠ΄Π°. ΠΡΠ΅Π΄ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄ ΡΠΎΠΊΠ΅Π½ΡΡ Π΅ Π±ΠΈΠ» ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°Ρ, Π½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ Π½Π΅ Π΅ Π²Π·Π΅Π» ΠΏΡΠ΅Π΄Π²ΠΈΠ΄, ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠΊΠ΅Π½Π° Π΅ ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΎ Π² ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ΠΈΡ ΡΠ°ΠΉΠ» Ρ Π±Π°ΠΉΡΠΊΠΎΠ΄, ΠΊΠΎΠΉΡΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π΅ ΠΏΠΎΠΏΠ°Π΄Π½Π°Π» Π² docker-ΠΎΠ±ΡΠ°Π·Π°. def _fetch_github_file( β github_repository="owner/repo", ref="main", access_token=None, filename="Dockerfile" + github_repository="owner/repo", + ref="main", + access_token="0d6a9bb5af126f73350a2afc058492765446aaad", + filename="Dockerfile", ):
ΠΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡΡ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° Python ΠΎΠ΄ΠΈΡ Π½Π° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈΡΠ΅ Π½Π° GitHub Π½Π΅ Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» ΡΡΠΆΠ΄ΠΈ ΠΎΠΏΠΈΡΠΈ Π·Π° Π΄ΠΎΡΡΡΠΏ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΊΡΠΈΡΠΈΡ ΡΠΎΠΊΠ΅Π½. Π‘ ΠΎΠ³Π»Π΅Π΄ Π½Π° ΡΠ°ΠΊΡΠ°, ΡΠ΅ ΠΎΡ 2017 Π³ΠΎΠ΄ΠΈΠ½Π° GitHub Π΅ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° CPython, ΠΏΠΎΠΏΠ°Π΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠΊΠ΅Π½Π° Π² ΡΡΡΠ΅ΡΠ΅ Π½Π° Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠ΅ Π»ΠΈΡΠ° Π±ΠΈ ΠΌΠΎΠ³Π»ΠΎ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΏΡΠ»Π½Π° ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠ°ΡΠΈΡ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Python ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ PyPI, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄ΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠΈΡΠΈ Π·Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Π½Π° Π±Π΅ΠΊΠ΄ΡΠΏΠΈ Π² CPython ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΈΡ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ PyPI.
ΠΠ½ΡΠΈΠ΄Π΅Π½ΡΡΡ ΠΏΠΎΠΊΠ°Π·Π²Π° Π²Π°ΠΆΠ½ΠΎΡΡΡΠ° Π½Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΡΠ΅ΡΠΎΠ²Π΅ΡΠ΅ Π½Π΅ ΡΠ°ΠΌΠΎ Π² ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡΠ΅ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ°, Π½ΠΎ ΠΈ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. Π ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° Python, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠ° Π΄Π° ΠΎΠ±ΡΡΡΠ°Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° .pyc ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ Π±Π°ΠΉΡΠΊΠΎΠ΄ Π² ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½ΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅Π·ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΡΠ΄ΡΡΠΆΠ°Ρ ΡΠΊΡΠΈΡΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ Π»ΠΈΠΏΡΠ²Π°Ρ Π² ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
