1단계 Docker 설치 및 실행
단계별로 접근할 때, 문의를 해본다.
"1단계 부터 해보자."
좋습니다! 1단계: Docker 기본 이해 및 Synology에서 사용법 익히기 단계부터 차근히 시작해보죠.
1단계: Synology NAS에서 Docker 기본 사용법 익히기
1-1. Docker 패키지 설치
- DSM(웹관리페이지)에 로그인
- 패키지 센터 > 검색창에
Docker입력 Docker패키지를 설치- 설치 후 "열기"를 눌러 Docker GUI 실행
1-2. 첫 Docker 이미지 실행 (hello-world or nginx)
(1) Docker에서 이미지 검색 및 다운로드
- Docker GUI > 레지스트리 탭 클릭
nginx검색 >nginx:latest선택 후 다운로드
(2) 이미지 실행 (포트 매핑 포함)
- 이미지 탭 >
nginx:latest선택 > 실행 - 컨테이너 이름:
test-nginx - 포트 설정:
로컬 포트: 8080→컨테이너 포트: 80
=> 로컬 포트는 설정을 할 수가 없어서 이 부분 분석하는데 시간이 소요되었다.
(3) 결과 확인
- 브라우저에서
http://NAS_IP:로컬포트접속 - nginx Welcome Page가 나오면 성공!

(4) 결과 확인
CLI에서 하면, 로컬 포트도 설정 가능함을 몇 번의 시도로 알 수 있었다.
sudo docker run --name test-nginx2 -p 8081:80 -d nginx
1-3. 컨테이너 관리 실습
- 컨테이너 탭에서
test-nginx확인- 시작 / 중지 / 재시작 / 로그 보기
- 중지 후 삭제도 해보세요
- 볼륨 탭 확인: 아직은 없음 (2단계에서 실습 예정)
1-4. 명령어로도 실행해보기 (선택사항, SSH 접속 필요)
Synology NAS에 SSH 접속이 가능하다면:
docker run --name hello-container hello-world
- 메시지에 "Hello from Docker!"가 나오면 성공
다음 단계로 넘어가기 전 체크리스트
- Docker 패키지를 설치했다
- Docker GUI에서 이미지(nginx)를 다운로드하고 실행해 봤다
- 브라우저에서 nginx 페이지를 확인했다
- 컨테이너 시작/중지/삭제를 해봤다
2단계
"단계 2를 해보자."라는 Prompting으로 다음 사항이 제공된다.
✅ 2단계 목표 요약
- Python Docker 이미지 다운로드 (
python:3.10권장) - NAS의 공유 폴더를 Docker 컨테이너에 마운트
- Python 컨테이너에서 간단한 웹 크롤링 코드 실행 (
requests,beautifulsoup4) - 코드 실행 결과를 NAS 폴더에 저장
🔧 준비: NAS에 공유 폴더 하나 만들기 (예: docker-scripts)
Synology DSM > 제어판 > 공유 폴더에서 다음처럼 하나 생성:
- 이름:
docker-scripts - 내부 경로 예:
/volume1/docker-scripts-> /volume2/backups/scripts를 사용하기로 함. - 이후 Python 코드 파일을 여기에 넣고 Docker 컨테이너에서 마운트해서 사용할 예정
✅ Step-by-Step: Docker CLI로 Python 컨테이너 실행
📥 1. Python 이미지 다운로드
sudo docker pull python:3.10
최신 안정 버전으로 3.10을 권장하지만, 필요 시 다른 버전도 가능 (
3.11,3.9등)
🗂 2. 예제 코드 파일 생성
/volume1/docker-scripts/test.py로 아래 코드를 저장하세요:
-> /volume2/backups/scripts에 저장
# test.py
import requests
from bs4 import BeautifulSoup
res = requests.get("https://example.com") # examples.com으로 변경해서 테스트
soup = BeautifulSoup(res.text, "html.parser")
print("Page title:", soup.title.string)
``
🚀 3. Docker 컨테이너 실행 (NAS 폴더 마운트)
sudo docker run -it --rm \
--dns=1.1.1.1 \
-v /volume2/backups/scripts:/app \
python:3.10 bash
이 명령은:
-it: 인터랙티브 터미널--rm: 실행 후 컨테이너 자동 삭제-v: NAS 공유 폴더 /volume2/backups/scripts 를 컨테이너 내부/app으로 마운트
🧪 4. 컨테이너 내부에서 실행
cd /app
pip install requests beautifulsoup4
python test.py
결과:
Page title: 403
✅ 잘 되었는지 확인 체크리스트
python:3.10이미지 다운로드 성공/volume1/docker-scripts/test.py파일 생성- Docker 컨테이너에서
/app/test.py실행 Page title:출력 확인
성공했다면 이제 Python 코드도 NAS에서 Docker로 돌릴 수 있게 된 거예요!
'Agentic Coding' 카테고리의 다른 글
| Cursor + OpenAI로 만드는 실습형 프로젝트: 뉴스 요약 다시 풀기 (3) | 2025.07.30 |
|---|---|
| GUI 없는 NAS에서 Selenium Docker로 단계별 도전기: 3, 4단계 (2) | 2025.07.23 |
| GUI 없는 NAS에서 Selenium? Docker로 단계별 도전기 (4) | 2025.07.09 |
| 앱 사용 이력을 정확히 추적하는 법: Android에서 UsageEvents 분석기 만들기 (3) | 2025.06.25 |
| AI 시대의 학습: 자비스와 간달프 사이에서 (5) | 2025.06.24 |
