• Dockfile自动创建discuz论坛和可道云


       将discuz论坛的zip包解压之后用tar包压缩,这样ADD可以直接解压tar包。

    [root@localhost centos6.9_ssh_discuz]# pwd
    /opt/dockerfile/centos6.9_ssh_discuz
    [root@localhost centos6.9_ssh_discuz]# ls
    default.conf  discuz.tar.gz  Discuz_X3.4_SC_UTF8_0802.zip  dockerfile  init.sh、
    
    [root@localhost centos6.9_ssh_discuz]# cat default.conf
    server {
        listen       80 ;
        server_name  localhost;
        root         /code;
        index        index.php index.html index.htm;
        location / {
        }
        location ~ .php$ {
             fastcgi_pass   127.0.0.1:9000;
             fastcgi_index  index.php;
             fastcgi_param  SCRIPT_FILENAME  /code$fastcgi_script_name;
             include        fastcgi_params;
         }
    }
    [root@localhost centos6.9_ssh_discuz]# cat init.sh
    #!/bin/bash
    service nginx start
    service php-fpm start
    service mysqld start
    /usr/sbin/sshd -D
    [root@localhost centos6.9_ssh_discuz]# cat dockerfile
    FROM centos:6.9
    RUN  curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo && 
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo && 
    yum install  openssh-server nginx php-fpm  php-gd php-pecl-zendopcache php-mysqli mysql-server -y && 
    service sshd start && 
    echo "123456"|passwd --stdin root
    ADD default.conf /etc/nginx/conf.d/default.conf
    RUN mkdir /code
    WORKDIR /code
    ADD discuz.tar.gz .
    RUN chmod -R 777 .  && 
    mv upload/* . && 
    service mysqld start && 
    mysqladmin -uroot password '123456'
    EXPOSE 22 80
    ADD init.sh /init.sh
    CMD ["/bin/bash","/init.sh"]
    
    启动容器:
    docker run -d -p 80:80 discuz:v1
    

    打开网页测试:

     

    可道云:

    [root@localhost centos6.9_ssh_kode]# pwd
    /opt/dockerfile/centos6.9_ssh_kode
    [root@localhost centos6.9_ssh_kode]# ls
    dockerfile  init.sh  kode.tar.gz  nginx.conf
    
    
    [root@localhost centos6.9_ssh_kode]# cat dockerfile
    FROM centos:6.9
    
    RUN  curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo && 
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo && 
    yum install nginx  php-mbstring php-fpm  php-gd    -y
    
    ADD nginx.conf /etc/nginx/nginx.conf
    RUN mkdir /code
    WORKDIR /code
    ADD kode.tar.gz .
    RUN chown -R  apache.apache .
    RUN chown -R  apache.apache /var/lib/nginx
    
    EXPOSE 80
    ADD init.sh /init.sh
    
    CMD ["/bin/bash","/init.sh"]
    [root@localhost centos6.9_ssh_kode]# cat init.sh
    #!/bin/bash
    
    service php-fpm start
    nginx -g 'daemon off;'
    [root@localhost centos6.9_ssh_kode]# cat nginx.conf
    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         /code;
        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  /code$fastcgi_script_name;
             include        fastcgi_params;
         }
    }
    }
    
    
    
    [root@localhost centos6.9_ssh_kode]# docker build --network=host -t kode:v2 .
    10b8fcc6a31760c8f3982ab539640aca48c7054f904ce5266bee69d5c1b1e680
    [root@localhost centos6.9_ssh_kode]# docker ps -a
    CONTAINER ID        IMAGE               COMMAND                CREATED              STATUS                 PORTS                NAMES
    10b8fcc6a317        kode:v2             "/bin/bash /init.sh"   5 seconds ago        Up 5 seconds                 0.0.0.0:80->80/tcp   unruffled_dewdney
    [root@localhost centos6.9_ssh_kode]# docker  run -d -p 80:80 kode:v2

     页面测试:

  • 相关阅读:
    快速排序法的C#实现
    SQL语句执行效率及分析(note)
    如何在C#中运行数学表达式字符串
    TSQL删除重复数据,保留一条
    C#对象序列化XML时报错:反射类型XXX时出错
    c#如何扩展类型的内置方法
    把数字转换成阿拉伯数字大写的程序
    使用C#格式化字符串
    Silverlight中自己定义实现的双击方法
    原来是这样:C#中new一个对象时,发生了什么事?
  • 原文地址:https://www.cnblogs.com/nshgo/p/11137277.html
Copyright © 2020-2023  润新知