2017-02-10 2 views
0

도커 컨테이너에서 우분투 14.04를 실행하고 opencv를 설치했습니다. 실행될 때마다 여기에 설명 된대로 다음 오류를 수신합니다. OpenCV: libdc1394 error: Failed to initialize libdc1394. 내가열린 CV 오류가 초기화되지 않았습니다. raw1394 도커에서 지속됩니다.

같은 것을 실행하면 내 고정 표시기 파일에

RUN ln /dev/null /dev/raw1394 

이 경우에도 장치 파일을/dev/null을 연결하는 기술은 작동하는 것 같다,하지만 고정 표시기 컨테이너의 지속하지 않고,

docker-compose run <container> bash 

해당 세션에서 오류가 지속됩니다. 이 오류 메시지를 제거 할 수있는 도커 파일에 어떤 줄을 추가 할 수 있습니까?

답변

1

/dev이 도커 이미지의 일부가 아니기 때문에 Dockerfile에서 ln /dev/null /dev/raw1394을 실행하면 도움이되지 않습니다. volume mount을 추가하면 문제를 해결할 수 있습니다. 예를 들어 Dockerfiledocker-compose.yml은 다음과 같습니다.

[[email protected] ~]$ cat Dockerfile 
FROM ubuntu:14.04 
RUN apt-get update && \ 
    apt-get install -y \ 
     libdc1394-22-dev \ 
     libdc1394-22 \ 
     libdc1394-utils \ 
     python-opencv && \ 
    rm -rf /var/lib/apt/lists/* 

[[email protected] ~]$ cat docker-compose.yml 
version: '2' 
services: 
    opencv: 
    build: . 
    command: python -c "import cv2; print cv2.__version__" 
    volumes: 
     - /dev/null:/dev/raw1394 

[[email protected] ~]$ sudo docker-compose up 
Recreating fedora_opencv_1 
Attaching to fedora_opencv_1 
opencv_1 | 2.4.8 
fedora_opencv_1 exited with code 0 
관련 문제