LNMP Dockerfile(CentOS7)-未完成

建立执行脚本run.sh,此文件放在Dockerfile同级目录下。

#!/bin/bash
/usr/sbin/nginx -g "daemon off;"
mysqld_safe &
/usr/sbin/php-fpm

 

建立Dockerfile文件,内容如下。

# 设置镜像,本机要存在的镜像
FROM centos:7.2

# 备注一下作者信息
#MAINTAINER lixh (admin@lixh.cn)

# 下载nginx
RUN wget http://www.atomicorp.com/installers/atomic; yum clean all
# 添加执行权限
RUN chmod 755 ./atomic
# 扫行脚本
RUN sh ./atomic
# 安装Nginx
RUN yum -y install nginx;yum clean all

# 安装Mariadb
RUN yum -y install mariadb mariadb-server;yum clean all
# 安装PHP
RUN yum -y install php php-fpm;yum clean all
RUN yum -y install php-mysql php-gd php-mbstring;yum clean all

# 配置nginx的配置文件
RUN sed -i 's/index  index.html index.htm;/index  index.php index.html index.htm;/g' /etc/nginx/conf.d/default.conf
RUN sed -i '43a     location ~ \.php$ {' /etc/nginx/conf.d/default.conf
RUN sed -i '44a         root           html;' /etc/nginx/conf.d/default.conf
RUN sed -i '45a         fastcgi_pass   127.0.0.1:9000;' /etc/nginx/conf.d/default.conf
RUN sed -i '46a         fastcgi_index  index.php;' /etc/nginx/conf.d/default.conf
RUN sed -i '47a         fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;' /etc/nginx/conf.d/default.conf
RUN sed -i '48a         include        fastcgi_params;' /etc/nginx/conf.d/default.conf
RUN sed -i '49a     }' /etc/nginx/conf.d/default.conf

# 写测试文件到网站目录下
RUN echo "<?php phpinfo(); ?>" >> /usr/share/nginx/html/info.php 

# 执行初始化数据库方法
RUN mysql_install_db --user=mysql

# 添加本地配置文件
ADD run.sh /run.sh

# 对添加的文件进行权限设置
RUN chmod 755 /run.sh

# 开放80号端口
EXPOSE 80
#EXPOSE 9000

# 开机自启动服务
CMD ["/run.sh"]

 

 

可能用到的命令:

# 创建镜像
docker build -t lamp:dockerfile .
# 执行容器
docker run -d -p 10080:80 lamp:dockerfile
转载请附上原文出处链接及本声明
李老师的博客 » LNMP Dockerfile(CentOS7)-未完成

发表评论

提供最优质的文章集合

立即查看 了解详情