[進階篇]docker編排PHP開發壞境

圖片描述

Docker是一個開源的引擎,能夠輕鬆的爲任何應用建立一個輕量級的、可移植的、自給自足的容器。開發者在筆記本上編譯測試經過的容器能夠批量地在生產環境中部署,包括VMs(虛擬機)、bare metal、OpenStack 集羣和其餘的基礎應用平臺。容器技術是繼大數據和雲計算以後又一煊赫一時的技術,並且將來至關一段時間內都會很是流行。

概述

因爲本人經常使用Windows電腦就索性就選擇win10系統來使用docker,因爲docker在win10如下運行須要安裝虛擬機,果斷的升級到win0專業版,win10所提供的Hyper-V服務(目前僅專業版、企業版支持)完美解決了運行虛擬機各類卡的問題。php

  • 本文主要使用docker-compose編排PHP基本環境:mysql

    • 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

使用方法

  1. clone項目nginx

    $ git clone https://github.com/LoyaltyLu/docker.git
  2. Linux下須要將當前用戶加入docker用戶組git

    $ sudo gpasswd -a ${USER} docker
  3. 啓動環境github

    $ cd dockerphp
    $ docker-compose up
  4. 初次啓動須要初始化鏡像編譯環境因此時間稍微長點就要看服務器或本身網速
  5. 安裝成功後訪問localhost

clipboard.png

容器基本使用介紹

容器使用networks方式進行通訊

日誌查看

log文件生成位置可在conf下配置文件中自行更改,更改時須要相對應更改docker-compose對應映射目錄,以便對日誌數據持久化存儲sql

composer

在PHP容器中默認安裝composer進入容器後便可使用。docker

  • 容器進入:bash

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

phpMyAdmin

phpMyAdmin 暴露端口:8080服務器

phpRedisAdmin

phpRedisAdmin 暴露端口:8081composer

使用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容器。

相關文章
相關標籤/搜索