コンテンツにスキップ
ステージングサーバー
開発サーバー

ハウツー: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

これにより、ホストシステムに接続されているすべてのBasler USBカメラがDockerコンテナ内でも表示されるようになります。

その後、作業を続行できます。実行するか: lsusb または、グラブサンプルをビルドして実行します。

ナレッジ記事に戻る