본문 바로가기

System Software

python-iperf3 Ubuntu 20.04 환경에서 구동하기 위한 컨테이너 이미지 생성하기

반응형

먼저 docker registry 설치를 해줘야 된다.

$ docker pull registry

 

 

 

다음과 같은 오류 문구가 나왔다. 호스트 머신의 포트 5000번이 이미 쓰이고 있어서 생긴 문제였다. 

docker rm 명령어를 통해 이미 사용하고 있던 도커를 지워주었다. 

 

아뿔싸! 준비된 도커파일이 없었다. 디렉토리를 바꾸어 도커파일을 만들어주었다.

# Ubuntu 이미지를 기반으로 하는 도커파일.
FROM ubuntu:latest

# 컨테이너가 시작될 때 실행될 명령어를 정해줌.
CMD ["echo", "Hello, taeng-develop readers!"]

 

 

 

 

도커 파일을 기반으로 생성된 이미지를 private registry에 push가 되는 것을 알 수 있다.(두번 실행하니 5000가 사용중이게 되어, 5001번 포트로 변경하였다.)

 

 

 


본격적으로 server.py client.py   Ubuntu 20.04 에서 실행하기 위한 도커파일을 만들었다.

각기 다른 도커 이미지를 생성하는 것이 원칙이나, 빠른 실행을 위해 하나의 도커파일에 정의를 하였다.

 

# 기본 이미지로 Ubuntu 20.04를 사용합니다.
FROM ubuntu:20.04

# 필수 패키지 설치 및 Python3와 pip 설치
RUN apt-get update && \
    apt-get install -y python3 python3-pip iperf3 && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# 작업 디렉토리 설정
WORKDIR /app

# 현재 디렉토리의 모든 파일을 컨테이너의 /app으로 복사
COPY . /app


RUN pip3 install iperf3


# 서버 실행 명령어. 필요에 따라 수정하세요.
CMD ["python3", "server.py"]

 

docker buildx build --platform linux/amd64 -t 127.0.0.1:5001/iperf3 -f server-dockerfile --push .

 

파일을 빌드를 해주었다.

 

컨테이너 실행 후

python3 server.py --ip 192.168.0.1

 

 

명령어를 입력하니 다음글이 나오고 있다. 클라이언트와 다른 컨테이너 파일에서 실행해서 그런듯하다.

 

반응형