티스토리 뷰
아무것도 설치하지 않은 윈도우 11환경에서 시작한다.
파이썬이 기본 설치 되어 있어야 한다.
기왕이면 파이썬도 설치되고 가상환경까지 한꺼번에 관리할수 있는 '미니콘다' 를 설치하도록 한다.
(미니콘다? 원래는 '아나콘다' 라는 파이썬 가상환경 및 패키지 관리 배포판인데 덩치가 크고 안쓰는 패키지까지 너무 많이 설치된다. 이와는 달리 최소한의 필수 요소만 가진 가벼운 프로젝트로 나온게 '미니콘다' 이다)
# 미니콘다 설치
아래 최신버젼 링크를 참고하여 다운 받도록 하자.
https://docs.conda.io/en/latest/miniconda.html#latest-miniconda-installer-links
현재 시점의 최신버젼인 Miniconda3 windows 64bit (Conda 4.11.0 Python 3.9.7 released February 15, 2022) 버젼을 받도록 하겠다.
설치를 시작하면 Install for Just Me, All Users 중 Just Me를 추천한다.
All users로 선택할경우 향후 작업시 관리자 권한을 계속 요구해서 불편하다. 어차피 윈도우는 단일 계정으로 많이들 쓰니 Just Me로 해도 문제가 되진 않을것이다.
설치위치 경로에 한글,특수문자,공백이 들어가지 않도록 해야한다.
Advanced Options 는 그대로 진행한다.
설치 완료후, 별도 환경변수 등록
윈도우 검색창에 '환경'을 검색하여 '계정의 환경 변수 편집' 진입
(직접 찾아갈땐 고급 시스템 설정 > 시스템속성창 > 3번째 고급탭 > 맨하단 환경변수 버튼 이다)
상단 윈도우 유저명에 대한 사용변수중 path 변수 선택 > 편집 버튼 > 새로운 라인에 C:\Users\OOOO\miniconda3\Scripts 추가 > 확인
이제 콘솔(터미널)만 띄우면 어느 경로에 있던 conda 명령어 사용 가능
- conda 명령어 참고 (환경변수까지 적용되었으면 터미널을 열어 테스트 해보자)
# 현재 conda 버전 확인
conda --version
# conda 업데이트
conda update conda
# 기존 가상 환경 확인
conda env list
# 현재 환경에서 설치된 패키지 확인
conda list
# 가상환경 생성. 가급적 python 버전은 명시하자
conda create -n [환경 이름] python=3.6
# base 환경에 깔린 의존성 설치하면서 환경 생성
conda create -n [환경 이름] --clone base
# environment.yml 있으면 참고해서 환경 생성
conda env create -f environment.yml
# 가상환경 활성화/비활성화
conda activate [환경 이름]
conda deactivate
# 가상환경 삭제, env를 적으면 가상환경을 삭제, 안 적으면 패키지 삭제.
conda env remove -n [환경 이름]
# 현재 환경에서 패키지 설치
conda install seaborn
# 패키지 여러개 설치
conda install numpy pandas
# 현재 환경의 패키지 목록을 environment.yml로 생성. requirements.txt 대신 사용 가능
conda env export > environment.yml
# 주피터랩 설치
## 가상환경 생성
터미널(명령 프롬프트, powershell, Windows Terminal 등 윈도우 검색창에서 검색하여 실행)을 열고 새로운 파이썬 가상환경을 생성한다. 여기서는 jupyterlab 이라는 가상환경을 만들고, 파이썬 버전은 3.9.7로 명시했다.
conda create -n jupyterlab python=3.9.7
에러가 났다?!?!
Collecting package metadata (current_repodata.json): failed
CondaHTTPError: HTTP 000 CONNECTION FAILED for url
<https://repo.anaconda.com/pkgs/main/win-64/current_repodata.json>
Elapsed: -
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
SSL 관련 이슈다. 관련하여 여러가지 해결방법을 제시한 자료들을 찾아보았지만 다 삽질이고 궁극적인 해결책은 아래와 같았다. (현재 시점과 현재 환경 기준)
사용된 경로나 파일 모두 설치된 미니콘다 안에 원래 있는것들이니 폴더를 추가로 만들거나 하지 말자.
1. "미니콘다 설치경로/Library/bin/" 으로 이동
2. 아래 파일들 4개 복사
libcrypto-1_1-x64.dll
libssl-1_1-x64.dll
libcrypto-1_1-x64.pdb
libssl-1_1-x64.pdb
3. "미니콘다 설치경로/DLLs/" 에 붙여넣기
이제 정상적으로 가상환경이 생성되었다.
## 가상환경 활성화
conda activate jupyterlab
에러가 났다?!?!
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If using 'conda activate' from a batch script, change your
invocation to 'CALL conda.bat activate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
- cmd.exe
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
역시 삽질후 윈도우 실행 정책을 추가해야 된다는것을 발견. 아래 명령어로 정책을 추가해주자.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
실행 정책 추가후 아무 반응은 없지만 추가는 된것이다.
확인 명령어는 아래와 같다. 결과가 RemoteSigned로 나오면 된다. (원래는 Undefined 였을것이다)
Get-ExecutionPolicy -Scope CurrentUser
다음은 conda init을 해준다. 몇가지 스크립트 파일이 modified 된다.
conda init
다음, 반드시 터미널을 종료하고 다시 실행하자.
이제 기본적으로 base 가상환경이 떠 있는걸 볼수있다. (아.. 그래 이게 정상이지)
conda init와 실행 정책 추가는 순서가 있진 않은것 같다.
가상환경 활성화를 다시 시도하면 이제 성공적으로 활성화가 된다.
## jupyterlab 설치
conda 나 pip 명령어로 jupyterlab을 설치한다.
pip install jupyterlab
혹은
conda install jupyterlab
필수적으로 필요한 패키지가 있을경우 아래와 같이 한꺼번에 추가로 설치해도 좋다.
conda install jupyterlab numpy pandas matplotlib requests beautifulsoup4 selenium
Jupyterlab(주피터랩)을 실행해보자.
jupyter lab
주피터 랩이 실행되고, 바로 이어 브라우저가 열리면서 주피터랩 서비스를 바로 이용할수 있다.
실행중인 주피터랩을 종료하려면 주피터랩이 열린 브라우저를 닫고 터미널에서 Ctrl+C를 두번 눌러 종료한다.
일단 성공적으로 주피터랩 서버가 작동하는것을 확인했다.
## 서버환경 만들기
이제 상시 서버로서 기능할수 있도록 환경을 만들어보자.
서버 환경설정 파일을 생성하는 명령어를 실행하자.
jupyter lab --generate-config
생성된 환경설정 파일은 C:\Users\OOOO\.jupyter\jupyter_notebook_config.py 로 존재한다.
에디터로 열어보면 기본 옵션들을 조정할수 있도록 항목별 예와 주석처리가 잘 되어있다.
중요한 옵션만 살펴본다. 활성화 시킬때는 옵션값을 넣고 주석 #을 제거해야한다.
c.ServerApp.open_browser = ?
주피터랩 서버가 실행될 때 브라우저가 자동으로 실행되게 할지 결정, True 혹은 False로 셋팅
c.ServerApp.ip = ?
주피터랩 서버 IP를 설정한다. 로컬로만 사용한다면 localhost, 내부 네트워크용이면 192.168.0.5 등의 사설IP, 외부에서도 접속할수 있게 하려면 공인IP를 써야한다. (이경우 네트워크 공유기의 포트포워딩등 설정이 추가적으로 필요하다)
c.ServerApp.port = ?
서버 접속 포트, 기본값은 8888이고 변경 가능하다.
c.ServerApp.allow_origin = ?
접속 권한이 있는 IP대역을 지정하거나 거부할수 있다. 192.168.0.0/16 등으로 제한한 IP를 입력하거나 *을 입력하면 어느곳에서의 접속도 모두 허용한다.
c.ServerApp.password = 'OOO'
서버 접속에 고정 패스워드를 등록하여 사용할수 있다. 고정 패스워드가 없을경우 서버가 실행될때마다 새로운 토큰값이 서버실행후 뿌려진다. 해당 토큰값을 입력해야 접속할수 있다. (불편)
<패스워드 실제 적용 : 아래와 같은 스크립트를 추가하여 사용한다.>
from notebook.auth import passwd
password = passwd('자신이 원하는 비밀번호')
c.ServerApp.password = password
c.ServerApp.root_dir = 'OOO'
주피터랩 서비스 접속후 처음보여지는 프로젝트 경로 (파일 저장 위치) 'D:\jupyter_proj' 등으로 세팅
'Python' 카테고리의 다른 글
pycharm IDE 환경 'Global variable *** is undefined at the module level' 경고 처리 (0) | 2022.07.21 |
---|---|
pycharm IDE 환경 경고 : Method *** may be 'static' 처리 (0) | 2022.07.20 |
pyqt5 사용하자마자 만나는 Parameter 'flags' unfilled 경고 (0) | 2022.07.20 |
windows jupyterlab (주피터랩) 서버 실행시 느닷없는 오류 (2) | 2022.06.04 |
jupyterlab (주피터랩) 소스 폴딩, 기타 옵션 (익스텐션 X) (0) | 2022.05.03 |