美文网首页
将容器提交为镜像

将容器提交为镜像

作者: 国王12 | 来源:发表于2019-07-24 21:04 被阅读0次

    基本格式:

    docker commit 容器id\容器名 新的镜像名字:版本
    

    一、手动制作镜像

    1.启动一个容器

    docker run -it -d -p 1022:22 centos:6.9
    

    2.安装服务

    登入容器
    yum install httpd openssh-server nginx -y
    vi /init.sh
    #!/bin/bash
    /etc/init.d/httpd start
    /usr/sbin/sshd -D
    

    3.将容器提交为镜像

    docker commit 容器id\名字 新名字:版本
    

    二、dockerfile自动构建镜像

    dockerfile主要组成部分

    FROM 这个镜像的妈妈是谁?(指定基础镜像) 
    MAINTAINER 告诉别人,谁负责养它?(指定维护者信息,可以没有)
    LABLE 描述,标签 
    RUN 你想让它干啥(在命令前面加上RUN即可) 
    ADD 给它点创业资金(会自动解压tar) 制作docker基础的系统镜像 
    WORKDIR 我是cd,今天刚化了妆(设置当前工作目录) 
    VOLUME 给它一个存放行李的地方(设置卷,挂载主机目录) 
    EXPOSE 它要打开的门是啥(指定对外的端口)(-P 随机端口) 
    CMD 奔跑吧,兄弟!(指定容器启动后的要干的事情)(容易被替换) 
    dockerfile其他指令: 
    COPY 复制文件(不会解压)rootfs.tar.gz 
    ENV 环境变量 
    ENTRYPOINT 容器启动后执行的命令(无法被替换,启容器的时候指定的命令,会被当成参数)
    

    自动构建可道云镜像

    cat dockerfile
    FROM  centos:6.9
    RUN  curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
    RUN  curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
    RUN  yum install php-fpm php-mbstring php-gd nginx unzip -y
    WORKDIR  /opt/
    RUN  curl -o kodexplorer4.40.zip  http://192.168.12.201/docker_image/kodexplorer4.40.zip
    RUN  unzip kodexplorer4.40.zip
    RUN  chown -R nginx.nginx .
    ADD  nginx.conf /etc/nginx/nginx.conf
    ADD  www.conf /etc/php-fpm.d/www.conf
    ADD  init.sh /init.sh
    CMD  ["/bin/bash","/init.sh"]
    
    cat init.sh
    #!/bin/bash
    
    service php-fpm restart
    
    nginx -g 'daemon off;'
    
    cat nginx.conf
    worker_processes  1;
    events {
        worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        keepalive_timeout  65;
        server {
            listen       80;
            server_name  localhost;
            root    /opt;
            index   index.php index.html index.htm;
            location / {
            }
            location ~ \.php$ {
                root           html;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  /opt$fastcgi_script_name;
                include        fastcgi_params;
            }
        }
    }
    
    php配置文件把属主属组更改为nginx
    配置文件此处略(太长了)
    

    5.生成

    docker build -t 容器名:版本 .
    

    相关文章

      网友评论

          本文标题:将容器提交为镜像

          本文链接:https://www.haomeiwen.com/subject/dznfrctx.html