当前位置:首页 > CN2资讯 > 正文内容

apache nifi docker 部署 docker 部署php

1天前CN2资讯


  最近心血来潮,之前的一部VPS一直空置着。所以趁着这两天有空想部一个typecho博客上去,偶尔可以把自己工作的一些技术笔记分享一下。在以前部署的时候,最麻烦的就是配置服务器的运行环境,最近工作中有接触过docker,docker可以看做一个快速部署工具,生产环境中很多工具基本可以用一条命令就解决。这次我们要配置的typecho的运行环境是linux + nginx + mysql + php7。

 

1.创建一个mysql容器

sudo docker run --name mysql \ -v database:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 \ -p 3306:3306 \ -d mysql

参数说明

  • -v database:/var/lib/mysql
    将mysql的数据文件挂载到数据卷database
  • -e MYSQL_ROOT_PASSWORD=123456
    设置mysql的root用户密码为123456
  • -p 3306:3306
    映射容器端口
  •  

    2. 创建一个php-fpm容器

    sudo docker run --name phpfpm \ --link mysql:mysql \ -v app:/app \ -d php:7.0-fpm

    参数说明

  • –link mysql:mysql
    将此容器与mysql容器通过网络连接起来,在此容器中以后即可以通过主机名(mysql)访问到mysql容器进行链接数据库操作。
  • -v app:/app
    将此容器中的/app目录挂载到数据卷app
  •  

      在这里有个地方需要注意是,默认拉取安装php-fpm是不包含mysql模块的,如果需要使用mysql则需要安装扩展,安装方法如下:

    #进入容器控制台 sudo docker run exec -it nginx /bin/bash #运行安装命令,等待安装跑完即可 docker-php-ext-install pdo_mysql mysqli

     

    3.创建一个nginx容器

    sudo docker run --name nginx \ --link phpfpm:phpfpm \ --link mysql:mysql \ -v /home/wbspool/product/nginx/conf:/etc/nginx \ -v app:/app \ -p 8081:8081 \ -d nginx

    参数说明

  • –link phpfpm:phpfpm
    将此容器与phpfpm通过网络连接起来,这样在nginx容器里就可以访问到phpfpm容器里提供的phpfpm服务。
  • –link mysql:mysql
    将此容器与mysql容器通过网络连接起来,在此容器中以后即可以通过主机名(mysql)访问到mysql容器进行链接数据库操作。
  • -v /home/wbspool/product/nginx/conf:/etc/nginx
  • -v app:/app
    将此容器中的/app目录挂载到数据卷app
  •  

    4.修改nginx配置文件

    • 在/etc/nginx/conf.d添加一个配置文件blog.conf,内容如下:
    server { listen 8081; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; root /app/blog; #设置博客程序的根目录,这里映射的是数据卷app内的blog文件夹 index index.html index.htm index.php; if (!-e $request_filename) { rewrite ^(.*)$ /index.php$1 last; } #phpfpm配置文件 location ~ .*\.php(\/.*)*$ { fastcgi_pass phpfpm:9000; #在创建容器的时候映射phpfpm的主机名为phpfpm fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }sudo docker restart nginx

    到这里lnmp环境以及基本搭建完成,下一步就是将php程序拷贝到对应的目录进行运行安装即可。

     

    5.拷贝php程序到/app/blog目录,进行部署。

    • 通过docker提供的拷贝
    sudo docker cp typecho/* nginx:/app/blog
    • 运行访问地址,就可以进入typecho的安装界面。
    http://[server_ip]:8081

    如有疑问,可以在下面留言! 

      你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/31611.html

      分享给朋友:

      “apache nifi docker 部署 docker 部署php” 的相关文章

      全面了解扩容:定义、分类及最佳实践

      扩容的定义与重要性 扩容这个词听起来似乎很简单,但它其实蕴含了很多技术细节和实际应用。简单来说,扩容就是对已有系统或设备的能力进行增强,尤其是在存储或处理能力上。想象一下,当你的业务正在快速增长,客户数量激增,原本的系统可能会面临压力,这时扩容就显得尤为重要。通过扩容,我可以在需要的时候增加更多的存...

      甲骨文云免费套餐与ARM CPU优势解析

      甲骨文云(Oracle Cloud)是一个强大的云服务平台,近年来受到了越来越多用户的关注。我自己也曾经探索过这个平台,在这里我想和大家聊聊甲骨文云的免费套餐,这对中小企业以及开发者来说真的是一个不错的选择。免费的套餐不仅简化了入门程序,也为新用户提供了足够的资源来尝试不同的云服务。 甲骨文云的免费...

      续费同价服务器:云服务的透明定价策略与用户优势

      续费同价服务器是什么呢?说白了,就是云服务提供商在定价上采取的一种政策。无论是新用户第一次购买,还是老用户续费,价格都是一样的。这种做法让很多用户感到安心,不用担心下次续费时价格会大幅上涨。这一策略在云服务行业越来越受到重视,也给用户带来了不少好处。 首先,续费同价服务器让价格变得透明。我之前在选择...

      Zgo VPS:高性能虚拟专用服务器的最佳选择

      在2021年,ZgoCloud(最初名为Zgovps)如雨后春笋般成立于美国特拉华州。作为一家新兴的技术公司,我们专注于提供高性能的虚拟专用服务器(VPS),这让我对公司的前景充满了期待。我们最初的使命是为各种用户提供可靠的网络解决方案,而现在我们已经成长为行业内的一股重要力量。 我们的全球数据中心...

      甲骨文云账号如何注销:详尽步骤与注意事项

      甲骨文云账号注销流程 注销甲骨文云账号的流程其实并不复杂,但有几个关键步骤需要认真对待。整个过程主要分为几个部分,包括登录甲骨文云控制台、发起注销请求、查看注销请求状态,以及最后的等待和确认删除。 1.1 甲骨文云控制台的登录 进入甲骨文云控制台的第一步,就是要登录到你的账号。打开浏览器,访问甲骨文...

      GPU租用服务:灵活、高效、经济的计算解决方案

      在今天的科技世界里,GPU租用服务正逐渐成为一种流行的趋势。这种服务允许用户通过云计算平台租用高性能的图形处理单元(GPU),从而完成需要大量计算的任务,比如深度学习、3D渲染或者其他复杂的数据处理。对于很多个人用户或小企业而言,直接购买这些昂贵的硬件并不现实,租用的方式显得更加灵活和经济。 借助G...