dockerfile, 构建分层Gentoo图像的Dockerfile框架

分享于 

4分钟阅读

GitHub

  繁體 雙語
Building Docker images your own way
  • 源代码名称:dockerfile
  • 源代码网址:http://www.github.com/wking/dockerfile
  • dockerfile源代码文档
  • dockerfile源代码下载
  • Git URL:
    git://www.github.com/wking/dockerfile.git
    Git Clone代码到本地:
    git clone http://www.github.com/wking/dockerfile
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/wking/dockerfile
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    适用于各种 Gentoo -based Docker 图像的Dockerfiles。

    Dockerfiles被分类成与建议存储库匹配的名称。 为了避免重复的数据( 命名空间,时间戳标记。),它们在 Dockerfile.template 中显示为标记( ${NAMESPACE}${TAG},。)。 build.sh 脚本用每个 Dockerfile.template ( 使用 envsubst ) 生成一个 Dockerfile 来替换标记,然后生成每个标记:

    
    $ docker build -t $NAMESPACE/$REPO:$TAG $REPO
    
    
    
    

    例如:

    
    $ docker build -t wking/gentoo-en-us:20131205 gentoo-en-us
    
    
    
    

    依赖关系图是:

    
    wking/gentoo (amd64 stage3)
    
    
    `-- gentoo-portage (adds portage directory)
    
    
     `-- gentoo-python (drops Python 2.7)
    
    
     `-- gentoo-utc (adds a system timezone)
    
    
     `-- gentoo-en-us (adds locale)
    
    
     `-- gentoo-openrc (configure OpenRC for Docker)
    
    
     `-- gentoo-syslog (adds syslog-ng and associates)
    
    
     |-- buildbot (adds a Buildbot master and slave)
    
    
     |-- docker-registry (adds a Docker registry server)
    
    
     |-- gentoo-layman (adds layman for Gentoo overlays)
    
    
     | |-- package-cache (adds a package-cache proxy)
    
    
     | `-- thumbor (adds Thumbor)
    
    
     |-- gentoo-node (adds Node and npm)
    
    
     | `-- hubot (adds hubot with an IRC adapter)
    
    
     |-- irker (adds irker, and spawns irkerd by default)
    
    
     |-- memcached (adds Memcached)
    
    
     |-- nagios (adds Nagios)
    
    
     |-- nginx (adds Nginx)
    
    
     | |-- nginx-proxy (SSL/TLS proxying via SNI)
    
    
     | |-- kibana (adds Kibana)
    
    
     | `-- kibana-azure (adds Azure's Kibana)
    
    
     |-- ngircd (adds ngIRCd)
    
    
     |-- postgresql (adds PostgreSQL)
    
    
     |-- redis (adds Redis)
    
    
     |-- salt (adds a Salt Stack install)
    
    
     | |-- salt-master (enables a Salt Stack master)
    
    
     | `-- salt-minion (enables a Salt Stack minion)
    
    
     |-- stunnel (adds stunnel)
    
    
     `-- gentoo-java (adds IcedTea)
    
    
     `-- elasticsearch (adds Elasticsearch)
    
    
    
    

    运行:

     
    $./build.sh
    
    
    
     

    从Gentoo镜像生成种子并生成所有图像。 在 build.sh 脚本中有许多用于配置生成( AUTHORNAMESPACE,。)的变量。 我们使用参数扩展插件,使你可以很容易地覆盖变量。

    
    $ NAMESPACE=jdoe DATE=20131210./build.sh
    
    
    
    

    i tree tree tree bloating bloating bloating


      图像  DOC  构建  images  Docker  
    相关文章