๋ก์ปฌ(Mac/Windows)์์ ๊ฐ๋ฐํ Dockerfile ๊ธฐ๋ฐ ํ๋ก์ ํธ๋ฅผ
Synology NAS Docker(Container Manager)์์ ์คํํ๊ณ ์ถ์ ๋ ๋ฐ๋ผ ํ๋ฉด ๋๋ ์ ์ฒด ๊ณผ์ ์
๋๋ค.
Synology๋ ZIP ํ์ผ๋ก ๋น๋ํ๋ ๊ธฐ๋ฅ์ ์ง์ํ์ง ์๊ธฐ ๋๋ฌธ์,
Dockerfile โ Docker Image โ NAS ์
๋ก๋ โ ์ปจํ
์ด๋ ์คํ ์์๋ก ์งํํด์ผ ํฉ๋๋ค.
๐ ์ ์ฒด ๊ณผ์ ์์ฝ
- ๋ก์ปฌ์์ Dockerfile์ ์ฌ์ฉํด Docker ์ด๋ฏธ์ง ๋น๋
- ๋น๋๋ ์ด๋ฏธ์ง๋ฅผ
.tar๋ก ์ ์ฅ .tarํ์ผ์ NAS์ ์ ๋ก๋- Synology Container Manager์์ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ
- ๊ฐ์ ธ์จ ์ด๋ฏธ์ง๋ก ์ปจํ ์ด๋ ์์ฑ
- ํฌํธ/ํ๊ฒฝ๋ณ์/๋ณผ๋ฅจ ์ค์ ํ ์คํ
1๏ธโฃ ๋ก์ปฌ์์ Docker ์ด๋ฏธ์ง ๋น๋
cd /path/to/project
docker build -t obit-api .
docker images
2๏ธโฃ Docker ์ด๋ฏธ์ง๋ฅผ tar ํ์ผ๋ก ์ ์ฅ
docker save -o obit-api.tar obit-api
3๏ธโฃ NAS๋ก tar ํ์ผ ์ ๋ก๋
NAS DSM โ File Station โ /volume1/docker/obit-api/ ๋ฑ์ผ๋ก ์
๋ก๋
4๏ธโฃ Container Manager์์ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ
์ด๋ฏธ์ง โ ์์
โ ๊ฐ์ ธ์ค๊ธฐ โ ํ์ผ์์ ์ถ๊ฐ โ DSM์์ โ obit-api.tar ์ ํ
5๏ธโฃ ์ ์ปจํ ์ด๋ ์์ฑ
ํฌํธ ์ค์ ์์:
- ๋ก์ปฌ ํฌํธ:
4000 - ์ปจํ
์ด๋ ํฌํธ:
4000
MariaDB ์ฐ๊ฒฐ ํ๊ฒฝ๋ณ์ ์์:
DB_HOST=192.168.0.4
DB_PORT=3333
DB_USER=root
DB_PASSWORD=yourpassword
DB_NAME=obit
6๏ธโฃ ์ปจํ ์ด๋ ์คํ & ํ ์คํธ
http://NAS-IP:4000/health
๊ฒฐ๊ณผ:
{ "status": "ok" }
ZIP ํ์ผ์ด ์๋๋ ์ด์
Synology๋ .tar ํ์์ Docker ์ด๋ฏธ์ง import๋ง ์ง์ํฉ๋๋ค.
๐ ์ ๋ฆฌ
| ์์ | ์ง์ ์ฌ๋ถ | ์ค๋ช |
|---|---|---|
| ZIP ์ ๋ก๋ | โ | Dockerfile ์๋ ๋น๋ ๋ถ๊ฐ |
| Dockerfile ์ ๋ก๋ | โ | Container Manager๊ฐ build ๊ธฐ๋ฅ ์์ |
| Docker ์ด๋ฏธ์ง(.tar) ์ ๋ก๋ | โ | tar import๋ง ์ง์ |
| NAS SSH์์ Docker build | โ | ๊ฐ์ฅ ํธํจ |
๐ ๋ณด๋์ค: NAS์์ ์ง์ ๋น๋
ssh admin@192.168.0.4
cd /volume1/docker/obit-api
sudo docker build -t obit-api .
ํ์ํ์๋ฉด HTTPS Reverse Proxy, Jenkins ์๋ ๋ฐฐํฌ, ์ ์ฒด ์ํคํ ์ฒ ๊ตฌ์ฑ๋๋ ์ ๋ฆฌํด๋๋ฆฝ๋๋ค.
๋ต๊ธ ๋จ๊ธฐ๊ธฐ