1. 서론
인공지능(AI)과 머신러닝(ML) 분야의 급속한 발전으로 인해 많은 데이터 과학자와 개발자들은 Jupyter Notebook을
사용하여 모델을 개발하고 훈련하려고 합니다. Jupyter Notebook은 코드 작성, 데이터 분석, 시각화 등을 쉽고
직관적으로 할 수 있는 웹 애플리케이션입니다. 이 글에서는 Ubuntu 서버에 Jupyter Notebook을 설치하고
설정하는 방법에 대해 자세히 설명하겠습니다. 이를 통해 원격에서 쉽게 모델을 개발하고 훈련할 수 있는
환경을 구축할 수 있습니다.
2. 서버 준비
먼저, 우분투 서버를 준비합니다. 이 서버는 AWS EC2, DigitalOcean, Google Cloud Platform 등 다양한
클라우드 제공업체에서 생성할 수 있습니다. 기본적으로 요구되는 시스템 사양은 다음과 같습니다.
- 운영 체제: Ubuntu 20.04 LTS 이상
- 메모리: 4GB 이상
- CPU: 2코어 이상
- 디스크: 최소 20GB 이상
3. 패키지 업데이트
서버에 접속한 후, 항상 최신 상태로 유지하는 것이 좋습니다. 다음 명령어를 사용하여 패키지를 업데이트합니다:
sudo apt update && sudo apt upgrade -y
4. Python과 pip 설치
Jupyter Notebook은 Python3 기반이므로, Python과 패키지 관리자인 pip을 설치해야 합니다. 다음 명령어를 사용합니다:
sudo apt install python3 python3-pip -y
5. 가상 환경 설정
가상 환경은 프로젝트마다 독립적인 패키지를 유지할 수 있도록 도와줍니다. venv
라는 모듈을
사용하여 가상 환경을 설정합니다:
python3 -m venv jupyter_env
가상 환경을 활성화하려면 아래 명령어를 입력합니다:
source jupyter_env/bin/activate
6. Jupyter Notebook 설치
가상 환경이 활성화된 상태에서 Jupyter Notebook을 설치합니다:
pip install jupyter
7. Jupyter Notebook 설정
설정 파일을 생성하여 Jupyter Notebook을 구성합니다:
jupyter notebook --generate-config
위 명령어로 생성된 설정 파일은 ~/.jupyter/jupyter_notebook_config.py
에 위치합니다. 이 파일을
편집하여 원격 접속을 허용하고, 비밀번호를 설정합니다. 편집하려면 다음 명령어를 사용합니다:
nano ~/.jupyter/jupyter_notebook_config.py
다음과 같은 설정을 추가합니다:
# Jupyter Notebook의 IP 주소를 0.0.0.0으로 설정 (모든 IP 허용)
c.NotebookApp.ip = '0.0.0.0'
# 포트 설정 (기본값은 8888)
c.NotebookApp.port = 8888
# 비밀번호 설정 (암호화된 비밀번호를 사용)
c.NotebookApp.password = '이곳에_비밀번호를_입력하세요'
# Notebook을 자동으로 열지 않기
c.NotebookApp.open_browser = False
# 원격 접속 허용
c.NotebookApp.allow_remote_access = True
8. Jupyter Notebook 시작하기
Jupyter Notebook을 시작하려면 다음 명령어를 사용합니다:
jupyter notebook
이제 웹 브라우저에서 http://<서버_IP>:8888
주소로 접속하여 Jupyter Notebook에 로그인할 수 있습니다.
이전 단계에서 설정한 비밀번호를 입력하면 사용 가능합니다.
9. 추가 보안 설정
원격에서 Jupyter Notebook에 접속할 때 보안을 강화하기 위해 SSL을 설정하는 것이 좋습니다.
SSL 인증서를 구매하거나 무료 서비스인 Let’s Encrypt를 사용할 수 있습니다. SSL 인증서를 설정한 후
jupyter_notebook_config.py
파일에 다음과 같은 설정을 추가합니다:
# SSL 인증서 및 키 파일 경로
c.NotebookApp.certfile = u'/etc/letsencrypt/live/yourdomain/cert.pem'
c.NotebookApp.keyfile = u'/etc/letsencrypt/live/yourdomain/privkey.pem'
10. 결론
이제 우분투 서버에 Jupyter Notebook을 성공적으로 설치하고 설정했습니다. 원격에서 AI 모델을 개발하고
훈련하기 위한 완벽한 환경이 마련되었습니다. Jupyter Notebook은 다양한 패키지와 라이브러리와 결합하여 더
나은 개발 환경을 제공합니다. 이 서버를 통해 데이터를 분석하고 머신러닝 모델을 훈련하는 작업을 손쉽게
할 수 있습니다. 앞으로 더 많은 프로젝트와 연구에 이 서버를 활용하시길 바랍니다!