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

 

 

 页面测试:

posted @ 2019-07-05 11:29  大风歌兮  阅读(479)  评论(2编辑  收藏  举报