TWOMONUSB

Category
아이템: TWOMONUSB(7)
포스트 갯수7

[Ubuntu] docker 이미지 build 시 DNS resolve 문제

By 지훈현서 | 2020년 11월 29일 | 
Ubuntu 18.04 Desktop 버전에서 docker 를 설치하고,배치 작업으로 apt-get install 작업을 하려고 하는데, 위와 같이 "Temporary failure resolving 'deb.debian.org'" 와 같은 오류가 나옵니다.분명히 우분투 안에서는 아무런 이상이 없습니다. 구글링을 해 보니, $ docker run busybox nslookup google.comUnable to find image 'busybox:latest' locallylatest: Pulling from library/busybox5f5dd3e95e9f: Pull completeDigest: sha256:9f1c79411e054199210b4d489ae600a061595967adb643cd923f

[Python] subprocess 실행 시 timeout 적용하기

By 지훈현서 | 2020년 11월 22일 | 
파이썬으로 다른 서브프로세스를 실행시킬 때 지금껏 12년 동안, subprocess.Popen(...)을 이용하여 왔었습니다. 그런데 만약 이 프로세스를 돌리다가 별도 timeout을 지정하고 싶다는 생각을 했는데 Popen 자체에는 해당 timeout 을 지정하는 곳이 없습니다. 대신, proc = subprocess.Popen(...)try: outs, errs = proc.communicate(timeout=5)except TimeoutExpired: proc.kill() outs, errs = proc.communicate() 또는 proc = subprocess.Popen(...)try: proc.wait(timeout=5)except TimeoutExpired:

[윈도우] 특정 포트 (UDP 포함) 가 열려 있는지 체크

By 지훈현서 | 2020년 11월 16일 | 
지금까지 일반적으로 리눅스 등에서는 netcat 명령을 이용하여 특정 TCP 포트가 열려있는지 체크 했었습니다. 위와 같이 nc 명령 다음에 -zv 옵션을 주고 IP 주소와 포트 번호를 주면 해당 포트가 열려있는지 조사하여결과를 알려줍니다. -u 옵션을 더 주면 TCP 대신 UDP 를 스캔합니다. nc -zuv 10.211.55.28 161위 명령은 10.211.55.28 호스트에 161 UDP포트 (SNMP) 가 떠 있는지 확인하는 것입니다. 일반적인 batch 파일에서는 $? 로 수행 결과가 0 이면 성공 아니면 실패라고 인식하고 진행합니다. 물론 윈도우용 netcat 을 다운받아 CMD.EXE에서 해 보았습니다만, 두번 인가 돌리고 나서는 윈도우 디펜더가 자동으로 해당 nc.exe를 지워버리더

[Python] SOAP 서비스를 간편하게

By 지훈현서 | 2020년 11월 11일 | 
30년 전도 전에 처음 개발을 시작할 당시,서로 다른 두 대의 시스템에서 원격호출을 할 때는 ON C RPC를 이용했었습니다.MS의 DCE RPC 이후 COM, COM+ 등이 나왔고,그 이후 CORBA가 나오기도 했었지요.한참 세월이 흐르고 Web이 대세가 된 다음 SOAP 이 원격 호출로 대세를 이루었습니다. 요즘이야 JSON으로 주고 받는 RESTful API 가 대세이지만, 바로 그 이전 서비스들은이 SOAP로 되어 있는 것들이 많습니다. 특히 JSON 대신 XML 로 자료를 주고받고,스키마는 wsdl 로 정의되어 있지요. 몇년 전에 이 SOAP 을 파이썬에서 이용하기 위해서 약 10년도 더 된모듈을 까다롭게 이용했던 것 같은데, 최근에 살펴보니,zeep 이라는 아주 편하고 잘 정의된 SOAP 이용