资讯专栏INFORMATION COLUMN

[进阶篇]docker编排PHP开发坏境

kevin / 1641人阅读

摘要:开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括虚拟机集群和其他的基础应用平台。容器进入容器名暴露端口暴露端口使用调试环境中安装了调试,需对进行配置后启用,配置如下配置完成后需要重启下容器。

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行。
概述

由于本人常用Windows电脑就索性就选择win10系统来使用docker,由于docker在win10以下运行需要安装虚拟机,果断的升级到win0专业版,win10所提供的Hyper-V服务(目前仅专业版、企业版支持)完美解决了运行虚拟机各种卡的问题。

本文主要使用docker-compose编排PHP基本环境:

nginx

PHP

MySQL

Redis

MySQL在线管理

Redis在线管理

适用于Windows、Linux、MacOs部署PHP运行环境
结构简介

目录结构
├── conf                    配置文件目录
│   ├── conf.d              Nginx用户站点配置目录
│   ├── nginx.conf          Nginx默认配置文件
│   ├── mysql.cnf           MySQL用户配置文件
│   ├── php-fpm.conf        PHP-FPM配置文件(部分会覆盖php.ini配置)
│   └── php.ini             PHP默认配置文件
├── docker-compose.yml      PHP最新版docker-compose项目文件
├── log                     Nginx日志目录
├── mysql                   MySQL数据目录8.0
├── php                     PHP7.2
└── www                     PHP代码目录
使用前需要搭建 git、docker、docker-compose
使用方法

clone项目

$ git clone https://github.com/LoyaltyLu/docker.git

Linux下需要将当前用户加入docker用户组

$ sudo gpasswd -a ${USER} docker

启动环境

$ cd dockerphp
$ docker-compose up

初次启动需要初始化镜像编译环境所以时间稍微长点就要看服务器或自己网速

安装成功后访问localhost

容器基本使用介绍
容器使用networks方式进行通信
日志查看

log文件生成位置可在conf下配置文件中自行更改,更改时需要相对应更改docker-compose对应映射目录,以便对日志数据持久化存储

composer

在PHP容器中默认安装composer进入容器后即可使用。

容器进入:

$ docker exec -it <容器名> /bin/bash

phpMyAdmin

phpMyAdmin 暴露端口:8080

phpRedisAdmin

phpRedisAdmin 暴露端口:8081

使用XDEBUG调试

环境中安装XDEBUG了调试,需对php.ini进行配置后启用,配置如下:

[XDebug]
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "172.17.0.1"
xdebug.remote_port = 9000
xdebug.remote_log = "/var/log/dnmp/php.xdebug.log"

配置完成后需要重启下PHP容器。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27437.html

相关文章

  • [进阶]docker编排PHP开发坏境

    摘要:开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括虚拟机集群和其他的基础应用平台。容器进入容器名暴露端口暴露端口使用调试环境中安装了调试,需对进行配置后启用,配置如下配置完成后需要重启下容器。 showImg(https://segmentfault.com/img/bVbgmdS?w=567&h=272); Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻...

    PingCAP 评论0 收藏0
  • 一套基础自动化部署搭建过程

    摘要:问题背景公司初创技术团队,没有任何基础设施的情况下,需要搭建一系列管理以及自动化部署等工具所以引发了下面一系列的部署过程,历时两天,中间也是碰到各种问题,但最终把基本工具全部搭建成功,耶,下面带大家一起看下此次搭建过程。 问题背景 公司初创技术团队,没有任何基础设施的情况下,需要搭建一系列code管理以及自动化部署等工具....所以引发了下面一系列的部署过程,历时两天,中间也是碰到各种...

    mzlogin 评论0 收藏0
  • Redis哨兵机制

    摘要:哨兵机制的原理及实现是一个分布式架构,其中包含若干个节点和数据节点,每个节点会对数据节点和其余节点进行监控,当它发现节点不可达时,会对节点做下线标识。故障转移后整个的结构重新选举了新的主节点。技巧节点不应该部署在一台物理机器上。 showImg(https://segmentfault.com/img/bVboQYV?w=800&h=267); 概述 上篇文章主要说了Redis 复制的...

    Ashin 评论0 收藏0
  • Linux docker-compose 实战

    摘要:是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的可移植的自给自足的容器。容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行。 showImg(https://segmentfault.com/img/bVbgmdS?w=567&h=272); Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔...

    justCoding 评论0 收藏0
  • Linux docker-compose 实战

    摘要:是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的可移植的自给自足的容器。容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行。 showImg(https://segmentfault.com/img/bVbgmdS?w=567&h=272); Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔...

    Luosunce 评论0 收藏0

发表评论

0条评论

kevin

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<