2016-08-11 154 views
2

我有一个非常简单的基于debian镜像的dockerfile,而我目前只安装了vim包。但不知何故,我不能在容器内执行vim命令。我已经尝试了几个基本映像(debian,ubuntu和alpine),但它们似乎都有相同的问题。Dockerfile vim安装不起作用

有人知道我做错了什么吗?

Dockerfile:

FROM  debian:8.5 
RUN apt-get update && apt-get install -y vim 

泊坞窗,compose.yml:

version: '2' 
services: 
    web: 
    container_name: frontend 
    build: . 
    ports: 
     - '127.0.0.1:1337:80' 

建设和执行容器后的结果:

$ docker-compose up -d && docker exec -it frontend bash 
[email protected]:/# vim 
bash: vim: command not found 
+3

构建过程的输出是什么?如果你只是“码头建造”和“码头运行”图像而不是使用码头构造,会发生什么? docker-compose up'命令的输出没有'-d'的输出是什么? – larsks

+0

构建过程:http://pastebin.com/RfQJ8GG7。运行'docker run frontend vim'后,vim打开。所以我的docker-compose文件可能有些问题 –

+0

这很奇怪,我以前从来没有把'tty:true'放到我的'docker-compose.yml'文件中。他们总是(几乎)工作...你能解释一下为什么它在你的情况下工作?我很好奇。 另外,为什么不直接使用'run'运行web bash'?它没有在这里创建分离容器。 –

回答