windows - 创建新图像时无法在 docker 中 cd 到 /
问题描述
我从某个网站复制了以下代码来创建自己的 docker 映像。码头工人经验为零。我被困在 cd'ing 进入目录的非常基本的命令中,我觉得对于基于 linux 的系统,除非 docker 期待一些特殊的格式,否则这些命令是相同的。请帮我解决它。
Operating system: Windows 10 home
Docker Desktop
Problem: Step 5/12 : ADD opencv.sh /home/opencv.sh
---> Using cache
---> 17d5d7c7ae7c
Step 6/12 : RUN /home/opencv.sh
---> Running in 27fd8c2d3dd3
/home/opencv.sh: 1: cd: can't cd to /
'...ing into '3.4.9
下面是从 docker 文件内部运行的 docker 文件和 opencv.sh 文件。
DockerFile 的内容
FROM tensorflow/tensorflow:1.15.2-py3-jupyter
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install git cmake wget unzip -y
ADD opencv.sh /home/opencv.sh
RUN /home/opencv.sh
opencv.sh 的内容
cd /
git clone https://github.com/opencv/opencv.git --single-branch 3.4.9
mv 3.4.9 cv
cd cv
mkdir build
cd build
cmake ..
make
make install
解决方案
你(他)为什么要在可以使用 docker 的情况下使用 shell 脚本文件?你可以试试这个
FROM tensorflow/tensorflow:1.15.2-py3-jupyter
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install git cmake wget curl -y
WORKDIR /
RUN git clone https://github.com/opencv/opencv.git --single-branch 3.4.9
RUN mv 3.4.9 cv
RUN mkdir cv/build
RUN cd cv/build && cmake .. && make && make install
推荐阅读
- json - 在 json 文件中查找和编辑几行
- html - 单击窗口特定部分的菜单栏按钮后,我们如何打开 Html 页面?
- javascript - 在 Outlook 回复中使用时 displayNewMessageForm 不起作用
- c# - 添加到列表会从另一个列表中删除
- php - Symfony 路由条件 DSL 上下文
- python - 使用 Python 将 JSON 写入文件时出现问题
- ios - iOS 10.0 + - 它支持什么版本的 unicode?
- php - Preg_match_all 多个内容
- react-native - 需要未知模块“581”。如果您确定该模块存在,请尝试重新启动 Metro Bundler
- jquery - 如何使用 jQuery 从 thymeleaf 片段页面中删除 HTML 元素?