[Python] venv, virtualenv

์ด๊ฑด ํŒŒ์ด์ฌ์˜ ๊ทธ... ํ™ฉ๋‹นํ•œ ๋ถ€๋ถ„ ์ค‘ ํ•˜๋‚˜๋‹ค.

pip๋กœ ์ธํ•œ ๋ชจ๋“ˆ ์„ค์น˜๋Š” ์ „์—ญ์ ์œผ๋กœ ์ด๋ฃจ์–ด์ง„๋‹ค.
๊ทธ๋ž˜์„œ ํŠน์ • ๋ชจ๋“ˆ์˜ 1๋ฒ„์ „์„ ์ด๋ฏธ ์„ค์น˜ํ•œ ์ƒํƒœ์—์„œ 1.5 ๋ฒ„์ „์„ ์ถ”๊ฐ€๋กœ ์„ค์น˜ํ•  ์ˆ˜๊ฐ€ ์—†๋‹ค. ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋ผ๋„.

์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๊ฒจ๋‚œ๊ฒŒ ๊ฐ€์ƒ ํ™˜๊ฒฝ(virtual environment)๋ผ๋Š” ๊ธฐ๋Šฅ์ด๋‹ค. ๊ฐ venv์— ๋ชจ๋“ˆ ์ข…์†์„ฑ์„ ๋ณ„๋„๋กœ ์„ค์น˜ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
์‚ฌ์‹ค ๊ทธ๋ƒฅ nodejs์˜ node_modules์™€ ์œ ์‚ฌํ•˜๋‹ค. ๊ธฐ๋ณธ ์„ธํŒ…์ด ์•„๋‹ ๋ฟ์ด๋‹ค.




์„ค์น˜

venv ๋„๊ตฌ๋Š” ๊ธฐ๋ณธ์œผ๋กœ ๋”ธ๋ ค์žˆ์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ์•„๋‹ ์ˆ˜๋„ ์žˆ๋‹ค.
๋‚ด ๊ฒฝ์šฐ์—๋Š” ์šฐ๋ถ„ํˆฌ ํ™˜๊ฒฝ์ธ๋ฐ ์—†์—ˆ๋‹ค. ์ด๋Ÿฐ์‹์œผ๋กœ ๊น”์•„์ฃผ๋ฉด ๋๋‹ค.

sudo apt install python3.10-venv




๊ฐ€์ƒํ™˜๊ฒฝ ์ดˆ๊ธฐํ™”

์ค€๋น„๊ฐ€ ๋๋‹ค๋ฉด, ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋กœ์ปฌ ๊ฐ€์ƒํ™˜๊ฒฝ์„ ๊น”์•„์ฃผ๋ฉด ๋œ๋‹ค.
ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ๊ธฐ์ค€์—์„œ ์ƒ๋Œ€ ๊ฒฝ๋กœ๋กœ ๊น”์•„์ฃผ์ž. ๊ฒฝ๋กœ๋Š” ๋ญ๋“  ์ƒ๊ด€์—†์œผ๋‚˜, ๋ณดํ†ต .env๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š”๊ฒŒ ๊ด€๋ก€์ธ ๊ฒƒ ๊ฐ™๋‹ค.

sudo python3 -m venv .env

๊ทธ๋Ÿผ ์ด๋ ‡๊ฒŒ ๊ฐ€์ƒํ™˜๊ฒฝ์ด ์ดˆ๊ธฐํ™”๋œ๋‹ค.

๋ญ๊ฐ€ ๋งŽ๋‹ค.

install์„ ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ˜„์žฌ ์œ ์ €์— ๋Œ€ํ•ด์„œ ๊ถŒํ•œ์„ ์ข€ ๋„ฃ์–ด์ค€๋‹ค.

sudo chown -R myyrakle:myyrakle .env




๊ฐ€์ƒํ™˜๊ฒฝ ํ™œ์„ฑํ™”

๊ฐ€์ƒํ™˜๊ฒฝ์„ ํ™œ์šฉํ•˜๋ ค๋ฉด ๊ฐ€์ƒํ™˜๊ฒฝ์„ ์ผœ์„œ ๊ฐ€์ƒํ™˜๊ฒฝ ์ปจํ…์ŠคํŠธ์— ์ง„์ž…ํ•ด์•ผ ํ•œ๋‹ค.

source .env/bin/activate

๊ทธ๋Ÿผ ์ด๋ ‡๊ฒŒ ํ„ฐ๋ฏธ๋„์— ์ปจํ…์ŠคํŠธ๊ฐ€ ์œ ์ง€๋œ๋‹ค.
์ด ์ƒํƒœ์—์„œ venv์— ์ง„์ž…ํ•ด์„œ, ๊ทธ ํ™˜๊ฒฝ์„ ์ฝ๊ฑฐ๋‚˜ ์“ธ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•˜๋ฉด

venv์— ์„ค์น˜๋˜๊ณ , venv ํ™˜๊ฒฝ์—์„œ๋งŒ ๊ฐ–๋‹ค์“ธ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.




๊ฐ€์ƒ ํ™˜๊ฒฝ ์ข…๋ฃŒ

๊ฐ€์ƒํ™˜๊ฒฝ์„ ์ข…๋ฃŒํ•˜๋ฉด ์ด์ „์˜ ์ปจํ…์ŠคํŠธ๋กœ ๋Œ์•„๊ฐ€๊ณ , ๊ฐ€์ƒํ™˜๊ฒฝ์—์„œ ์„ค์น˜๋œ ํ™˜๊ฒฝ๋“ค์„ ๋”์ด์ƒ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋œ๋‹ค.

deactivate



์ฐธ์กฐ
https://docs.python.org/ko/3/library/venv.html