[์ฑ๋ด/ASP.NET] C#์ผ๋ก ์๋๋ก์ง(Synology) ์๋ฒ์ ์นด์นด์คํก ์์ ์คํฌ ์๋ฒ ๊ตฌ์ถํ๊ธฐ
์ด๋ฒ ํฌ์คํ ์์๋ ASP.NET์ผ๋ก ๋ง๋ ์นด์นด์คํก ์ฑ๋ด ์์ ์คํฌ ์๋ฒ ์ฝ๋๋ฅผ ์๋๋ก์ง ์๋ฒ์ ์ ๋ก๋ํ์ฌ ๋์ํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๊ณ ์ ํฉ๋๋ค.
๋ณธ๋ฌธ์ ์ํด์๋ ์ง๋ ํฌ์คํ ๋ด์ฉ์ ๊ผญ ์ฝ์ด๋ณด์๊ธธ ๊ถ์ฅ๋๋ฆฝ๋๋ค.
[์ฑ๋ด/ASP.NET] C#์ผ๋ก Microsoft Azure ์๋ฒ์ ์นด์นด์คํก ์์ ์คํฌ ์๋ฒ ๊ตฌ์ถํ๊ธฐ
๋ณธ๋ฌธ์ ๋์์ ์๋ ๋ค์ด์ด๊ทธ๋จ๊ณผ ๊ฐ์ต๋๋ค.
๋ฐ๋ผ ํ๊ธฐ
1. ASP.NET ํ๋ก์ ํธ
์ง๋ ํฌ์คํ ์์ ์ฌ์ฉํ ํ๋ก์ ํธ๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค. ์ง๋ ํฌ์คํ ๋ด์ฉ์ ์์ธํ ๋ด์ฉ์ด ๊ธฐ์ ๋์ด ์์ผ๋ ๊ผญ ์ฝ์ด๋ณด์๊ธฐ ๋ฐ๋๋๋ค.
ํ๋ก์ ํธ ๋ฉ๋ด์์ Docker ์ง์์ ํด๋ฆญํฉ๋๋ค.
์ดํ Dockerfile์ด ์์ฑ๋๋ฉฐ, ๊ธฐ๋ณธ ์์ฑ๋ ์ฝ๋๋ ์ง์ฐ๊ณ ์๋์ ์ฝ๋๋ก ๋ณ๊ฒฝํฉ๋๋ค.
FROM microsoft/dotnet:2.2-aspnetcore-runtime
COPY . /app
WORKDIR /app
ENV ASPNETCORE_URLS http://*:7552
EXPOSE 7552
ENTRYPOINT ["dotnet", "ExamSkillServer.dll"]
๋น๋ ํ ๊ฒ์ ๋ฉ๋ด๋ฅผ ํด๋ฆญํฉ๋๋ค. ๊ฒ์ ๋์์ผ๋ก๋ ISS, FTP ๋ฑ์ ์ ํํฉ๋๋ค.
์ฐ๊ฒฐ ํ๋ฉด์ด ๋ํ๋๋ฉด ๊ฒ์ ๋ฐฉ๋ฒ๊ณผ ๊ฒฝ๋ก๋ฅผ ์ ํํฉ๋๋ค. ๊ฒฝ๋ก๋ฅผ ์ ํํ๋ฉด Docker์ ์ฌ๋ฆด ํ์ผ๋ค์ด ์์ฑ๋ฉ๋๋ค.
์ค์ ํ๋ฉด์์๋ ์๋์ ๊ฐ์ด ์ต์ ์ ์ ํํ๊ณ ์ ์ฅ ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
์ ํํ ๊ฒฝ๋ก์ ์ฌ๋ฌ ํ์ผ๋ค์ด ์์ฑ๋์ต๋๋ค.
๋ง์ฝ, ์์ฑ๋ ํด๋์ Dockerfile์ด ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ ํ๋ก์ ํธ์์ ์์ฑํ ํ์ผ์ ๋ณต์ฌํฉ๋๋ค.
2. Synology Docker ์ค์ ํ๊ธฐ
Docker ์ค์ ์ด ๋ณต์กํด ๋ณด์ผ ์๋ ์์ต๋๋ค. ๋ฏธ๋ฆฌ ์ฐจ๊ทผ์ฐจ๊ทผ ์ฝ์ด๋ณธ ํ ๋ฐ๋ผ ํ์๊ธธ ๊ถ์ฅํฉ๋๋ค.
ํน์๋ Synology ์๋ฒ์ Docker๊ฐ ์ค์น๋์ด ์์ง ์๋ค๋ฉด ์ค์น๋ถํฐ ์งํํฉ๋๋ค. ํจํค์ง ์ผํฐ์์ Docker๋ฅผ ๊ฒ์ํ๊ณ ์ค์น๋ฅผ ์งํํฉ๋๋ค.
๋ณ๋ค๋ฅธ ์ ํ ์์ด ๋ฐ๋ก ์ค์น๊ฐ ์๋ฃ๋ฉ๋๋ค.
File Station์ ํด๋ฆญํ๊ณ skillserver๋ผ๋ ์ด๋ฆ์ ํด๋๋ฅผ ํ๋ ์์ฑํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ํด๋์ 1๋ฒ ๋จ๊ณ์์ ์์ฑํ ํ์ผ์ ๋ชจ๋ ์ ๋ก๋ํฉ๋๋ค.
์ ์ดํ์์ ํฐ๋ฏธ๋ ๋ฐ SNMP ๋ฉ๋ด์ SSH ์๋น์ค ํ์ฑํ๋ฅผ ์ฒดํฌํฉ๋๋ค. ํฌํธ๋ ๊ธฐ๋ณธ ๊ฐ 22๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์ด์ PuTTY๊ฐ ํ์ํฉ๋๋ค. PuTTY๋ ์๋์ ๋งํฌ์์ ๋ค์ด๋ก๋ ๊ฐ๋ฅํฉ๋๋ค.
๋งํฌ: www.putty.org/www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Synology NAS์ IP ์ฃผ์์ SSH ํฌํธ์ธ 22๋ฅผ ์ ๋ ฅํ๊ณ Open ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
์๋์ ๊ฐ์ด ๋ณด์ ๊ฒฝ๊ณ ๋ฉ์์ง๊ฐ ํ์๋๋ฉด ์ ๋ฒํผ์ ํด๋ฆญํด์ ๋์ด๊ฐ๋๋ค.
๋ค์์ผ๋ก ์๋์ ๊ฐ์ด ๊ฒ์ ํ๋ฉด์ login as: ํ๋ฉด์ด ํ์๋ ๊ฒ์ ๋๋ค. Synology NAS ๊ด๋ฆฌ์ ์์ด๋ ๋ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํฉ๋๋ค.
sudo -i
Password์๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๊ด๋ฆฌ์ ๊ณ์ ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์๋์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ skillserver ํด๋๋ก ์ด๋ํฉ๋๋ค.
cd /volume1/docker/skillserver
๋ง์ง๋ง์ผ๋ก ์๋์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ ์ค์น๋ฅผ ์์ํฉ๋๋ค.
docker build -t skill .
๋ง์ง๋ง ํ๋จ์ Successfully ๋ฉ์์ง๊ฐ ํ์๋๋ฉด ์ฑ๊ณต์ ์ผ๋ก ๋ ๊ฒ์ ๋๋ค.
3. Docker ์ด๋ฏธ์ง ํ์ธํ๊ธฐ
์ด์ ์นด์นด์คํก ์ฑ๋ด ์๋ฒ๊ฐ Docker์์ ์ ๋๋ก ๋์๊ฐ๊ณ ์๋์ง ํ์ธํด ๋ณด๊ฒ ์ต๋๋ค. Synology DSM์์ Docker๋ฅผ ์คํํ๊ณ ์ด๋ฏธ์ง ๋ฉ๋ด๋ฅผ ์ ํํฉ๋๋ค. ์ ์์ ์ผ๋ก ์ค์น๊ฐ ๋๋ค๋ฉด ์๋์ ๊ฐ์ด ํ์๋ฉ๋๋ค.
์ปจํ ์ด๋ ๋ฉ๋ด๋ฅผ ์ ํํ๋ฉด ์๋์ ๊ฐ์ด ์คํ ์ค์ด๋ผ๊ณ ํ์๋ฉ๋๋ค.
์ปจํ ์ด๋๋ฅผ ๋๋ธ ํด๋ฆญํ๋ฉด ์๋์ ๊ฐ์ด ์ ๋ณด๊ฐ ํ์๋ฉ๋๋ค.
Synology IP ์ฃผ์์ 32768 ํฌํธ ๋ฒํธ๋ฅผ ์ ๋ ฅํด ๋ณด๊ฒ ์ต๋๋ค. ์๋์ ๊ฐ์ ๋ด์ฉ์ด ํ์๋๋ฉด ๋ฌธ์ ์์ด ์คํฌ ์๋ฒ๊ฐ Synology Docker์์ ์ด์๋๊ณ ์๋ ๊ฒ์ ๋๋ค.
4. ์นด์นด์คํก i ์คํ ๋น๋์ ์ฐ๊ฒฐํ๊ธฐ
์นด์นด์คํก i ์คํ ๋น๋์ ์คํฌ์ URL์ Synology ์ฃผ์๋ฅผ ์ ๋ ฅํฉ๋๋ค.
ํ๋จ์ ์คํฌ์๋ฒ๋ก ์ ์ก ๋ฒํผ์ ํด๋ฆญํ๋ฉด ์๋ต ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋ค.
์ ๋ฆฌ
์ง๊ธ๊น์ง ์ฑ๋ด ์คํฌ ์๋ฒ ์ฝ๋ ๊ตฌํ๊ณผ Microsoft Azure ๋ฐ Synology ์๋ฒ์ ์ ๋ก๋, ๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ผ๋ก ์นด์นด์ค i ์คํ ๋น๋์ ์คํฌ์ ์ฐ๋ํ๋ ๋ฐฉ๋ฒ์ ์์๋ดค์ต๋๋ค.
์ถํ ๊ธฐํ๊ฐ ๋๋ค๋ฉด ์คํ ๋น๋์ ์คํฌ์ ์์ฉํ์ฌ ์์ ์ฑ๋ด์ ๋ง๋๋ ๊ณผ์ ์ ์ฌ๋ฆฌ๋๋ก ํ๊ฒ ์ต๋๋ค.
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote