docker 安装 nginx

1.首先,进入到dockerhub网站中

https://hub.docker.com/

2.然后在搜索框中输入nginx

3.选择第一个nginx

4.拷贝旁边的命令(docker pull nginx),作用是把nginx的镜像拉到本地

5.选择配置nginx容器的方式,这里我选择的是自己直接配置,不是通过dockerfile

   根据下面的Description编写如下命令: 

  docker run --name xf-nginx -v /Users/soe/dockerEnv/nginx/www:/uar/share/nginx/html:ro -v /Users/soe/dockerEnv/nginx/config/nginx.conf:/etc/nginx/nginx.conf:ro -v /Users/soe/dockerEnv/nginx/config.d:/etc/nginx/conf.d:ro -d -p 8181:80  nginx

  说明: --name xf-nginx 表示的是容器的名字为xf-nginx

      -v /Users/soe/dockerEnv/nginx/www:/uar/share/nginx/html:ro  表示的是将本地/Users/soe/dockerEnv/nginx/www这个文件目录与容器里面的/uar/share/nginx/html关联在一起, 这个操作也被成为挂载,这样的话我们在本地操作www文件里面的内容的时候,里面的内容会与容器的html目录进行同步

     -p 8181:80 表示宿主机以8181来对应到容器的80端口

当中在配置的时候碰到一个问题:

1.第一个问题:

docker: Error response from daemon: oci runtime error: container_linux.go:262: starting container process caused "process_linux.go:339: container init caused \"rootfs_linux.go:57: mounting \\\"/Users/soe/dockerEnv/nginx/config\\\" to rootfs \\\"/var/lib/docker/overlay2/581ccb7bddfa58b195f2f5f3ac306d48ac4121937bfb2f7dfcc3833ef0aed5b5/merged\\\" at \\\"/var/lib/docker/overlay2/581ccb7bddfa58b195f2f5f3ac306d48ac4121937bfb2f7dfcc3833ef0aed5b5/merged/etc/nginx/nginx.conf\\\" caused \\\"not a directory\\\"\""

: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.

后来发现,是因为我在写命令的时候,本来应该是本地的一个文件和容器里面的一个文件挂载的,结果我本地的只指定到了文件所在的目录,导致挂载失败了。

2.第二个问题:

和上面的报错一样,但是我指定的已经是文件了,反复确认了好久,我的系统是win7,不知道是不是win7系统下面,生成的文件在进行关联的时候存在问题,吐血中~~~

posted @ 2018-06-23 09:02  蒙恩少年  阅读(218)  评论(0编辑  收藏  举报