Django์ค์น ๋ฐ ๊ฐ๋ฐ์ ์์ ๋ค์์ ๋ฌธ์ ์ ์ฃผ๋ชฉํ์.
ํ์
์์ ๊ฐ๋ฐํ๊ณ ์ ํ๋ ํ๋ก์ ํธ์ ํน์ฑ์ ๋ฐ๋ผ ์ ํ์ ์ผ๋ก WEB Framework๋ฅผ ์ฌ์ฉํ๋ค. ๋ง์ฝ ๊ฐ๋ฐํ๊ฒฝ์์ ํ์์ ์ํด ์ฌ๋ฌ Framework ๋ฅผ ์ค์นํ๊ณ ๋ ๊ทธ์ ์์กดํ๋ python package๋ฅผ ์ค์นํ๋ค๋ฉด ์์นซ ๊ฐ๋ฐ๊ณผ์ ์์ ์ถฉ๋์ด ๋ฐ์ํ ์๋ ์๋ค.
๊ฐ๋ น Django ๊ธฐ๋ฐ project ๋ ๊ฐ๋ฅผ ๋์์ ์งํํ๋ค๊ณ ํ์. ๋ project๊ฐ ๊ณตํต์ ์ผ๋ก ์ฌ์ฉํ๋ package๊ฐ ์๋๋ฐ ํน์์ฑ์ผ๋ก ์ธํด ์๋ก ๋ค๋ฅธ ๋ฒ์ ์ ์จ์ผ๋ง ํ๋ค๋ฉด? ๊ทธ ํจํค์ง๋ฅผ ๋ ๋ฒ์ ์ ๋ชจ๋ ์ค์นํ ์ ์๋ค๋ฉด?
์ด ๋ฌธ์ ๋ฅผ ํด์ํ๊ธฐ ์ํด ํ์ ์์ project๋น ๊ฐ์ํ๊ฒฝ์ ๋ง๋ค์ด ์ฌ์ฉํ python ๋ฒ์ ์ด๋ python package๋ฅผ project๊ฐ ๋ถ๋ฆฌ ํ ์ ์๋ค. ์ด ์๋ฆฌ์ฆ์์ ๋ช ๊ฐ์ง ๊ฐ์ํ๊ฒฝ ์๋ฃจ์ ์ค "miniconda"๋ฅผ ์ฌ์ฉํ ๊ฒ์ด๋ค.
1. ์๋์ฝ๋ค ์ฌ์ดํธ๋ฅผ ๋ฐฉ๋ฌธํ์ฌ miniconda๋ฅผ ์ง์ ๋ค์ด๋ก๋ ๋๋ wget ์ฌ์ฉ
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
2. Terminal๋ก ๋ค์ด๋ก๋ ๋ฐ์ ๊ฒฝ๋ก๋ก ์ด๋, ์๋ ๋ช ๋ น์ ์คํํ์ฌ ๊ถํ ๋ณ๊ฒฝ
chmod -R 755 Miniconda3-latest-Linux-x86_64.sh
3. ์ค์น ์คํ
./Miniconda3-latest-Linux-x86_64.sh
4. ์ค์น ๊ณผ์ ์ด ๋๋๋ฉด ๋ค์ ๋ช ๋ น์ ์คํ, ๋ณธ์ธ์ Terminal shell ํ๊ฒฝ์(์ฌ๊ธฐ์ bash) conda ์ด๊ธฐ๊ณผ์ ์ ๋ฐ์ํ๋ค. (home์ ์๋ shell ํ์ผ์ shell ์คํ์ ์ด๊ธฐ๋ฐ์ํ ๋ด์ฉ์ ์ ์ธํด๋๋ ๊ณต๊ฐ์ด๋ค)
./conda init bash
๊ทธ๋ฆฌ๊ณ ๋ฐ๋ก shell ๋ฐ์์ ์ํด ๋ค์ ์ฝ๋๋ฅผ ์คํํ๋ค.
source ~/.bashrc
terminal์ ์ ๋ ฅ๋ ์์ "(base)"๊ฐ ๋ณด์ด๋ฉด conda๋ฅผ ์ฌ์ฉํ ์ค๋น๊ฐ ๋ ๊ฒ์ด๋ค.
5. ๊ฐ์ํ๊ฒฝ ์ ๋ณด ๋ณด๊ธฐ
์ค์น์ ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ base ๋ง ์กด์ฌํ๋ค. ์์ "test"๋ ๊ฐ์ํ๊ฒฝ์ ์ถ๊ฐํด์ ๋์ค๋ ๊ฒ์ผ๋ก ๋ฐ์์ ๊ฐ์ํ๊ฒฝ ์์ฑ์์ ๋ค๋ฃฌ๋ค.6. ๊ฐ์ํ๊ฒฝ ๋ง๋ค๊ธฐ
conda create -n "๊ฐ์ํ๊ฒฝ์ด๋ฆ" python=๋ฒ์ ์ ๋ณด
(๋๋ ๊ฐ์ํ๊ฒฝ์ผ๋ก "test"๋ฅผ python 3.8 ๋ฒ์ ์ผ๋ก ์์ฑํ์ฌ ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ํ๊ฒฝ์ด ๊ตฌ์ฑ๋์๋ค.)
7. ์์ฑํ ๊ฐ์ํ๊ฒฝ ํ์ฑํ
conda activate "๊ฐ์ํ๊ฒฝ์ด๋ฆ"์คํ ํ ์ ๋ ฅ๋ถ๋ถ์์ Header๊ฐ (๊ฐ์ํ๊ฒฝ์ด๋ฆ)์ผ๋ก ๋ณ๊ฒฝ๋์์ผ๋ฉด ์ ์ ๋ฐ์ ๋ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ ๊ฐ์ํ๊ฒฝ ์ค๋น๊ฐ ๋๋ฌ๋ค. ์์ผ๋ก ์งํํ Django project๋ ํ์ฑํ๋ ๊ฐ์ํ๊ฒฝ์์ ์งํ๋ ๊ฒ์ด๋ค.
1. ๊ฐ์ํ๊ฒฝ ๋นํ์ฑํ
conda deactivate
2. ๊ฐ์ํ๊ฒฝ ์ญ์
conda env remove -n "๊ฐ์ํ๊ฒฝ์ด๋ฆ"
3. Export ํ๊ธฐ
conda env export> "๊ฐ์ํ๊ฒฝ์ด๋ฆ.yaml"
4. Import ํ๊ธฐ
conda env create -f "๊ฐ์ํ๊ฒฝ์ด๋ฆ.yaml"
๊ฐ๊ธ์ ์ด๋ฉด ๊ฐ์ํ๊ฒฝ์ด๋ฆ์ Project๋ช ๊ณผ ๋์ผํ๊ฒ ํ๋๊ฒ์ด ์ข๋ค.