我有一个简单的Dockerfile:
FROM php:7.1-apache
LABEL maintainer="rburton@agsource.com"
COPY C:/Users/rburton/code/MyAgsourceAPI /var/www
Run Code Online (Sandbox Code Playgroud)
这是给我麻烦的最后一行。我正在从Windows结构复制到docker容器(我假设是Linux)。构建此图像时,我得到:
...
Step 3/3 : COPY C:/Users/rburton/code/MyAgsourceAPI /var/www
COPY failed: stat /var/lib/docker/tmp/dockerbuilder720374851/C:/Users/rburton/code/MyAgsourceAPI: no such file or directory
Run Code Online (Sandbox Code Playgroud)
首先,有些事情阻止了人们认识到这是一个绝对路径,并且自然地,如果该路径前面加上/var/lib/docker/tmp/dockerbuilder720374851了前缀,则将找不到该文件。其次,我已经尝试过了/,\但是所有结果都相同。另外我怀疑的驱动器号使docker感到困惑。因此,问题是如何将文件和文件夹(以及内容)从Windows文件夹复制到Docker容器?
我构建并运行了一个 docker 镜像
docker run --detach --name api rkevinburton/myagsourceapi
Run Code Online (Sandbox Code Playgroud)
但是当我 'docker ps -a' 时,我收到一条消息,该容器已退出。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ee956fbf1d7f rkevinburton/myagsourceapi "/bin/bash" 10 seconds ago Exited (0) 8 seconds ago api
Run Code Online (Sandbox Code Playgroud)
所以我想找出它退出的原因。所以我发出命令
docker logs ee
Run Code Online (Sandbox Code Playgroud)
但是这个命令什么都不返回。由于 docker 主机是一台 Windows 机器,我查看了 ~\AppData\Local\Docker,但 log*.txt 或 install-log.* 中的信息似乎对我没有任何帮助。如何获得有关容器“退出”原因的更多信息?