2. 编写Dockerfile
3. 构建并运行
4. 直策应用PHP Docker镜像运行PHP脚本
构建自己的WordPress镜像用于搭建个人博客站点
1. 准备MySQL数据库
2. 跑起来
修正PHP的文件上传大小限定1. 修正Dockerfile,构建自己的镜像
2. 通过“-v”参数将容器内指定路径映射到主机目录的自定义的配置文件
3. 通过“exec”命令进入容器内部修正干系配置
PHP(全名:PHP: Hypertext Preprocessor)是一种通用开源脚本措辞。语法接管了C措辞、Java和Perl的特点,利于学习,利用广泛,紧张适用于Web开拓领域。PHP 独特的语法稠浊了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地实行动态网页。用PHP做出的动态页面与其他的编程措辞比较,PHP是将程序嵌入到HTML(标准通用标记措辞下的一个运用)文档中去实行,实行效率比完备天生HTML标记的CGI要高许多;PHP还可以实行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
官方镜像官方镜像地址:https://hub.docker.com/_/php
编写大略的Hello world!
1. 编写Hello world!
代码及其大略,如下所示:
<?phpecho \"大众Hello world\"大众;?>
2. 编写Dockerfile
Dockerfile文件如下所示:
#镜像版本见:https://hub.docker.com/_/phpFROM php:7.3-cli-alpine3.9COPY . /usr/src/myappWORKDIR /usr/src/myapp#运行php脚本CMD [ \"大众php\"大众, \公众./test.php\"大众 ]
这里之以是选择了alpine的镜像,紧张是体积更小:
3. 构建并运行
构建命令如下所示:
docker build --rm -f \公众dockerfile\公众 -t phptest1:latest .
运行:
4. 直策应用PHP Docker镜像运行PHP脚本
在日常开拓中,如果我们只是编写大略的PHP脚本用于大略的实践,那么我们完备可以
直策应用PHP Docker镜像来运行PHP脚本,避免反复的构建过程,从而加速开拓:
docker run -it --rm `--name php-running-script `-v D:\temp\php:/usr/src/myapp `-w /usr/src/myapp `php php test.php
运行命令参数解释大家可以回顾前面的内容,以上命令主体操作如下:
运行php最新镜像,运行完成后自动删除容器。个中“-it”等同于“-ti”等同于“-i -t”,也便是让容器的标准输入保持打开,然后分配一个伪终端并绑定到容器的标准输入上;容器名称为“php-running-script”;将主机目录“D:\temp\php”加载为数据卷,映射到容器内目录“/usr/src/myapp”。关于数据卷的干系讲解,我们在后续的章节会结合干系实践进一步讲解;指定事情目录“/usr/src/myapp”;实行PHP脚本“test.php”。构建自己的WordPress镜像用于搭建个人博客站点WordPress是利用PHP措辞开拓的博客平台,用户可以在支持PHP和MySQL数据库的做事器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来利用。
WordPress是一款个人博客系统,并逐步蜕变成一款内容管理系统软件,它是利用PHP措辞和MySQL数据库开拓的,用户可以在支持 PHP 和 MySQL数据库的做事器上利用自己的博客。
WordPress官方镜像地址为:https://hub.docker.com/_/wordpress
接下来,我们就基于官方镜像开始搭建。
1.准备MySQL数据库
我们先须要准备一个MySQl数据库,大家可以利用现成的MySQL数据库,也可以参考数据库容器化的干系章节来进行搭建。
参考命令如下所示:
docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql
把稳:MySQL容器创建完成后,须要对root账号进行设置才能够通过数据库连接访问MySQL,详细见数据库容器化干系章节。
2.跑起来
接下来,我们就可以运行WordPress镜像了,参考命令如下所示:
docker run `--name myblog `--link mysql:wordpressdb `-e WORDPRESS_DB_HOST=wordpressdb:3306 `-e WORDPRESS_DB_PASSWORD=123456 `-e WORDPRESS_DB_NAME=wordpress `-p 3000:80 `wordpress
如上述命令,我们基于WordPressWordPress镜像创建了一个名为myblog的容器,外部端口为3000,容器端口为80。然后利用“--link”参数将该容器和mysql容器(上一步创建的MySQL容器)建立了链接,是其能否访问mysql容器,并且建立了别名wordpressdb。接下来,通过环境变量设置了WordPress的MySQL的一些参数,比如数据库做事器、密码、库名称。运行结果如下图所示:
接下来,我们访问我们的博客网址“http://localhost:3000/”试试:
经由一些大略设置,我们又为WordPress添加了一个即将关站的博客站:
修正PHP的文件上传大小限定
基于Docker运行PHP运用,常常会碰着文件上传大小限定的问题。比如刚刚支配的WordPress个人博客站点,如果我们上传一些个人主题,很随意马虎就打破了PHP的文件上传大小限定(默认2M,对应设置key为“upload_max_filesize”),这时我们有以下办法进行处理:
1.修正Dockerfile,构建自己的镜像
利用自己的php配置文件(php.ini)更换默认的php配置文件。如基于wordpress镜像构建自己的镜像,添加类似于“COPY ./config/php.ini /usr/local/etc/php/conf.d/”的复制命令。
2.通过“-v”参数将容器内指定路径映射到主机目录的自定义的配置文件
例如“-v d:/tmp/php/php.ini:/usr/local/etc/php/conf.d/uploads.ini”。
3.通过“exec”命令进入容器内部修正干系配置
关注"大众年夜众号“magiccodes”,可查看更多内容