Standard Python Environment

Python OS

CI Python Lint Pytest pages-build-deployment CodeQL Advanced

Python Pytest Jupyter Notebook

๐Ÿ‡บ๐Ÿ‡ธ English | ๐Ÿ‡ฎ๐Ÿ‡ณ เคนเคฟเค‚เคฆเฅ€ | ๐Ÿ‡ฏ๐Ÿ‡ต ๆ—ฅๆœฌ่ชž | ๐Ÿ‡จ๐Ÿ‡ณ ็ฎ€ไฝ“ไธญๆ–‡ | ๐Ÿ‡ช๐Ÿ‡ธ Espaรฑol | ๐Ÿ‡ง๐Ÿ‡ท Portuguรชs (Brasil) | ๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด | ๐Ÿ‡ฉ๐Ÿ‡ช Deutsch | ๐Ÿ‡ซ๐Ÿ‡ท Franรงais

Docker Compose๋กœ ๊ตฌ์„ฑ๋œ ํ‘œ์ค€ Python ํ™˜๊ฒฝ์ž…๋‹ˆ๋‹ค.

"image"


๊ธฐ๋Šฅ

  • ์žฌํ˜„์„ฑ: ์˜์กด์„ฑ์ด ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— ๊ณ ์ •๋ฉ๋‹ˆ๋‹ค
  • ๋‹จ์ˆœ์„ฑ: docker compose ๋ช…๋ น๋งŒ์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
  • ์ด์‹์„ฑ: Linux, macOS, Windows์—์„œ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค
  • pip ready: Python ํŒจํ‚ค์ง€๋ฅผ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
  • JupyterLab support: (์„ ํƒ ์‚ฌํ•ญ) ์ปจํ…Œ์ด๋„ˆ ์•ˆ์—์„œ notebooks๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
  • X11 forwarding: (์„ ํƒ ์‚ฌํ•ญ) GUI ๊ธฐ๋ฐ˜ Python ์•ฑ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

์š”๊ตฌ ์‚ฌํ•ญ


์‹œ์ž‘ํ•˜๊ธฐ

Linux

# Clone this repository
git clone https://github.com/europanite/standard_python_environment.git
cd standard_python_environment

# Export host UID/GID
export HOST_UID=$(id -u) 
export HOST_GID=$(id -g)

# Build and run
docker compose build
docker compose up -d
docker compose exec service bash

Windows

# Clone this repository
git clone https://github.com/europanite/standard_python_environment.git
cd standard_python_environment

# Build and run
docker compose build
docker compose up -d
docker compose exec service bash

์ด์ œ Python ์ปจํ…Œ์ด๋„ˆ ์•ˆ์— ์žˆ์Šต๋‹ˆ๋‹ค ๐ŸŽ‰

JupyterLab์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ http://localhost:8888 ์— ์ ‘์†ํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค


ํ…Œ์ŠคํŠธ

# pytest
docker compose \
-f docker-compose.test.yml run \
--rm \
--entrypoint /bin/sh service_test \
-lc 'pytest'

# Lint
docker compose \
-f docker-compose.test.yml run \
--rm \
--entrypoint /bin/sh service_test \
-lc 'ruff check /app /tests'

๋ผ์ด์„ ์Šค

  • Apache License 2.0