hello

회사에서 Python 쓰는것이란.. (proxy, x509...)

Python 패키지를 외부 저장소(PyPI)에서 설치해야 하지만 내부망 환경에서
프록시 서버를 반드시 거쳐야 하는 경우, pip 설정 파일에 프록시 정보를 지정해야 한다.
OS별로 설정 파일의 위치와 이름이 다르므로 주의한다.


🪟 Windows 환경 설정

📁 1. pip 설정 디렉터리 생성

Windows에서 pip 설정 파일은 다음 경로에 위치한다.

%UserProfile%\AppData\Roaming\pip

예시:

C:\Users\jhl\AppData\Roaming\pip

탐색기에서 이동 방법

  1. 탐색기 주소창에 %UserProfile%\AppData\Roaming 입력
  2. Enter로 이동
  3. pip 폴더가 없으면 새로 생성

📝 2. pip.ini 파일 생성

pip 폴더 안에 pip.ini 파일을 생성하고 아래 내용을 삽입한다.

[global]
trusted-host = pypi.python.org
               pypi.org
               files.pythonhosted.org
proxy=http://12.34.56.78:8080

✔️ 파일명은 pip.ini (Linux와 다름)
✔️ trusted-host 설정은 내부망에서 SSL 관련 오류를 방지하는 목적


🐧 Linux 환경 설정

📁 1. pip 설정 디렉터리 생성

mkdir -p ~/.pip

📝 2. pip.conf 파일 생성

cat << EOF > ~/.pip/pip.conf
[global]
trusted-host = pypi.python.org
               pypi.org
               files.pythonhosted.org
proxy=http://12.34.56.78:8080
EOF

✔️ Linux에서는 파일명이 pip.conf
✔️ 사용자 계정별 설정이므로 root 계정은 따로 설정 필요


📝 추가 실무 팁

🔧 1. 시스템 전체 적용 경로

Windows:

C:\ProgramData\pip\pip.ini

Linux:

/etc/pip.conf

(관리자 권한 필요)


🔐 2. 인증 프록시 사용 시

proxy=http://username:[email protected]:8080

Linux에서는 파일 권한 보호 권장:

chmod 600 ~/.pip/pip.conf

🌐 3. 환경 변수로 임시 프록시 설정

Windows CMD

set HTTPS_PROXY=http://12.34.56.78:8080
set HTTP_PROXY=http://12.34.56.78:8080

Linux Bash

export HTTPS_PROXY=http://12.34.56.78:8080
export HTTP_PROXY=http://12.34.56.78:8080

🔍 4. 설정 확인

pip config list

또는 설치 테스트:

pip install requests -v

✅ 요약

  • Windows는 pip.ini, Linux는 pip.conf 사용
  • 내부망 환경에서는 trusted-host 설정이 중요
  • proxy 옵션으로 모든 pip 트래픽을 프록시로 우회
  • 인증 프록시, 환경 변수 등 확장 설정 가능

Read more

TCP 공부하기

TCP(전송 제어 프로토콜) 개요 TCP는 불안정한 네트워크 환경에서도 신뢰성 있고 순서가 보장된 데이터 전송을 가능하게 하는 핵심 인터넷 프로토콜이다. IP가 호스트 간 패킷 전달만을 담당한다면, TCP는 포트 기반 프로세스 간 통신, 오류 복구, 재전송, 순서 제어를 제공한다. 흐름 제어와 혼잡 제어를 통해 TCP는 수신 버퍼와 네트워크 대역폭의 고갈을 방지한다.

By JHL

우리가 알던 고전적 소프트웨어 엔지니어링은 죽었다

Product Engineering 시대와 AI 개발 패러다임 변화 1. 패러다임 변화: 코드 작성의 목적이 달라졌다 1972년 Dennis Ritchie가 C 언어를 발표한 이후, 소프트웨어 산업은 오랫동안 다음 요소에 집중해 왔다. * 코드 효율성 (시간·공간 복잡도) * 코드 길이 및 생산성 * 가독성과 유지보수성 그러나 AI 시대가 시작되면서 기존 패러다임이 근본적으로 변하고 있음. John Carmack은

By JHL

GitLab에서 제작한 GitOps 초보자 가이드

소개 소프트웨어 애플리케이션의 복잡도가 증가함에 따라 인프라에 대한 요구도도 함께 증가하고 있습니다. 인프라 팀은 다양한 서비스를 빠르고 안정적으로 제공해야 하지만, 인프라 구축은 여전히 수동 프로세스에 의존하는 경우가 많습니다. 이 문제를 해결하기 위한 핵심 접근 방식이 인프라 자동화이며, 그중 하나가 GitOps입니다. 1. 인프라 자동화의 필요성 * 애플리케이션 개발은 CI/CD로 자동화되었지만 인프라

By JHL