正文
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]# lsdefault.conf discuz.tar.gz Discuz_X3.4_SC_UTF8_0802.zip dockerfile init.sh、[root@localhost centos6.9_ssh_discuz]# cat default.confserver { 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/bashservice nginx startservice php-fpm startservice mysqld start/usr/sbin/sshd -D[root@localhost centos6.9_ssh_discuz]# cat dockerfileFROM centos:6.9RUN 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 rootADD default.conf /etc/nginx/conf.d/default.confRUN mkdir /codeWORKDIR /codeADD discuz.tar.gz .RUN chmod -R 777 . && \mv upload/* . && \service mysqld start && \mysqladmin -uroot password '123456'EXPOSE 22 80ADD init.sh /init.shCMD ["/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]# lsdockerfile init.sh kode.tar.gz nginx.conf[root@localhost centos6.9_ssh_kode]# cat dockerfileFROM centos:6.9RUN 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 -yADD nginx.conf /etc/nginx/nginx.confRUN mkdir /codeWORKDIR /codeADD kode.tar.gz .RUN chown -R apache.apache .RUN chown -R apache.apache /var/lib/nginxEXPOSEADD init.sh /init.shCMD ["/bin/bash","/init.sh"][root@localhost centos6.9_ssh_kode]# cat init.sh#!/bin/bashservice php-fpm startnginx -g 'daemon off;'[root@localhost centos6.9_ssh_kode]# cat nginx.confevents { worker_connections ;} http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout ;server { listen ; server_name localhost; root /code; index index.php index.html index.htm; location / { } location ~ \.php$ { root html; fastcgi_pass ; 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 -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES10b8fcc6a317 kode:v2 seconds ago Up seconds ->/tcp unruffled_dewdney[root@localhost centos6.9_ssh_kode]# docker run -d -p : kode:v2
页面测试: