我试图用opencv创建一个docker图像以显示视频。我有以下Dockerfile:
FROM python:3
ADD testDocker_1.py /
ADD video1.mp4 /
RUN pip install opencv-python
CMD [ "python", "./testDocker_1.py" ]
以及以下python脚本:
import cv2
import os
if __name__ == '__main__':
file_path = './video1.mp4'
cap = cv2.VideoCapture(file_path)
ret, frame = cap.read()
while ret:
ret, frame = cap.read()
if ret:
cv2.imshow('Frame Docker', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
因此,首先,我构建图像:
$ sudo docker build -t test1 .
当我运行容器时,问题出现了:
$ sudo docker run -ti --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix test1
No protocol specified
: cannot connect to X server :1
问候
Kapil Khandelwal,你的解决方案对我有效。但仅在ubuntu上使用docker图像,当我尝试与windows共享它时,它不起作用
试试这个
虽然它可以解决这个特定的用例,但您需要注意以下几点:
Refrence
在here上有一个更好的推荐解决方案
相关问题 更多 >
编程相关推荐