Docker-如何在不命名的情况下将一些文件复制到我的容器中?

时间:2019-04-12 20:25:35

标签: docker dockerfile

这应该很明显,但是事实并非如此(我已经在docker站点上浏览了十二次)

我在Ubuntu上。

我使用以下命令创建一个Dockerfile

FROM ubuntu:18.04
COPY . /usr/src/app/
COPY docker_files/.bash_aliases /usr/src/app/

它看起来还可以

$ docker build .
Sending build context to Docker daemon  159.7kB
Step 1/3 : FROM ubuntu:18.04
 ---> 94e814e2efa8
Step 2/3 : COPY . /usr/src/app/
 ---> 2abbed3376c9
Step 3/3 : COPY docker_files/.bash_aliases /usr/src/app/
 ---> 42c7f78ad5ee
Successfully built 42c7f78ad5ee

我运行它

$ docker run -it ubuntu:18.04
root@366bd4a6ae0b:/# 

但是我的文件在哪里?没有应用目录。我是运行错误的图像还是其他错误?

root@366bd4a6ae0b:/# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@366bd4a6ae0b:/# ls -a root
.  ..  .bashrc  .profile
root@366bd4a6ae0b:/# 

root@7d558e90f5b5:/# ls -a /usr/src/
.  ..
root@7d558e90f5b5:/# 

更新:如果我命名,它可以正常工作(是的,以前我实际上并没有使用该图像):

$ docker build -t dock .                                                                                                                                                                               
Sending build context to Docker daemon  146.9kB                                                                                                                                                        
Step 1/3 : FROM ubuntu:18.04                                                                                                                                                                           
 ---> 94e814e2efa8                                                                                                                                                                                     
Step 2/3 : COPY . /usr/src/app/                                                                                                                                                                        
 ---> 231e0743a840                                                                                                                                                                                     
Step 3/3 : COPY docker_files/.bash_aliases /usr/src/app/                                                                                                                                               
 ---> 1fdd50a0d869                                                                                                                                                                                     
Successfully built 1fdd50a0d869                                                                                                                                                                        
Successfully tagged dock:latest                                                                                                                                                                        
16:34:12 durrantm u2018 /home/durrantm/Dropbox/_/ultimate-weather-org/ultimate-weather-ruby UL-38                                                                                                      
$ docker run -it dock                                                                                                                                                                                  
root@4aa8a80a45c7:/# ls -a /usr/src/app/                                                                                                                                                               
.  ..  .bash_aliases 

有没有名字的方法吗?

1 个答案:

答案 0 :(得分:1)

如上一条评论所述,您没有运行所生成的映像。

您可以在构建图像时尝试向其添加自定义名称:

赞:

docker build -t custom/myubuntu .

然后您可以通过以下方式运行它:

docker run -it custom/myubuntu

您的文件将位于:

/usr/src/app/