Docker配置PHP開發(fā)環(huán)境教程
前言
筆者用的是mac開發(fā),但是mac自帶的php功能安裝十分不方便,并且和線上的linux開發(fā)環(huán)境不一致。在沒有用docker之前一直用vagrant配置的centos的php開發(fā)環(huán)境,但是自從有了docker之后,就不再用vagrant了。
配置自己的php鏡像
首先在自己的任意一個目錄下創(chuàng)建如下三個文件
run.sh
#!/bin/bash /usr/sbin/php-fpm7.0 /usr/sbin/nginx tailf /etc/apt/sources.list
sources.list
# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties deb http://mirrors.aliyun.com/ubuntu/ xenial universe deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties deb http://archive.canonical.com/ubuntu xenial partner deb-src http://archive.canonical.com/ubuntu xenial partner deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
Dockerfile
FROM ubuntu:16.04 # =========================== # 配置虛擬主機(jī) # -v default:/etc/nginx/sites-enabled/default # 配置程序目錄 # -v web:/var/www/html # 配置映射端口 # -p 8008:80 # =========================== MAINTAINER chengtao "751753158@qq.com" ADD sources.list /etc/apt/sources.list ADD run.sh /root/run.sh RUN chmod +x /root/run.sh RUN apt-get update RUN apt-get install -y php-fpm php-mysql nginx RUN sed -i 's/;date.timezone =/date.timezone = Asia\/Shanghai/' /etc/php/7.0/fpm/php.ini RUN mkdir -p /run/php/ EXPOSE 80 CMD ["/bin/bash","/root/run.sh"]
執(zhí)行命令
docker build -t d1studio:php-base:0.1 .
配置php mysql開發(fā)環(huán)境
mkdir -p ~/projects/php-app cd ~/projects/php-app mkdir mysql mkdir www
www/index.php
<?php phpinfo();
nginx.conf
server { listen 80 default_server; root /var/www/html; index index.html index.htm index.php; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.0-fpm.sock; } }
docker-compose.yml
version: '2' services: mysql: image: mysql:5.6 volumes: - ./mysql/:/var/lib/mysql/ ports: - "3307:3306" environment: - MYSQL_ROOT_PASSWORD=123456 php-app: image: d1studio/php-base:0.1 ports: - "8009:80" volumes: - ./nginx.conf:/etc/nginx/sites-enabled/default - ./www/:/var/www/html/ links: - mysql
開啟php的測試項(xiàng)目
#開啟 docker-compose up #關(guān)閉 docker-compose down
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
- docker靈活的構(gòu)建PHP環(huán)境的實(shí)現(xiàn)
- win10 docker-toolsbox 搭建php開發(fā)環(huán)境的教程
- docker搭建php+nginx+swoole+mysql+redis環(huán)境的方法
- Docker搭建自己的PHP開發(fā)環(huán)境
- 利用docker搭建php7和nginx運(yùn)行環(huán)境全過程(官方鏡像)
- Docker搭建 Nginx+PHP+MySQL 環(huán)境并部署WordPress實(shí)踐
- 詳解Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案
- Docker 如何布置PHP開發(fā)環(huán)境
- 搭建基于Docker的PHP開發(fā)環(huán)境的詳細(xì)教程
- Docker搭建php環(huán)境教程詳解
相關(guān)文章
壞狼php學(xué)習(xí) 計(jì)數(shù)器實(shí)例代碼
首先進(jìn)入phpmyadmin建立1個數(shù)據(jù)庫命名為db,然后建立幾個表.name是用戶badwolf的訪問記數(shù),IP是存來訪IP,new是存數(shù).2008-06-06《PHP編程最快明白》第六講:Mysql數(shù)據(jù)庫操作
如果一行代碼搞不定你要的功能,該怎么辦?2010-11-11