zoukankan      html  css  js  c++  java
  • 【云计算】Docker Nginx示例

     使用数据卷容器,配置Nginx Docker作为静态文件服务器   .
    
    
    
    该方法是直接使用命令行,当然也可使用Dockerfile文件进行创建。 其实,使用docker创建nginx容器是很简单的,但要和数据卷容器结合起来使用,即所有静态文件放在数据卷容器中,然后可以启动多个nginx来访问同一个数据卷容器(如果需要启动多个数据卷容器,可能会出现一个小问题,请参见我在Dockerone上讨论的这个问题: 
    http://dockerone.com/question/214notification_id=4141&rf=false&item_id=623&answer_id=623&single=TRUE#!answer_623) 
    1.首先要将 nginx 给pull下来 
    sudo docker pull nginx 
     2.将 debian:wheezy 给pull下来 
     执行该步的原因是因为考虑到后面实现数据卷容器共享时的相通性。 
    sudo dcoker pull debian:wheezy 
     3.启动一个数据卷容器 
    sudo docker run --name data-volume-container -v /www:/usr/share/nginx/html:ro -d debian:wheezy 
     * 其中/usr/share/nginx/html是nginx的默认文件目录 
    * 以debian:wheezy来启动是为了保证和nginx的目录结构相同(具体可查看nginx的Dockerfile文件),当然,使用Ubuntu也可以,其具有相同的目录结构
    
    4.然后启动nginx,注意各个参数 
    
    docker run --volumes-from data-volume-container --name nginx-server -p 80:80 -d nginx 
    注: 
    * 访问主机的默认端口即可访问到nginx
    
    
    最后,只需要在浏览器中输入http://localhost或者http://host-ip就可进行访问 
    
    
    附:nginx 的 Dockerfile: 
    FROM debian:wheezy 
    MAINTAINER NGINX Docker Maintainers "docker-maint@nginx.com" 
    RUN apt-key adv --keyserver pgp.mit.edu --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 
    RUN echo "deb http://nginx.org/packages/mainline/debian/ wheezy nginx" >> /etc/apt/sources.list 
    ENV NGINX_VERSION 1.7.11-1~wheezy 
    RUN apt-get update &&  
     apt-get install -y ca-certificates nginx=${NGINX_VERSION} &&  
     rm -rf /var/lib/apt/lists/* 
    # forward request and error logs to docker log collector 
    RUN ln -sf /dev/stdout /var/log/nginx/access.log 
    RUN ln -sf /dev/stderr /var/log/nginx/error.log 
    VOLUME ["/var/cache/nginx"] 
    EXPOSE 80 443 
    CMD ["nginx", "-g", "daemon off;"]
    

     

  • 相关阅读:
    Linux命令应用大词典-第11章 Shell编程
    Kubernetes 学习12 kubernetes 存储卷
    linux dd命令
    Kubernetes 学习11 kubernetes ingress及ingress controller
    Kubernetes 学习10 Service资源
    Kubernetes 学习9 Pod控制器
    Kubernetes 学习8 Pod控制器
    Kubernetes 学习7 Pod控制器应用进阶2
    Kubernetes 学习6 Pod控制器应用进阶
    Kubernetes 学习5 kubernetes资源清单定义入门
  • 原文地址:https://www.cnblogs.com/junneyang/p/5259057.html
Copyright © 2011-2022 走看看