简体   繁体   中英

Docker's container mount folder

I am new to Docker and I am trying to simply launch an nginx app.

To do this, I have this DockerFile:

FROM debian:wheezy
MAINTAINER John Regan <john@jrjrtech.com>

RUN echo "deb http://nginx.org/packages/debian/ wheezy nginx" >> /etc/apt/sources.list.d/nginx.list
RUN apt-key adv --fetch-keys "http://nginx.org/keys/nginx_signing.key"

RUN apt-get update && apt-get -y dist-upgrade
RUN apt-get -y install nginx openssl ca-certificates

##Delete default repository 
RUN rm -rf /etc/nginx/conf.d/*
RUN rm -rf /srv/www/*

ADD conf/nginx.conf /etc/nginx/nginx.conf
ADD conf/conf.d/default.conf /etc/nginx/conf.d/default.conf
ADD html/index.html /srv/www/index.html

VOLUME ["/etc/nginx"]
VOLUME ["/srv/www"]

EXPOSE 80
EXPOSE 443

ENTRYPOINT ["nginx"]
CMD []

My folder is organise like this:

├── conf
|   ├── nginx.conf
|   └── conf.d
|         └── default.conf
├── html
|   └── index.html

The command to launch the container:

sudo docker run -d -p 80:80 -v $pwd/conf:/etc/nginx -v $pwd/html:/srv/www my-nginx

But the conatiner stop and I got this message in the log:

nginx: [emerg] open() "/etc/nginx/mime.types" failed (2: No such file or directory) in /etc/nginx/nginx.conf:14

I know that the log is pretty clear, but I can't figure out why it doesn't work.

Thanks.

When you are mounting your conf dir your are replacing the contents of the /etc/nginx dir. instead mount the nginx.conf file and the conf/conf.d - see the section on mounting files, https://docs.docker.com/v1.8/userguide/dockervolumes/

sudo docker run -d -p 80:80 -v $pwd/conf/conf.d:/etc/nginx/conf.d -v $pwd/conf/nginx.conf:/etc/nginx/nginx.conf -v $pwd/html:/srv/www my-nginx

Are you sure the configuration on the in the nginx.conf is correct? The error seems related to nginx not to the docker.

“卷”选项,挂载新的目录点,如果只需要挂载文件,则应该具体。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM