devpi 명령어 모음
실행 위치 참고
- 🤖 : devpi 가 설치된 서버
- 🧑💻 : 사용자. devpi 로 패키지 설치 요청을 보내는 클라이언트
devpi-server
- 🤖 devpi-server 레지스트리 디렉터리 초기화
1
2
| devpi-init [--serverdir /레지스트리/경로]
# 경로를 지정하지 않으면 자신의 home 아래에 생성된다.
|
1
| devpi-server [--host=0.0.0.0 --port 3141 --serverdir /레지스트리/경로]
|
devpi-client
- 🧑💻 devpi-client 에서 특정 devpi-server 사용
1
| devpi use http://{HOST}:{PORT}
|
- 🧑💻 devpi-client 에서 특정 인덱스 사용
1
| devpi use {new_user_name}/{new_index_name}
|
사용자(user) 관리
1
| devpi user -c {user_name} password={password}
|
1
| devpi login {user_name} --password={password}
|
인덱스(Index) 관리
1
2
3
4
5
6
| devpi index -c dev [\
bases=root/pypi \
volatile=True \
acl_upload=dev1,dev2 \
mirror_whitelist=requests,numpy \
mirror_whitelist_inheritance=intersection]
|
- 🤖🧑💻 서버에 존재하는 사용 가능한 인덱스 리스트 확인 (전체)
1
| devpi getjson /{user_name}/{index_name}
|
1
| devpi index /{user_name}/{index_name} 설정항목1=설정값1 [설정학목2=설정값2 ...]
|
1
| devpi index --delete /{user_name}/{index_name}
|
패키지
1
| devpi install pandas <패키지명1> [<패키지명2> <패키지명3> ...]
|
- 🧑💻 pip 로 devpi-server 패키지 설치
1
2
| pip install --index-url http://{HOST}:{PORT}/{user}/{index} \
<패키지명1> [<패키지명2> <패키지명3> ...]
|
1
| devpi upload [--formats=bdist_wheel,sdist.tgz]
|
- 🧑💻 릴리즈(패키지) wheel 파일 업로드
1
| devpi upload dist/*.whl
|
1
| devpi remove <패키지 이름>==<버전>
|
devpi-server 내보내기와 가져오기
1
| devpi-export <export 결과 데이터를 저장할 디렉터리>
|
| 옵션 |
명칭 |
설명 |
-c, --configfile |
설정 파일 |
- devpi-server 실행시 사용하던 설정 파일 지정 - 서버를 config 기반으로 운영 중이라면 지정하는 걸 권장 |
--serverdir |
devpi-server 데이터 경로 |
- devpi-server 데이터가 저장된 실제 경로 - devpi-server 실행시 별도로 server-dir을 지정한 경우 사용 |
--storage |
저장소 백엔드 |
- 대부분 기본값(sqlite) 사용 - sqlite 혹은 pg8000 사용 가능 |
--include-mirrored-files |
PyPI 미러 패키지 포함 여부 |
- PyPI 미러에서 다운로드 된 패키지 파일까지 포함할지 - 옵션을 사용하면 미러 패키지까지 추출 |
--hard-links |
파일 복사 대신 하드 링크 |
- 파일 복사 대신 하드링크 사용 - 같은 파일시스템에서만 가능 - 백업 용량 감소, 하지만 위험성 있음 |
1
| devpi-import <export 결과가 저장된 디렉터리>
|
| 옵션 |
명칭 |
설명 |
-c, --configfile |
설정 파일 |
- devpi-server 실행 시 사용할 설정 파일을 지정 |
--serverdir |
devpi-server 데이터 경로 |
- 새 devpi-server 인스턴스의 데이터가 생성될 경로를 지정 - 기존 데이터가 없는 빈 디렉터리여야 안전 |
--storage |
저장소 백엔드 |
- export 당시 사용한 storage 타입과 동일하게 지정 - sqlite 또는 pg8000 |
--no-root-pypi |
root/pypi 생성 여부 |
- 서버 초기화 시 기본으로 생성되는 root/pypi 인덱스를 생성하지 않는 옵션 - export 데이터에 이미 존재하는 경우 중복 생성을 방지 |
--root-passwd |
root 초기 비밀번호 |
- import 시 root 계정의 초기 비밀번호를 설정 |
--root-passwd-hash |
root 비밀번호 해시 |
- 평문 대신 해시된 비밀번호를 지정 |
--skip-import-type |
특정 인덱스 타입 제외 |
- 지정한 인덱스 타입을 import 대상에서 제외 |
--no-events |
이벤트 실행 지연 |
- import 중 이벤트 실행을 생략하고 서버 기동 후 처리 |
--hard-links |
파일 복사 대신 하드 링크 |
- 파일 복사 대신 하드 링크를 사용 - export 시 해당 옵션을 사용했다면 import 시에도 동일하게 지정 - 동일 파일시스템에서만 가능 - 운영상 위험성이 있음 |
Reference
devpi-stable Documentation
Comments