Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python “奇异的”;没有这样的文件或目录;在docker容器中运行命令时出错_Python_Linux_Ubuntu_Docker_Terminal - Fatal编程技术网

Python “奇异的”;没有这样的文件或目录;在docker容器中运行命令时出错

Python “奇异的”;没有这样的文件或目录;在docker容器中运行命令时出错,python,linux,ubuntu,docker,terminal,Python,Linux,Ubuntu,Docker,Terminal,我试图运行一个非常简单的python文件,它只在docker容器中打印“woof”。据我所知,我创建了一个docker容器,名为: c5d3c4c383d1 然后,我运行以下命令,试图告诉自己在docker中运行东西的目录: sudo docker run c5d3c4c383d1 pwd 这将返回以下值: / 我假设它是我的根目录,所以我转到我的根目录。键入pwd显示: / 然后,我通过nano命令创建一个名为meow.py的文件,并在其中输入一行: print("Woof!")

我试图运行一个非常简单的python文件,它只在docker容器中打印“woof”。据我所知,我创建了一个docker容器,名为:

c5d3c4c383d1
然后,我运行以下命令,试图告诉自己在docker中运行东西的目录:

sudo docker run c5d3c4c383d1 pwd
这将返回以下值:

/
我假设它是我的根目录,所以我转到我的根目录。键入pwd显示:

/
然后,我通过nano命令创建一个名为meow.py的文件,并在其中输入一行:

 print("Woof!")
我保存它并用ls命令确认它在/目录中

然后,我输入以下内容:

 sudo docker run c5d3c4c383d1 python meow.py
返回:

python: can't open file 'meow.py': [Errno 2] No such file or directory

我不明白。显然,当使用docker运行命令时,我不在根目录中,因为meow.py文件肯定在根目录中,但它表示找不到该文件。搞什么鬼。。。正如我在docker容器中运行pwd时所说的,它说我在/目录中,但我不能得到这个文件未找到错误

docker是一个容器。。。这是它的根目录。。。把它想象成一台完全不同的机器,你通常会用ssh连接到它。。。试试这样的

docker run -it c5d3c4c383d1 bash
这基本上就像你刚刚ssh到你的远程机器

继续并尝试一些命令(
ls、pwd等

现在运行
echo print(“hello world”)>test.py

现在运行
ls
您应该会看到您的test.py。。。继续使用
python test.py运行它


现在您可以
退出
您的容器。。。如果您再次启动同一个容器,您的test.py文件应该仍然在那里。。。尽管我认为更常见的情况是,人们编写dockerfile来设置环境,然后将每个会话视为一次性会话,而不是保留相同的容器

我明白了!从概念上讲,这很有意义。不幸的是,当我尝试运行docker时,它运行c5d3c4c383d1 bash,我被告知未知的速记标志:“我”在其中。当我移除-it标志时,我似乎没有连接到docker容器。想法?@majotcoder,这是
docker-run-it
,不是
docker-it-run
谢谢!当我像这样连接到图像时,对图像所做的更改似乎无法保存。知道我怎样才能让他们省钱吗?