주요 기본 환경 설정은 Windows 11 WSL2 이용한 SSH & RStudio Server 설치 및 내·외부에서 접속 글을 참고하면 되며 추가로 아래와 같은 내용 역시도 참고했다.
- 우분투 20.04에서 Jupyter Notebook 사용법: Web browser에서 Python 개발 환경 구축
- Jupyter Notebook을 원격으로 접속하기
- jupyter notebook 원격 접속 설정
상기 추가 참고한 내용과 실제 설치를 위해 경험한 내용을 순서대로 요약하면 다음과 같다.
- WSL2 터미널 실행
sudo apt install python3-pip
입력
입력sudopip3 install jupyterjupyter --version
입력 후 ‘not installed
‘ 설치 여부 판단, 본인의 경우jupyter_server
와jupyterlab
혹시 몰라 추가 설치 후 진행- 설치 중
ERROR: nbconvert 6.5.0 has requirement jinja2>=3.0, but you'll have jinja2 2.10.1 which is incompatible.
확인 시
입력으로 해결sudopip3 install nbconvert - 설치 중
ERROR: jupyterlab-server 2.14.0 has requirement jinja2>=3.0.3, but you'll have jinja2 2.10.1 which is incompatible.
확인 시
입력으로 해결sudopip3 install jupyterlab-server
- 설치 중
jupyter --version
&jupyter --help
각각 입력하여 버전 및 명령 구문 확인jupyter-notebook
입력- 내부 브라우저에서
http://localhost:8888
또는http://127.0.0.1:8888
입력하여 접속 여부 확인 ⇒ 아래와 같은 화면이 나올 경우 내부 접속 성공!!!
Ctrl-C
입력 후y
클릭하여 서버 중지jupyter-notebook --generate-config
입력하여 configuration 파일 생성, 본인의 경우/home/<사용자 계정>/.jupyter/jupyter_notebook_config.py
생성ipython
입력from notebook.auth import passwdfrom jupyter_server.auth import passwd
입력passwd()
입력Enter password:
WSL2 생성 시 입력했던 암호 입력Verify password:
부분에Enter password:
입력했던 암호와 동일한 암호 입력- 작은 따옴표 (”) 사이의 암호값 복사, 본인의 경우
argon2:어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구
생성 quit()
입력
mkdir jupyter
입력하여 작업 경로에 해당하는 디렉토리 생성vi /home/<사용자 계정>/.jupyter/jupyter_notebook_config.py
입력 후 아래와 같이 설정값들을 수정- from
# c.NotebookApp.allow_origin = ''# c.ServerApp.allow_origin = ''
toc.NotebookApp.allow_origin = '*' # 외부 접속 허용c.ServerApp.allow_origin = '*' # 외부 접속 허용
- from
# c.NotebookApp.notebook_dir = ''# c.ServerApp.root_dir = ''
toc.NotebookApp.notebook_dir = '/home/<사용자 계정>/jupyter/' # 작업 경로 설정
c.ServerApp.root_dir = '/home/<사용자 계정>/Documents/<폴더>/jupyter/' # 작업 경로 설정
- from
# c.NotebookApp.ip = 'localhost'# c.ServerApp.ip = 'localhost'
toc.NotebookApp.ip = '*' # 외부 접속 IP 전체 오픈c.ServerApp.ip = '*' # 외부 접속 IP 전체 오픈
- from
# c.NotebookApp.port = 8888
# c.ServerApp.port = 0
toc.NotebookApp.port = 8888 # 외부 접속 포트 지정c.ServerApp.port = 8888 # 외부 접속 포트 지정
- from
# c.NotebookApp.password = ''# c.ServerApp.password = ''
toc.NotebookApp.password = 'argon2:어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구'c.PasswordIdentityProvider.hashed_password = 'argon2:어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구어쩌구저쩌구'
⇒ 10.v.에서 생성된 비밀번호 입력 - from
# c.NotebookApp.password_required = False# c.ServerApp.password_required = False
toc.NotebookApp.password_required = True # 비밀번호 요구c.PasswordIdentityProvider.password_required = True # 비밀번호 요구
- from
# c.NotebookApp.open_browser = True# c.ServerApp.open_browser = False
toc.NotebookApp.open_browser = False # 서버 PC에서 자동으로 브라우저가 열리지 않도록 설정c.ServerApp.open_browser = False # 서버 PC에서 자동으로 브라우저가 열리지 않도록 설정
- from
- Windows 11 WSL2 이용한 SSH & RStudio Server 설치 및 내·외부에서 접속 글의 wsl2-connect-external.ps1 파일과 autostart_ubuntu.bat 파일 각각에 아래 내용 추가
- wsl2-connect-external.ps1:
#[Ports]
부분$ports=@(8787,원하는PortNumber1,원하는PortNumber2,..., 8888);
포트 번호 8888 추가 - autostart_ubuntu.bat: 맨 마지막 행에
wsl -u <사용자 계정> -- jupyter notebook
추가
- wsl2-connect-external.ps1:
jupyter-notebook
입력하여 서버 재실행, 혹은nohup jupyter-notebook &
입력 후Enter
입력- 아래와 같이 접속이 되면 외부 접속까지 성공!!!
- Password 부분에는 10.iii.과 10.iv.에서 생성하고 확인한 비밀번호 입력
※ 공유기 내 특정 PC와 연결하고 싶을 경우에는 공유기에서 Port Forwading 설정이 필요하다는 사실은 비밀!