मैंने एक ऐप डॉकराइज्ड किया है जिसमें libav-tools के माध्यम से ffmpeg इंस्टॉल किया गया है। ऐप बिना किसी समस्या के लॉन्च करता है, फिर भी समस्या तब होती है जब धाराप्रवाह-ffmpeg npm मॉड्यूल ffmpeg कमांड निष्पादित करने का प्रयास करता था, जो नहीं मिला था। जब मैं ffmpeg का संस्करण और छवि में लिनक्स डिस्ट्रो सेट अप करना चाहता था, तो मैंने sudo docker exec -it c44f29d30753 "lsb_release -a"
कमांड का उपयोग किया, लेकिन यह निम्न त्रुटि दी : OCI runtime exec failed: exec failed: container_linux.go:296: starting container process caused "exec: \"lsb_release -a\": executable file not found in $PATH": unknown
तब मुझे एहसास हुआ कि यह मेरे सभी आदेशों कि मैं छवि या कंटेनर के अंदर चलाने का प्रयास के साथ एक ही त्रुटि देता है
OCI runtime exec failed: exec failed: container_linux.go:296: starting container process caused "exec: \"ffmpeg -a\": executable file not found in $PATH": unknown
।
यह मेरा Dockerfile है:
FROM ubuntu:xenial
FROM node
RUN apt-get -y update
RUN apt-get --yes install libav-tools
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app
RUN npm install
COPY . /usr/src/app
RUN npm run build
ENV NODE_ENV production
EXPOSE 8000
CMD ["npm", "run", "start:prod"]
मैं कृपया आपकी मदद के लिए पूछना होगा। आपका बहुत बहुत धन्यवाद!
अपने कंटेनर को 'डॉकर रन - आरएम -टीआई-इमेज-नेम sh' के साथ दर्ज करने का प्रयास करें और अपना निष्पादन योग्य ढूंढें। यह शायद केवल एक पथ समस्या है (निर्देशिका जहां आपका निष्पादन योग्य रखा गया है कंटेनर के अंदर जड़ के रूट में नहीं है) – whites11
मैंने आपके द्वारा अनुशंसित आदेश के साथ कंटेनर दर्ज किया है। समस्या यह है कि जब मैं 'ftpeg इंस्टॉल करें' करने का प्रयास करता हूं, तो परिणाम यह है: 'पैकेज ffmpeg उपलब्ध नहीं है, लेकिन इसे किसी अन्य पैकेज द्वारा संदर्भित किया जाता है। इसका मतलब यह हो सकता है कि पैकेज गुम है, अप्रचलित किया गया है, या केवल अन्य स्रोत ई से उपलब्ध है: पैकेज 'ffmpeg' में कोई इंस्टॉलेशन उम्मीदवार नहीं है। हालांकि मैं अपने उबंटू 16.04 ओएस में एक ही पैकेज प्राप्त कर सकता हूं। कंटेनर में ओएस के साथ कुछ गलत हो सकता है? –
क्या आपने 'apt-get update' चलाया था? – whites11