콘텐츠로 바로 가기
STAGING SERVER
DEVELOPMENT SERVER

방법: Docker 컨테이너에서 Basler USB 카메라 사용하기#

다음 문서는 사용자가 Docker 설치 및 Docker 명령어에 익숙하다고 가정합니다.

당사에서 사용하는 구성은 다음과 같습니다:

  • 호스트 OS: Ubuntu 20.04 및 pylon 6.2
  • 게스트 OS: Ubuntu 20.04 및 pylon 6.2

진행 방법:

  1. 호스트 시스템에 원하는 디렉터리를 생성합니다(예: /home/user/dockerImage).
  2. 다음 텍스트를 이름으로 하는 파일로 저장합니다. Dockerfile 위 디렉터리에 저장합니다:
    FROM ubuntu:20.04
    LABEL maintainer="s.mathimugan@baslerweb.com"
    LABEL version="0.1"
    LABEL description="This is custom Docker Image"
    
    RUN apt-get update && apt-get install build-essential  locales-all joe vim -y
    RUN apt-get install dialog apt-utils  usbutils -y
    
    ARG USERNAME=dev
    
    ARG PUID=1000
    
    ARG PGID=1000
    
    RUN groupadd -g ${PGID} ${USERNAME} \
                && useradd -u ${PUID} -g ${USERNAME} -d /home/${USERNAME} ${USERNAME} \
                && mkdir /home/${USERNAME} \
                && chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}
    
    ENV DIR=/home/imcome
    RUN echo $DIR
    
    RUN mkdir -p ${DIR} && \
              chmod +r ${DIR}
    
    COPY *.deb ${DIR}
    
    VOLUME [${DIR}]
    
    WORKDIR ${DIR}
    RUN dpkg -i ${DIR}/pylon*.deb
    
    CMD "/bin/bash"
    
  3. pylon Debian 패키지를 다운로드하여 이 디렉터리에 저장합니다.
  4. 터미널을 열고 해당 디렉터리로 이동한 후 다음 명령어를 실행하여 공개 Ubuntu 20.04 이미지를 기반으로 Docker 이미지를 생성합니다:

    sudo docker build -t pylon .

    이 명령어는 또한 Docker 이미지에 pylon을 설치합니다.

  5. 다음 명령어를 사용하여 새로 빌드된 이미지를 실행합니다:

    sudo docker run -ti -v '/dev/bus/usb':'/dev/bus/usb' --privileged -e DISPLAY=$DISPLAY -v '/tmp/.X11-unix':'/tmp/.X11-unix' pylon

이제 Docker 컨테이너에서도 호스트 시스템에 연결된 모든 Basler USB 카메라를 확인할 수 있습니다.

이어서 작업을 진행할 수 있습니다. 실행 lsusb 또는 grab 샘플을 빌드하여 실행합니다.

기술 자료로 돌아가기