无法使用Python SDK在docker容器内创建文件

时间:2018-06-15 13:38:58

标签: python docker

我无法在Ubuntu 16.04LTS上使用最新的Python SDK在Docker容器中创建文件。

以下是我的工作:

  1. 我使用Docker CLI在Ubuntu 16.04LTS主机上创建基于Ubuntu的容器;

  2. 我创建了一个createfile.py脚本,如下所示:

    import docker
    client = docker.from_env()
    container = client.containers.get('fbb206330c24')
    print container.exec_run(['echo', '123', '>', '/var/abc.txt'])
    

    fbb206330c24是容器的id。

  3. 输出结果为:

    ExecResult(exit_code=0, output='123 > /var/abc.txt\n')
    

    对我来说很好看。

    1. 然后我在主机上运行以下命令以SSH到容器:

      docker exec -it fbb206330c24 bash

    2. 然后我尝试查看/var目录,我希望那里有一个abc.txt文件。但没有。

      这里有什么问题?

1 个答案:

答案 0 :(得分:-1)

尝试更改

print container.exec_run(['echo', '123', '>', '/var/abc.txt'])

print container.exec_run(['sh', '-c', 'echo', '123', '>', '/var/abc.txt'])

相关信息:https://github.com/docker/docker-py/issues/1637