我在我的debian wheezy主機上創建一個非常基本的圖像。這是Dockerfile:碼頭安裝主機的/目錄到容器的/在debian wheezy 7.8
FROM ubuntu:trusty
USER root
# Activate multiverse repos
RUN echo 'deb http://archive.ubuntu.com/ubuntu/ trusty universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb http://security.ubuntu.com/ubuntu trusty-security universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb http://archive.ubuntu.com/ubuntu/ trusty-updates universe multiverse' >> /etc/apt/sources.list
RUN apt-get update
RUN apt-get install -y supervisor
WORKDIR/
CMD ["/usr/bin/supervisord", "-n"]
要建立的形象,我用docker build -t basic-ubuntu .
要運行的容器,我用docker run -d basic-ubuntu
要進入容器中,我用docker exec -i -t <container_id> bash
當我進入容器,我看到的是容器的根目錄/
與主機具有相同的內容。當我在容器上創建一個文件時,它也在主機上創建。即使我在Dockerfile中添加了我在主機上沒有的某個軟件包的RUN apt-get install -y
,但是在容器中找不到它。實際上,即使容器上的$ PATH變量與主機相同。
這裏是我的ENV一些信息
host$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 7.8 (wheezy)
Release: 7.8
Codename: wheezy
host$ docker version
Client:
Version: 1.10.1
API version: 1.22
Go version: go1.5.3
Git commit: 9e83765
Built: Thu Feb 11 19:20:12 2016
OS/Arch: linux/amd64
Server:
Version: 1.10.1
API version: 1.22
Go version: go1.5.3
Git commit: 9e83765
Built: Thu Feb 11 19:20:12 2016
OS/Arch: linux/amd64
由泊塢窗顯示的坐騎檢查
"Mounts": []
對於全泊塢窗檢查跟蹤:http://pastebin.com/t4uSu4ZH
我認爲這個問題是來自碼頭執行步驟。因爲構建和運行似乎正常工作。
不,我沒有這樣的問題: '爲myuser @ $ MYHOSTNAME碼頭工人的exec -i -t 151961654ce5467cff51c606d6e9886c01008c4a9a81c0076715dfca77318f73 bash' '根@ 151961654ce5:/#' – amine
,創造一個有文件創建它你的主人呢?由於您尚未裝入卷(https://docs.docker.com/engine/userguide/containers/dockervolumes/#mount-a-host-file-as-a-data-volume),因此不太可能。 – VonC
是的,發生了,這很奇怪我同意 – amine