๐ก ๋ชฉํ
๊ธฐ์กด์ ์นํ์ ์๋ฒ๋ฅผ EC2 ์ ๋์ ์๋ค.ํ์ง๋ง ์ดํ ์๋น์ค๋ฅผ ๋ฐฐํฌํ๋ค๊ฐ ๊ทธ ํ๋์ ์๋ฒ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ์ฌ์ฉ์๋ค์ ๋์ ์๋น์ค๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ ๊ฒ์ด๋ค.๋๋ฌธ์ ํ์ฅ์ฑ, ๊ณ ๊ฐ์ฉ์ฑ, ์์ ์ฑ์ ์ํด ๋์ผํ ์๋ฒ ํ๋๋ฅผ ๋ ์ด๊ธฐ๋ก ํ๋ค.
๐ฑ ์ธ์คํด์ค ์์ฑ
์ธ์คํด์ค ์ด๋ฆ์ ์ค์ ํด์ค๋ค.
๊ธฐ์กด ์๋ฒ์ ๋์ผํ๊ฒ ubuntu ํ๊ฒฝ์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค๊ธฐ๋ก ํ๋ค.
๊ธฐ์กด์ ์ฌ์ฉํ ํคํ์ด์ ๋ณด์๊ทธ๋ฃน์ ์ฌ์ฉํ๋ค.
๊ธฐ์กด ์๋ฒ์ ๋์ผํ๊ฒ ๋ค๋ฅธ Redis, Kafka, Elasticsearch ์๋ฒ์ ์ฐ๊ฒฐ๋์ด์ผํ๊ธฐ ๋๋ฌธ์ ๋์ผํ๊ฒ ์ค์ ์ ํด์ฃผ์๋ค.
์ธ์คํด์ค๊ฐ ์ ์์ ์ผ๋ก ์ด๋ ธ๋ค.
๋ฉ๋ชจ์ฅ ํ์ผ์ ๋์ด์ git bash ์ ๋ฃ์ด๋ ํด๋น EC2 ๋ก ์ ๊ทผ์ด ๋๊ฒ ํ๊ธฐ ์ํด์ ํด๋น ๋ช ๋ น์ด๋ฅผ ๋ฃ์ ๋ฉ๋ชจ์ฅ์ ๋ง๋ค์๊ณ
์ ์ฒ๋ผ ์ ๊ทผ์ ํ๋ค.
๐ฑ Docker ์ค์น
sudo su
๊ด๋ฆฌ์ ๋ชจ๋ ๋ช ๋ น์ด
apt-get update
apt-get install -y docker.io
Docker ์ค์น
systemctl start docker
systemctl enable docker
Docker ์๋น์ค๋ฅผ ์์ํ๊ณ , ๋ถํ ์ ์๋์ผ๋ก ์คํ๋๋๋ก ์ค์
Docker --version
Docker ๋ฒ์ ์ ํ์ธํด์ ์ ์์ ์ผ๋ก ์ค์น๊ฐ ๋์๋์ง ํ์ธํ๋ค.
๐ฑ ENV ํ์ผ ์์ฑ
nano .env
ํ๊ฒฝ๋ณ์ ํ์ผ ์์ฑ
๊ณต๋ฐฑ์ ์ ๊ฒฝ์ฐ๋ฉด์ ํ๋ก์ ํธ ๋ด๋ถ์์ ์ค์ ํ .env ํ์ผ๊ณผ ๋์ผํ๊ฒ ํ๊ฒฝ๋ณ์๋ค์ ๋ฃ์ด์ค๋ค.
๐ฑ Docker ์ด๋ฏธ์ง ๊ฐ์ ธ์์ ์ปจํ ์ด๋ ์คํ ์ํค๊ธฐ
docker pull daegyuhan/ssak:v1
docker run -d --name daegyuhan-ssak --env-file /home/ubuntu/.env -p 8080:8080 daegyuhan/ssak:v1
๊ธฐ์กด ์๋ฒ์์ ์คํํ๊ธฐ ์ํด Docker Hub ์ ์ด๋ฏธ ์ด๋ฏธ์ง๊ฐ ์ฌ๋ผ๊ฐ์๋ ์ํฉ์ด๊ธฐ ๋๋ฌธ์
pull ๋ก ๊ฐ์ ธ์ค๊ณ ์์์ ์์ฑํ env ํ์ผ์ ์ฐธ๊ณ ํด์ ์ปจํ ์ด๋๊ฐ ์คํ๋ ์ ์๋๋ก ํ๋ค.
docker run -d -p 8080:8080 daegyuhan/ssak:v1
๊ทธ๋ฅ ์ปจํ ์ด๋๋ง ์คํํ๊ธฐ ์ํด์๋ ์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
๐ฑ ๋ณด์๊ทธ๋ฃน ํ์ธ
ํด๋น ์ปจํ ์ด๋๊ฐ 8080 PORT ์์ ์คํ๋๊ธฐ ๋๋ฌธ์ ์ด์ด์คฌ๊ณ ,
SSH ์ ๊ทผ์ ์ํ 22,
HTTP, HTTPS ๋ฅผ ์ํ 80 ๊ณผ 443,
RDS ์ฐ๊ฒฐ์ ์ํ 3306 PORT ๋ฅผ ์ด์ด์ค ๊ฒ์ ํ์ธํ ์ ์๋ค.