【问题标题】:Running a Docker image on Windows 10 using a Makefile使用 Makefile 在 Windows 10 上运行 Docker 映像
【发布时间】:2018-12-19 23:01:09
【问题描述】:

如果这是一个愚蠢的问题,我深表歉意,但是当我在 Window 10 的 PowerShell 中输入时:

docker run -it -v C:\Users\Bob\Documents\test:/usr/python -w /usr/python 
bob/python

它工作得很好,我收到以下提示:

root@63eef6ac2b96:/usr/python#

为了避免一遍又一遍地重复命令,我构建了一个包含以下命令的 makefile

docker:
    docker run -it -v C:\Users\Bob\Documents\test:/usr/python -w /usr/python bob/python

当我尝试执行时

make docker

我收到以下错误

PS C:\Users\Bob\documents\test> make docker
docker run -it -v C:\Users\Bob\Documents\test:/usr/python -w /usr/python 
bob/python
c:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from 
daemon: the working directory 'C:/MinGW/msys/1.0/python' i
s invalid, it needs to be an absolute path.
See 'c:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help'.
make.exe": *** [docker] Error 125

非常感谢任何建议。

【问题讨论】:

    标签: windows docker makefile


    【解决方案1】:

    您不必使用Makefile。 Docker compose 正是您所寻找的。​​p>

    简而言之,您需要创建一个docker-compose.yml 文件并在其中描述所有所需的步骤。我不知道您的完整设置,但我会尝试为您的 docker-compose 文件提供骨架。

    version: '3.7'(depends on your docker engine version)
    services:  
      python_service(add a name of your choice):
        build: build/ (The path of image's Dockerfile)
        volumes:
          - C:\Users\Bob\Documents\test:/usr/python
        working_dir: /usr/python
    

    在上面的sn-p中:

    • -v 标志替换为 volumes 部分
    • -w 标志替换为 working_dir 部分

    如何使用

    现在您的docker-compose 文件已准备就绪,您需要使用它。因此,您无需记住/重复 docker run 命令,只需在 compose 文件所在的目录中执行 docker-compose up,即可启动并运行容器。

    请注意,这是一个关于如何使用docker-compose 的简单示例。这是一个强大的功能,允许从多个图像启动容器、创建网络等等。我建议您阅读official documentation 了解更多信息。

    【讨论】:

      猜你喜欢
      • 2022-08-04
      • 1970-01-01
      • 2019-03-18
      • 2020-07-13
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      • 2019-12-24
      • 2021-03-25
      相关资源
      最近更新 更多