ํ๊ฒฝ ๋ณ์
-
- [TypeScript] ํ๊ฒฝ ๋ณ์ ํ์ ์ค์ ํ๊ธฐ
ํ๊ฒฝ ๋ณ์ ํ์ ์ค์ ํ๊ธฐ๋ค์ด๊ฐ๋ฉฐํ์ ์คํฌ๋ฆฝํธ์์ ํ๊ฒฝ ๋ณ์(Environment Variable)์ ํ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์๋๋ก ํ์ ์ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. ๋ฐฉ๋ฒ๋ค์๊ณผ ๊ฐ์ ํ๊ฒฝ ๋ณ์ ํ์ผ์ด ์๋ค๊ณ ํด๋ณด์.์ด์ ์ด ํ๊ฒฝ ๋ณ์๋ฅผ ํ๋ก์ ํธ ๋ด์ ๋ค๋ฅธ ํ์ผ์์ ๋ถ๋ฌ์์ ์ฌ์ฉํด๋ณผ ๊ฒ์ด๋ค. (Next.js ํ๋ ์์ํฌ ์ฌ์ฉ).env.localNEXT_PUBLIC_API_KEY="="***********"NEXT_PUBLIC_SPACE_ID="**************************" (1) @!@(Non-Null Assertion) ์ฐ์ฐ์ ์ฌ์ฉํ๊ธฐ@!@๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ด @undefined@๊ฐ ์๋์ ํ์ ์คํฌ๋ฆฝํธ์ ๋ช ์ํ๋ค.ํ์ง๋ง ์ด ๋ฐฉ๋ฒ์ ํด๋น ํ๊ฒฝ ๋ณ์๊ฐ ์กด์ฌํ์ง ์์ ๊ฒฝ์ฐ, ๋ฐํ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค๋..
3 2024.12.09 -
- [Python] Pyinstaller๋ก ํจํค์งํ ๋ ํ๊ฒฝ ๋ณ์ ํ์ผ(.env) ์ธ์ ์๋๋ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ
Pyinstaller๋ก ํจํค์งํ ๋ ํ๊ฒฝ ๋ณ์ ํ์ผ(.env) ์ธ์ ์๋๋ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ๋ค์ด๊ฐ๋ฉฐPyinstaller๋ฅผ ์ฌ์ฉํ์ฌ ์คํ ํ์ผ(@.exe@)๋ก ํจํค์ง ํ ๋, ํ๊ฒฝ ๋ณ์ ํ์ผ(@.env@) ์ธ์์ด ์๋๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. ๋ฐฉ๋ฒ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ด์ฌ(Python)์์ ํ๊ฒฝ ๋ณ์ ํ์ผ(@.env@)์ ๋ด์ฉ์ ๋ถ๋ฌ์ค๋ ค๋ฉด @dotenv@ ํจํค์ง๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.@dotenv@ ํจํค์ง์ ๋ํ ์์ธํ ๋ด์ฉ์ ์๋์ ๊ธ์ ์ฐธ๊ณ ํ๋ค. [Python] .env ํ์ผ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ.env ํ์ผ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ๋ค์ด๊ฐ๋ฉฐํ์ด์ฌ(Python)์์ @.env@ ํ์ผ์ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. .env ํ์ผ๊ฐ๋ ํค(Key)-๊ฐ(Value) ์์ผ๋ก ํ๊ฒฝ ๋ณ์๋ฅผ ์ ์ํ๋ ๊ฐ๋จํ ํ ์คํธ ํ์ผ์ด ํ์ผ์ ์ฌ์ฉํ๋ฉดdev-a..
2024.10.30 -
- [Next.js] ํ๊ฒฝ ๋ณ์ ์ฌ์ฉ ๋ฐฉ๋ฒ
ํ๊ฒฝ ๋ณ์ ์ฌ์ฉ ๋ฐฉ๋ฒ๋ค์ด๊ฐ๋ฉฐNext.js์์ ํ๊ฒฝ ๋ณ์(Environment Variable)๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. ๋ฐฉ๋ฒโ ํ๊ฒฝ ๋ณ์ ํ์ผ ์ค์ ํ๊ธฐNext.js๋ @.env@ ํ์ผ์ ํตํด ํ๊ฒฝ ๋ณ์๋ฅผ ๋ถ๋ฌ์ฌ ์ ์๋ค.ํ๋ก์ ํธ ์ต์์ ๊ฒฝ๋ก(@/@)์ ๋ค์๊ณผ ๊ฐ์ @.env@ ํ์ผ์ ์์ฑํ๋ค. /.env.localNEXT_PUBLIC_API_URL=https://api.example.comAPI_SECRET_KEY=your-secret-key ⇒ ๋ค์๊ณผ ๊ฐ์ด @.env@๋ค์ ์ฉ๋์ ๋ฐ๋ผ ๋ค์ํ ์ ๋ฏธ์ด๋ฅผ ๋ถ์ผ ์ ์๋ค. ํ๊ฒฝ๋ณ์ ํ์ผ๋ช ์ค๋ช @.env.local@๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์์ ์ฌ์ฉํ๋ ํ๊ฒฝ ๋ณ์ (Git์ ์ถ๊ฐํ์ง ์๋ ๊ฒ์ด ์ข๋ค.)@.env.development@๊ฐ๋ฐ ํ๊ฒฝ์์ ์ฌ์ฉํ๋ ํ๊ฒฝ ๋ณ์@..
1 2024.10.29 -
- [Python] ํ๊ฒฝ ๋ณ์ ํ์ผ(.env) ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ
ํ๊ฒฝ ๋ณ์ ํ์ผ(.env) ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ๋ค์ด๊ฐ๋ฉฐํ์ด์ฌ(Python)์์ @.env@ ํ์ผ์ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. .env ํ์ผ๊ฐ๋ ํค(Key)-๊ฐ(Value) ์์ผ๋ก ํ๊ฒฝ ๋ณ์๋ฅผ ์ ์ํ๋ ๊ฐ๋จํ ํ ์คํธ ํ์ผ์ด ํ์ผ์ ์ฌ์ฉํ๋ฉด ์ฝ๋ ๋ด์ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ์ง์ ์์ฑํ์ง ์๊ณ ๋ ํ๊ฒฝ ๋ณ์(Environment Variable)๋ฅผ ์ฝ๊ฒ ๊ด๋ฆฌํ ์ ์๋ค.@.env@ ํ์ผ์ ์ฌ์ฉํ๋ฉด ํ๊ฒฝ ๋ณ์๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์ผ๋ฉฐ, ์ฝ๋์ ๋ณด์์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ ํฅ์์ํฌ ์ ์๋ค.API_KEY=your_api_key_hereDATABASE_URL=postgres://user:password@localhost:5432/mydatabaseDEBUG=True ๋ฐฉ๋ฒํจํค์ง ์ค์นํ๊ธฐ@python-dotenv@ ํจํค์ง๊ฐ ์ค์น๋์ด ์์ง ..
2024.09.27 -
- [React.js] .env ํ์ผ ๋ง๋ค๊ณ ์ฌ์ฉํ๊ธฐ (ํ๊ฒฝ ๋ณ์ ๊ด๋ฆฌ)
.env ํ์ผ ๋ง๋ค๊ณ ์ฌ์ฉํ๊ธฐ (ํ๊ฒฝ ๋ณ์ ๊ด๋ฆฌ)๋ค์ด๊ฐ๋ฉฐ๋ฆฌ์กํธ(React.js)์์ ํ๊ฒฝ ๋ณ์ ๊ด๋ฆฌ๋ฅผ ์ํด @.env@ ํ์ผ์ ๋ง๋ค๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. @.env@ ํ์ผ๊ฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ๋๋ ํ๊ฒฝ ๋ณ์(Environment Variables)๋ฅผ ์ ์ฅํ๋ ํ์ผํ๊ฒฝ ๋ณ์๋ ์ด์์ฒด์ ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์ ๊ฐ๋ค์ ์ธ๋ถ์์ ์ค์ ํ๊ณ ๊ด๋ฆฌํ ์ ์๊ฒ ํด์ฃผ๋ ๋ณ์๋ค๋ก, ์ฝ๋์ ์ง์ ํ๋์ฝ๋ฉํ์ง ์๊ณ ๋ ๋ฏผ๊ฐํ ์ ๋ณด๋ ์ค์ ๊ฐ์ ๊ด๋ฆฌํ ์ ์๊ฒ ํด์ค๋ค.๋ฆฌ์กํธ๋ ๋ ธ๋ ๊ฐ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์๋ ์ฃผ๋ก ๋ค์๊ณผ ๊ฐ์ ์ ๋ณด๋ฅผ @.env@ ํ์ผ์ ์ ์ฅํ๋ค.โ API ํค โ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ์ ๋ณด โ API ์๋ํฌ์ธํธ โ ์ฑ ํ๊ฒฝ ์ค์ (๊ฐ๋ฐ, ํ ์คํธ, ํ๋ก๋์ ๋ฑ) ํน์ง์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฏผ๊ฐํ ์ ๋ณด๋ ํ๊ฒฝ์ ๋ฐ๋ผ ๋ฌ..
2024.09.23 -
- [TypeScript] ์๋์ฐ์์ ์ค์ฟฑ(Scoop) ์ค์นํ๊ธฐ
์๋์ฐ์์ ์ค์ฟฑ(Scoop) ์ค์นํ๊ธฐ์ค์ฟฑ(Scoop)์ด๋?๋ช ๋ น์ด๋ก ์ฝ๊ฒ ํ๋ก๊ทธ๋จ์ ์ค์นํ๊ณ ๊ด๋ฆฌํด์ฃผ๋ ๋๊ตฌ์ค์ฟฑ์ ํ์ ์คํฌ๋ฆฝํธ์ ์ง์ ์ ์ธ ๊ด๊ณ๋ ์์ง๋ง, ํ์ ์คํฌ๋ฆฝํธ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ค์ ํ๋ ๋ฐ ์ ์ฉํ ๋๊ตฌ์ด๋ค. ์ค์ฟฑ ์ค์น ๋ฐฉ๋ฒ์ฐ์ [๊ด๋ฆฌ์ ๋ชจ๋]๋ก ํ์์ ธ(PowerShell)์ ์คํํ๋ค.๊ทธ๋ฆฌ๊ณ ์๋์ ๋ช ๋ น๋ค์ ์ฐจ๋ก๋๋ก ์คํํ๋ค.> Set-ExecutionPolicy RemoteSigned -scope CurrentUser # ๋ช ๋ น ์คํ ํ [A] ์ ๋ ฅ> $env:SCOOP='C:\Scoop' # ํ๋ก๊ทธ๋จ ์ค์น ๊ฒฝ๋ก ์ง์ > iex "& {$(irm get.scoop.sh)} -RunAsAdmin" # Scoop ์ค์น ๋ชจ๋ ๊ฒ์ด ์ ์์ ์ผ๋ก ์ค์น๋์๋ค๋ฉด @C:\Scoop@ ๋๋ ํฐ๋ฆฌ๊ฐ ๋ง๋ค์ด์ง๊ณ , ๊ทธ..
2023.10.12