Build dockerfile

    版本為 00:36, 27 Dec 2024

    到這個版本。

    返回到 版本存檔.

    查閱目前版本

    Dockerfile 指令

     

    建立 LAMP 基本環境

    mkdir centos5-lamp_php51
    cd centos5-lamp_php51/ 
    

    新增兩個檔案 Dockerfile,startup.sh

    Dockerfile:

    ############################################################
    # Dockerfile to build LAMP with PHP 5.1.x container images
    # Based on CentOS 5
    ############################################################
    FROM centos:centos5
    MAINTAINER A-Lang <alang.hsu@gmail.com>
    
    RUN rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
    RUN yum -y update
    
    RUN yum -y install mysql-server
    RUN yum -y install httpd php php-mbstring php-mysql
    RUN yum -y install wv links pdftohtml tidy html2ps
    
    ADD ./startup.sh /opt/startup.sh
    RUN chmod +x /opt/startup.sh
    RUN echo "/opt/startup.sh" >> /etc/bashrc
    
    EXPOSE 80 3306
    CMD ["/bin/bash"]
    

    startup.sh:

    #!/usr/bin/env bash
    #===============================================================================
    #
    # AUTHOR: A-Lang <alang.hsu@gmail.com>
    #
    #===============================================================================
    echo "Starting mysql:"
    service mysqld start
    echo "Starting Apache:"
    service httpd start
    

    開始 build image

    docker build -t alang/centos5-lamp_php51 .
    

    build 的程序會按照 Dockerfile 的內容依序完成。

    完成後,檢查 image。

    #> docker images
    REPOSITORY                 TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
    alang/centos5-lamp_php51   latest              967949717d3f        19 minutes ago      717.8 MB
    centos                     centos5             192178b11d36        2 weeks ago         466.9 MB
    ubuntu                     latest              5506de2b643b        4 weeks ago         199.3 MB
    ubuntu                     12.04               0b310e6bf058        4 weeks ago         126.7 MB
    ubuntu                     13.10               195eb90b5349        5 months ago        184.7 MB
    

    開啟這個 image 成為一個 container

    #> docker run -t -i alang/centos-lamp_php51
    

     NOTE:

    contaioner 開啟會直接進入它的 console,想跳離開但又不想結束 container,可以按下 Ctrl P 後再按下 Ctrl Q,就可以跳離至 host。

    在 host 時,想重新進入開啟中的 container,可以執行 docker attach <container-ID>

    另一種以 daemon 方式開啟 container

    #> docker run -d -t alang/centos-lamp_php51
    

    NOTE:

    注意:這樣的啟動方式,無法使用 docker attach 進入該 container console。

    Powered by MindTouch Core