์ฝ๋ฉ 1๋ ๋ชฐ๋ผ๋ ์ผ๋จ ๋ฐ๋ผํ๋ฉด ๋๋, '๋๊ตฌ๋' ํ๋ ์ผ๋งค์ฝ๋ฉ ์๋ฆฌ์ฆ์ ๋๋ค.
๋๊ตฌ๋ ๋ง๋ค์ด๋ณด๋ ์คํ๋ด! ๊ฐ์ข ์ฒซ ํธ์ ์ค์ ๊ฒ์ ํ์ํฉ๋๋ค.
๋ฐ๊ฐ์์ ํ๋ฆฐ์ด(ํ๋ก๊ทธ๋๋ฐ ์ด๋ฆฐ์ด) ์ฌ๋ฌ๋ถ!
ํน์ ์ฒ์ ์ค์ จ๋ค๋ฉด, ์๊ฐํธ์ด ์์ต๋๋ค.
์ด๋ฒ ํธ์์๋ ๋ด์ ๋ง๋ค๊ธฐ ์์, ๊ฐ๋ฐ ํ๊ฒฝ์ค์ ์ ํจ๊ป ํด ๋ณผ ์์ ์ ๋๋ค.
A. ๊ฐ๋ฐ ํ๊ฒฝ์ค์ ๋ฐ๋ผํ๊ธฐ I - Google Cloud ์ธํ
โ
B. ๊ฐ๋ฐ ํ๊ฒฝ์ค์ ๋ฐ๋ผํ๊ธฐ II - Conda ์ธํ
C. ์คํ API ์ค์น ๋ฐ ์ดํด๋ณด๊ธฐ 101
D. ์คํ API ์ฌํ, ๋ธ๋ก์ฒด์ธ & ํฌ์คํธ
E. ์์ ๋ก ๋ฐ๋ผํ๋ ์คํ๋ด ๋๋ฑ
F. nohup์ผ๋ก ์๋ํ, ์์์ ์ธ์ ๋ 24/7
๊ทธ๊ฒ ๋ญ๋๊ณ ์?
์ผ๋งค๋ก ์๋ฆฌ์ ๋น์ ํด๋ด ์๋ค.
์ธ์์ ๋ค์ํ ์๋ฆฌ๊ธฐ์ ์ด ์กด์ฌํฉ๋๋ค. ๋ถ ์์์ ๋ณถ์ ์๋ ์๊ณ , ๋จ์ํ ๊ตฝ๊ธฐ๋ ํ๊ณ , ํน์ ์์ฑ์์ผ ๊น์ ๋ง์ ๋์ด๋ด๊ธฐ๋ ํ์ฃ . ๊ทธ ์ธ์๋ ๋ฌด์ง์ฅ ๋ง์ฃ
๊ทธ๋ฆฌ๊ณ ๋น์ทํ ๊ธฐ์ ๋ค์ ์ฐ๋๋ผ๋ (์ฐ๋ฆฌ๋๋ผ ๊ธฐ์ค) ๋ฌธํ์ ๋ฐ๋ผ ํ์, ์์, ์ผ์, ์ค์ ๋ฑ์ผ๋ก ์๋ฆฌ๊ธฐ์ ์ ๋ฌธ์ด ๋ถ๋ฅ๋์ฃ .
ํ๋ก๊ทธ๋๋ฐ ํน์ ์ฝ๋ฉ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค.
if/while/for๋ฌธ, loop ๋ฐ๋ณต๋ฌธ, OOP, ํด๋์ค ๋ชจ๋... ์๋น์ทํ ๊ธฐ์ ๋ค์ด ์ผ๋ถ ๊ณตํต์ ์ผ๋ก ์ฐ์ด๋, ์ธ์ด๋ PHP, C++, Python, Ruby ๋ฑ์ผ๋ก ๋๋ฉ๋๋ค.
์คํ ์๋, ์ฌ์ฉ์ ํธ์์ฑ, ์ฃผ ์ฌ์ฉ์ฒ ๋ฑ์ ์์๋ก ์ธํด ๋ง์ด์ฃ . ๊ทธ๋ฆฌ๊ณ ์ผ๋งค์ฝ๋ฉ์์๋ 'ํ์ด์ฌ'์ ์ฌ์ฉํฉ๋๋ค.
์๋ฌดํผ, ํ์์ ํ๋ ์์์ ํ๋ ๋ถ์์ด ํ์ํ๊ณ , ํ์ด์ฌ์ ์ฐ๋ ๋ฃจ๋น๋ฅผ ์ฐ๋ ๊ฐ๋ฐ ํ๊ฒฝ์ด ํ์ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ถ์์ ์ง์ ์์ ์๋ ์๊ณ ์๊ฐ ๋จ์๋ ๋น๋ฆฐ ์ธ๋ถ ์ฅ์์ผ ์๋ ์๋ฏ, ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ฐ์ธ ๋ ธํธ๋ถ์ ์ค์ ํ ์๋ ํน์ ๊ตฌ๊ธ ๊ฐ์ ๋๊ธฐ์ ์ผ๋ก๋ถํฐ ๋น๋ฆด ์๋ ์์ต๋๋ค.
ํ์ง๋ง ์ ๊ฐ ์ผ๋งค์ฝ๋ฉ์ ๋ณด์ค ๋ค์ํ ๋ถ๋ค์ ๋ถ์ ๊ตฌ์ฑ(๊ฐ์ธ ๋ ธํธ๋ถ/์ปดํจํฐ)์ ๋ชจ๋ ํ์ ํ ์ ์์ผ๋ ๊ณตํต์ ์ผ๋ก ๊ฐ์ ํ๊ฒฝ์ ๊ตฌ๊ธ๋ก ๋ถํฐ ๋น๋ ค์ ํจ๊ป ์ค์ ํด๋ณผ๊ฒ๋๋ค.
๊ทธ๋ผ ๋ณธ๊ฒฉ์ ์ผ๋ก ์์ํด๋ณผ๊น์?

์ด๋ฏธ์ง ์ถ์ฒ - https://dribbble.com/shots/3974885-Bumblebee by Pat Grivet
์ ๋ฅผ ๋น๋กฏํด ํ๋ฆฐ์ด๋ค์ ์ข์ ์ธ์์ ์ด๊ณ ์์ด์. ๋ง์ ๊ธฐ์ ๋ค์ด ๋ถ์์ ์๊ฐ ๋จ์์์ ์ฌ์ง์ด ๋ถ ๋จ์๊น์ง ์ ๋ ดํ๊ฒ ์ ์ธ๊ณ์ ์ผ๋ก ๋น๋ ค์ฃผ๊ณ ์๊ฑฐ๋ ์.
๊ทธ์ค ์ญ์ ๋๊ธฐ์ ๋ค์ ์๋ง์กด AWS, ๋ง์ดํฌ๋ก์ํํธ Azure, ๊ตฌ๊ธ Google Cloud๊ฐ ๋ํ์ ์ด์ฃ . ์ฐ๋ฆฌ๋ Google Cloud๋ฅผ ์จ๋ณด๋๋ก ํ ๊ฒ์.
Google Cloud๋ ๋ถ์์๋ ์ฆ, ์จ๋ผ์ธ์ ์กด์ฌํ๋ ๊ฐ์์ ์ปดํจํฐ๋ฅผ ๊ตฌ๊ธ๋ก๋ถํฐ ๋น๋ ค์ค๋๊ฒ๋๋ค. ๊ทธ๋ผ ์ธ์ ๋ ์จ๋ผ์ธ ์ ์๋ง ๋๋ค๋ฉด ์ด๋ ์ปดํจํฐ์์๋ ์ ๊ทผํ ์ ์๊ณ ์ํ๋ค๋ฉด 24/7 ์ผ๋๋ ์ ๊ธฐ์ธ ๊ฑฑ์ ์ ๋
ธ๋
ธ!
๊ทธ๋์ผ ์์์ ๋งํ๋ฏ์ด ๊ฐ์ ๋ถ์์ ๋น๋ ค์จ์ผ ์ ๊ฐ ๋๊ฐ๊ณ ๋ ์ฐ์ธก ์๋์ 3๋ฒ ๋์ดํ๊ฐ ์๋ค๊ณ (ํ์ด์ฌ ๋ฒ์ 3.XX๊ฐ ์ค์น๋์ด ์๋ค๊ณ ) ๋งํด์ค ์ ์์ฃ .
์ฐ์ ๊ตฌ๊ธ ํด๋ผ์ฐ๋ ํํ์ด์ง์ ์ ์ํด์. ๊ทธ๋ฆฌ๊ณ ์ฐ์ธก ์๋จ ๊ตฌ๊ธ
๋ก๊ทธ์ธ ๋ฒํผ์ ํด๋ฆญํ์ฌ ๋ก๊ทธ์ธ ํด์ฃผ์ธ์. ๊ตฌ๊ธ ๊ณ์ ์ ์๊ฒ ์ฃ ์ค๋ง?
๊ทธ๋ฆฌ๊ณ ๋์ '์ฝ์๋ก ์ด๋'์ ํด๋ฆญํด์ฃผ์ธ์. (ํน์ ์ฌ๊ธฐ ํด๋ฆญ)
์ฒ์ ๊ตฌ๊ธ ํด๋ผ์ฐ๋ ์ฝ์์ ์ค์ ๊ฑฐ๋ผ๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ณด์ผ๊ฒ๋๋ค. '๋ฌด๋ฃ๋ก ์ฌ์ฉํด๋ณด๊ธฐ'๋ฅผ ํด๋ฆญํด์ฃผ์ธ์.
๋คํํ ๋ถ์์๋ํ์ฌ ๊ตฌ๊ธ์์ ๋ฌด๋ฃ $300 ํฌ๋ ๋ง์ ์ ๊ณตํด์ค๋๋ค.
๊ทธ๋ผ, ์๋ด๋๋ ์ฝ๊ด ๋์์ ๊ฐ์ธ์ ๋ณด๋ฅผ ์ ๋ ฅํด์ฃผ์ธ์. ๋ง์ง๋ง์ ์นด๋์ ๋ณด๋ ํ์ํ์ง๋ง! ์ด๋ ๋ฌด์ฐจ๋ณ์ ์ผ๋ก ๊ตฌ๊ธ ํด๋ผ์ฐ๋ ๊ณ์ ์ ์์ฑํ๋ ๊ฒ์ ๋ง๊ธฐ ์ํจ์ด๊ณ ์ถ๊ฐ ๋์ ์์ด๋ ์ ๋ ๊ณผ๊ธ๋์ง ์์ต๋๋ค. $300์ผ๋ก๋ ์ถฉ๋ถํด์ :)
์ ๋ณด ์ ๋ ฅ์ด ์๋ฃ๋๋ฉด ์๋์ผ๋ก ๊ธฐ๋ณธ 'ํ๋ก์ ํธ'๊ฐ ์์ฑ๋ฉ๋๋ค. ์ ์ ๊ธฐ๋ค๋ ค์ฃผ์ธ์.
์ด์ ์ ์์ ์ผ๋ก ์ฝ์ ํ๋ฉด์ด ๋ด๋์? ํ๋์ ์๋จ์๋ 'My First Project'๊ฐ ๋ณด์ผ๊ฒ๋๋ค.
์ง๊ธ๊น์ง ํ ๊ณผ์ ์ ๋๋ค ๊ตฌ๊ธ์ง์ ์ ์ฐพ์๊ฐ ๋ถ์์๋๋ฅผ ์ํด ๊ฐ์ธ์ ๋ณด๋ฅผ ์ ๋ ฅํ๊ณ , ์ถ์ ์ฆ์ ๋ฐ๊ธ๋ฐ์ ๊ฒ๋๋ค. ์นด๋๋ฅผ ํตํด ์ ์ํ์ธ์ด ๋์ผ๋ ์ฐ์ง๋ฐฉ์ฒ๋ผ ์ถ์ ์ฆ์ผ๋ก ๋ญ๋ ์ ๊ตฌ๋งค ํ๊ฒฐ์ ๋ฅผ ํ ์ ์์ฃ ์ด์ !
๊ทธ๋ผ ๋ณธ๊ฒฉ์ ์ผ๋ก ๋ถ์์ ๋น๋ ค๋ณด๊ฒ ์ต๋๋ค.
์ผ์ชฝ ํฐ์ ๋ฐ(์ ๋ณด์ด๋ฉด ์ข์ธก ์๋จ์ ์ผ์ ํด๋ฆญ)์์ Compute Engine๋์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ ค 'VM์ธ์คํด์ค'์ ๋ค์ด๊ฐ์ฃผ์ธ์.
์ด๋ฐ ๋ ์ค๋น์ค์ด๋ค์. ์ ์ ๊ธฐ๋ค๋ ธ๋ค๊ฐ ํ๋์ '๋ง๋ค๊ธฐ' ๋ฒํผ์ด ํ์ฑํ ๋๋ฉด ํด๋ฆญํด์ฃผ์ธ์.
๊ทธ๋ผ ์๋์ ๊ฐ์ด ๊ธด ๋ชฉ๋ก์ด ๋น๋๋ค. ํ๋ฆฐ์ด๋ผ๋ฉด ๋ชจ๋ฅด๋ ์ฉ์ด๊ฐ ๋ช ๊ฐ ์์ ์ ์์ง๋ง, ๊ฑฑ์ ๋ง์ธ์. ๋ณ๊ฑฐ ์์ต๋๋ค.
์๋ ๋ฐ์ ๋ถ์์ ์ฃผ๋ฌธํ๋ ์ฐฝ์ ๋๋ค. ์์ธํ ์คํ์ ์์ฒญํ ์ ์๋๊ฑฐ์ฃ . ํ๋์ฉ ํจ๊ป ํด๋ณด์ฃ .
๋จผ์ ์๋ฌธ์ผ๋ก ์ด๋ฆ์ ์ง์ด์ค์๋ค. ์ ๋ kimsawon์ผ๋ก ํ์ด์.
๊ทธ๋ฆฌ๊ณ ์์ญ์ ์๋ ๋ฐ์ ์ง์ญ์ ์ ํ๋๊ฒ๋๋ค.
์์ฝ๊ฒ๋ ํ๊ตญ์๋ ์์ด์ ์ธ๊ทผ ๊ตญ๊ฐ๋ก ์ค์ ํ๋ฉด ๋ฉ๋๋ค. asia-east1-a ์ฆ ๋๋ง์ผ๋ก ์ค์ ํ์ต๋๋ค. ์ํ๋ค๋ฉด ๋ค๋ฅธ ๊ตญ๊ฐ๋ก ํด๋ ๊ด์ฐฎ์์.
๋ถ์์ ๋ถ์์ด์ง๋ง ์๊ฒฉ ์ ์์ด ๊ฐ๋ฅํ๋ ๊ฐ๊น์ด ๋๋ผ๋ฉด ๊ด์ฐฎ์์. ์๋ฒ ์์น๋ฅผ ์ ํ๋๊ฒ๋๋ค.
์ฌ๊ธฐ์์ ๋ค๋ฅธ ๊ตญ๊ฐ๋ ์์ธํ ๋ณผ ์ ์์ด์
๊ทธ๋ผ ์ด์ ๋จธ์ ์ ํ์ '์ํ(๊ณต์ vCPU 1๊ฐ)๋ก ์ ํํด์ฃผ์ธ์. ์ฒ์์ด๋๊น ํจ๊ป ์ฐ๋ ์์ ์ค๋ธ์ผ๋ก ํ๋์ฌ๋ ๊ด์ฐฎ์์. ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๊ฐ์ด ์ฐ๋ CPU๊ฐ ๋ฌ๋ ค์๋๊ฒ๋๋ค.
์ด๋ ๊ฒ ํด๋ ํ ๋ฌ ๋ด๋ด ์จ๋(์ผ๋๋) $15 ์ ๋ ๋ฐ์ ์ ๋์. ๊ทธ๋ง์ ๋ ๋ฌด๋ฃ ํฌ๋ ๋ง์ผ๋ก ๋ค ๊ณ์ฐ๋์ฃ ! ๋ง์ฝ ๊ป๋ค์ผฐ๋ค ํ๋ค๋ฉด ๋น์ฉ์ ๋ ์ค์ฃ . ์๊ฐ ๋จ์ ์๊ธ์ $0.022๊ฑฐ๋ ์!
๋ค์์ ๋ถ์์ ๋๋ํ ์ ๋ฝํ ์ธํ
๋ฆฌ์ด 50ํ์ผ๋ก Ubuntu 17.10์ ๋์คํฌ ์ฌ์ด์ฆ 50GB๋ก ๋๋ํ ์ก์์ค๋๋ค.
๋ถํ ๋์คํฌ์ ๋ณ๊ฒฝ์ ํด๋ฆญํด์ฃผ๋ฉด ๋์.
๋ง์ง๋ง์ผ๋ก ๋ฐฉํ๋ฒฝ์ ์ค์ ํ๋ฉด ๋์ ๋๋ค!
HTTP ํธ๋ํฝ ํ์ฉ / HTTPS ํธ๋ํฝ ํ์ฉ ๋ ๋ค ํด๋ฆญํด์ฃผ์ธ์ :)
๊ทธ๋ฆฌ๊ณ ๋ง๋ค๊ธฐ ํด๋ฆญ!
๊ทธ๋ผ ์ฌํ๊น์ง ์ ํํ ์ ๋ณด(์คํ)์ ๋ฐ๋ผ ๋ถ์(VM์ธ์คํด์ค)์ด ์์ฑ๋ฉ๋๋ค. ์ด๋ก๋ถ์ด ๋ค์ด์ค๋ฉด ์ ์์ ์ผ๋ก ์ค์ ๋๊ฒ๋๋ค!
์ฐ๊ฒฐ ์๋ SSH ๋ฒํผ ๋ณด์ด์์ฃ ? ํด๋ฆญ!
๋งจ ์ฒ์์ ๋ฐ๊ธ๋ฐ์ ์ถ์ ์ฆ(๊ตฌ๊ธ ๊ณ์ )์ ๋ฐฉ๊ธ ์๋ก ๋ง๋ ๋ถ์(VM ์ธ์คํด์ค)์ ๋ง๋ค๋ฉด์ ํ๋ฆฐ์ด๋ง ์ฌ์ฉํ ์ ์๋ ๊ถํ(SSH ํค)์ด ์๋์ผ๋ก ์ ์ฅ๋์์ด์. ์ด์ ๊ทธ๋ผ ์ถ์ ์ฆ์ ํ๊ทธํ๋ฉด(SSHํค๋ฅผ VM์ ์ ์ก) ๋ถ์์ ์ถ์ (VM ์ ์)ํ ์ ์์ต๋๋ค :)
์ ์ ๊ธฐ๋ค๋ ธ๋ค๊ฐ ์์ ๊ฐ์ ๊ฒ์ ํ๋ฉด์ Welcome to Ubuntu 17.10 ์ด๋๋ผ๊ฐ ๋ณด์ด๋ฉด ๋ถ์์ ์ฑ๊ณต์ ์ผ๋ก ๊ตฌ๊ธ๋ก๋ถํฐ ์๋ํ๊ฒ๋๋ค :)
์ถํ๋๋ฆฝ๋๋ค!
์ ์๋ฌด๋ฐ ๋ฐ์์ด ์์๋ค๊ณ ์? ํน์ ๋ธ๋ผ์ฐ์ ์ฐ์ธก ์๋จ์ '์๋ก์ด ์ฐฝ'์ ๋ง๋ ์๋์ ์์๋์ง ํ์ธํด์ฃผ์ธ์!
์์ง๊น์ง ์คํ๋ด ๋ง๋ค๊ธฐ๋ ์ฐ๊ด์ด ์์ด ๋ณด์ด์ฃ ?
ํ์ง๋ง ์คํ๋ด ๋ ์ํผ(์ฝ๋ ์์ )๋ฅผ ์ตํ๊ธฐ ์ ์ ์ธํ ์ด ํ์๋ผ ์ด์ฉ ์ ์์ด์ใ ใ ๊ทธ๋๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ํ ๋ฒ ๊ฐ์ถฐ๋๋ฉด ์ดํ ์ผ๋งค์ฝ๋ฉ์ ๋ค๋ฅธ ๊ฐ์๋ค๋ ์ฝ๊ฒ ๋ฐ๋ผํ ์ ์์๊ฒ๋๋ค.
์ ์ด์ ๋ถ์์ ์๋ ๋ฐ์์ผ๋, ๊ทธ ์์ ์กฐ๋ฆฌ๊ธฐ๊ตฌ๋ค์ ๊ฐ์ถฐ์ผ๊ฒ ์ฃ ?
๊ทธ๋ผ ๋ด์ผ์ B. ๊ฐ๋ฐ ํ๊ฒฝ์ค์ ๋ฐ๋ผํ๊ธฐ II - Conda ์ธํ ์ผ๋ก ์ฐพ์๋ต๊ฒ ์ต๋๋ค.
๊ทธ๋์ ๊ตฌ๊ธ ํด๋ผ์ฐ๋ VM์ธ์คํด์ค๋ฅผ ์์ฑํด๋ฌ์ฃผ์ธ์ :) ํ๋ฃจํ๋ฃจ ๊พธ์คํ ๋ฐ๋ผ์์ฃผ์๋ฉด ๋ค์ ์ฃผ๊ฐ ๋๋๊ธฐ ์ ์ ํ๋ฆฐ์ด๋ง์ ์คํ๋ด์ด ์คํ ์ธ๊ณ๋ฅผ ํํํ๊ณ ์์๊ฒ๋๋ค.
๊ถ๊ธํ์ ์ , ์ง์ ํ์ค ์ (ํ์ํฉ๋๋ค) ํน์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค! ์ถ์ผ๋ฉด ๋๊ธ ์ธ์ ๋ ๋จ๊ฒจ์ฃผ์ธ์. ๋น ๋ฅธ ๋ต๋ณ์ ์๋๊ฒ ์ง๋ง(...) ๋๋ต๋๋ฆฌ๊ฒ ์ต๋๋ค :)
์ด๋ง ์ผ๋ณ ํฌ๋ฆฝํ ์์ต๋๋ค. ํ์น!
์! ํน์ ์ฝ์ด๋ณด์ จ๋์?
โ ํฌ๋ฆฝํ ์ฌ๊ฐ CryptoSaga๊ฐ ๋ฐฉ๊ธ ๋ฉ์ธ๋ท์ ๋ฐ์นญ๋์์ต๋๋ค!
๋ฐ๋ก ๋ค์ ํธ์ผ๋ก ๊ฐ์ฆ์!
B. ๊ฐ๋ฐ ํ๊ฒฝ์ค์ ๋ฐ๋ผํ๊ธฐ II - Conda ์ธํ