docker安裝php開發環境
安裝前的準備
首先建一個centos的映象
- docker pull centos:7.2.1511(docker 會自動會在你設定的registr mirrors里拉取映象)
拉取完可以看看
- 讓本地的10000埠號來印射到docker的centos容器並且進入到容器
docker run -i -t -p 10000:80 centos:v1 /bin/bash
----------------安裝Nginx+PHP+MySql ----------------------
1.1 安裝或更新gcc gcc-c++
因為我安裝的Centos是絕對純潔滴。啥也沒有。沒轍了。只有先安裝個編譯器了。
1 |
|
1.2 建立需要使用的目錄
source 是用來存放原始碼的資料夾。package是用來存放編譯後的庫檔案。lnmp是我們真正需要的東西才放裡面。(nginx+mysql+memcached+php)
mkdir /download
mkdir /lnmp
cd /download
mkdir package
mkdir source
二、開始安裝(nginx篇)
2.1 解壓pcre
命令流程:
說明:不需要編譯,只需要解壓就行。
2.2 解壓zlib
命令流程:
1 2 3 |
|
說明:不需要編譯,只需要解壓就行。zlib版本不對的話,自己去http://zlib.net上看一下版本,然後修改版本即可
2.3 安裝nginx
命令流程:
1 2 3 4 5 6 7 |
|
--with-pcre:用來設定pcre的原始碼目錄。
--with-zlib:用來設定zlib的原始碼目錄。
因為編譯nginx需要用到這兩個庫的原始碼。
小章總結:
此處告一段落,nginx安裝完成。我們可以先滿足下自己的慾望心。開啟nginx服務看看Hello World吧。
啟動nginx
1 |
|
啟動後可以再瀏覽器中開啟頁面,會顯示nginx預設頁面。127.0.0.1:10000
三、開始安裝(php篇)
3.1 安裝libxml2
命令流程:
1 2 3 4 5 6 7 8 |
|
這裡--with-python=no是
3.2 安裝php
命令流程:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
(由於程式碼比較長,這裡把其複製出來給大夥看看:./configure --prefix=/lnmp/php --with-libxml-dir=/package/libxml2 --with-config-file-path=/lnmp/php/etc --enable-mbstring --enable-fpm --with-mysqli)
四、開始安裝(mysql篇) 4.1 安裝cmake 命令流程: cd /downlaod/source/ wget https://cmake.org/files/v3.12/cmake-3.12.0.tar.gz tar -zxvf cmake-3.12.0.tar.gz cd cmake-3.12.0 ./configure --prefix=/package/cmake
4.2 安裝ncurses 命令流程: tar -zxvf ncurses-6.1.tar.gz cd ncurses-6.1
4.3 安裝mysql 命令流程: 不帶boost安裝方式
自帶boost安裝試
說明:mysql從5.7版本後就需要boost庫的支援了。並且非常噁心的是mysql需要指定的boost版本號,高了或低了都有可能導致編譯不通過。 注意:這裡安裝mysql報錯了說下載boost失敗啥的,採用其他的安裝方式,先把boost下載下來,然後再安裝的 有參考這篇文章:https://blog.csdn.net/u011641865/article/details/73498533 但是還是安裝失敗,然後就直接把boost下載下來,編譯MySQL時直接用
# cd /download/source/
到此,使用CentOS7上常用的、全新的Web模組基本已經完成了,剩下的就是對這些軟體進行配置咯。哈哈,其實程式碼多,但是瞭解後真的挺簡單,就那幾個命令。怎麼樣?是不是蠻簡單的。 ----------------配置Nginx+PHP+MySql ------------------------ 一、準備工作 1.1 安裝vim
二、開始配置(nginx篇) 2.1 修改nginx.conf
2.2 找到如下內容,並刪除紅色標記的字元
2.3 修改完成
可以新建一個vhost檔案,先把nginx.conf的80埠的server註釋 然後加入這個 include vhost/*; 然後cd vhost 裡 新建 default.80.conf檔案 server { #charset koi8-r; #access_log logs/host.access.log main; location / { #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # deny access to .htaccess files, if Apache's document root 2.4 關閉nginx
2.5 啟動nginx
小章總結: 完成上面的修改就可以讓nginx來轉發php的動態指令碼請求。 不過目前還不能開啟php檔案,因為還沒有開啟php-fpm。 我們繼續向下看。 三、開始配置(php-fpm) 3.1 copy預設配置檔案
3.2 執行php-fpm
二、常用命令 nginx常用命令 啟動nginx
重啟nginx
關閉nginx
php-fpm常用命令 啟動php-fpm
重啟php-fpm
關閉php-fpm
配置alias: cd /lnmp/php/etc vi php-fpm.conf 把;pid = run/php-fpm.pid前面的#號去掉 vi ~/.bash_profile 新增: alias nginx.start='/lnmp/nginx/sbin/nginx' alias php.start='/lnmp/php/sbin/php-fpm -c /lnmp/php/etc/php.ini' #開啟php-fpm 報存,執行source ~/.bash_profile 現在 開啟NGINX:nginx.start 平滑重啟NGINX:nginx.reload 關閉NGINX:nginx.stop 開啟php-fpm:php.start 關閉php-fpm:php.stop 重啟php-fpm: php.restart ############mysql的配置######### 1、新增mysql使用者和組 groupadd mysql useradd -g mysql mysql 2、初始化配置表 cd /usr/local/mysql chown -R mysql:mysql . 注意: 5.7之後 bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 5.7之前: ./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/data 此時會給你一個預設的mysql的root使用者登入密碼 --user 啟動mysql的使用者 --basedir mysql安裝目錄 --datadir mysql資料倉庫目錄 將mysql/目錄下除了data/目錄的所有檔案,改回root使用者所有,mysql使用者只需作為mysql/data/目錄下所有檔案的所有者。
複製配置檔案 cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf mysql5.7配置檔案需要修改my.cnf關鍵配置, mysql5.7之前預設配置檔案中是有配置項的,不用手動修改 注意,tmp目錄不存在,請建立之。否則會出錯 建立後要賦予mysql許可權, 如果mysql.sock指定到/tmp以外的目錄,需要在my.cnf中新增[client]並且指定socket位置, 否則登入mysql時會報錯:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 應該是,預設會找tmp目錄下的sock檔案 4. 將mysqld服務加入開機自啟動項。 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql #chmod +x /etc/init.d/mysql 並設定可執行許可權 (這樣就可以使用service mysql命令啟動/停止服務,否則就只能使用{mysql}/bin/mysqld_safe &命令來啟動服務) 把mysql註冊為開機啟動的服務 chkconfig --add mysql 檢視是否新增成功 chkconfig --list mysql 5.mysql服務的開啟和關閉
注:在bin/mysqld_safe&這個啟動腳本里已預設設定--user=mysql;在指令碼末尾加&表示設定此程序為後臺程序,區別就是在控制檯輸入bg,即可將當前進 程轉入後臺, 當前shell 可進行其他操作。 bin/mysqladmin -uroot -p (注意此時的root是指mysql的root使用者) 需要把mysqll加入到環境變數中,或者為mysql建立軟連結 否則執行mysql命令會出現 -bash: mysql:command not found 不加環境變數,就要使用bin/mysql -uroot -p 或者bin/mysqladmin -uroot -p 命令來登入mysql服務 建立軟連結: ln -s /usr/local/mysql/bin/mysql /usr/local/bin/ 6.加入環境變數 export PATH=$PATH:/usr/local/mysql/:/local/mysql/bin 7.登入mysql服務 執行:mysql -uroot -p生成的密碼 連上後,在做任何操作前,mysql要求要改掉root的密碼後才能進行操作。 注意: 1、當登入報錯: 是由於原始碼安裝導致的,我們需要修改原始碼 修改檔案: cd /download/source/mysql-5.7.10 vi cmd-line-utils/libedit/terminal.c 把terminal_set方法中的 char buf[TC_BUFSIZE]; 這一行註釋,再把 area = buf;改為 area = NULL; 之後重新通過cmake,make;make install,重灌mysql之後正常。 2、-bash: service: command not found 輸入: yum list | grep initscripts 會出現 initscripts.x86_64 9.49.30-1.el7_2.3 updates 然後yum安裝 yum install initscripts 3、區域網連線docker裡的資料庫 docker run -i -t -p 10001:80 -p 32769:3306 centos:v2 /bin/bash 用本地的32769印射容器的3306埠 進入容器,給mysql新增一個test使用者 host許可權為% grant all on *.* to [email protected]'%' identified by 'test'; flush privileges; navicat連線 可以用下面指令查容器ip docker inspect 容器id | grep IPAddress 開啟多埠轉發到容器:docker run -i -t -p 10001:80 -p 32769:3306 centos:v2 /bin/bash 參考: 訊號解釋:
|
相關推薦
docker安裝php開發環境
安裝前的準備 首先建一個centos的映象 docker pull centos:7.2.1511(docker 會自動會在你設定的registr mirrors里拉取映象) 拉取完可以看看 讓本地的10000埠號來印射到docker的centos容器並且進入到容器
ubuntu安裝php開發環境
bst magic bind -i deb var NPU fault ubuntu 一,安裝 ubuntu 工具 sudo apt install -y git curl zsh vim 二,安裝php 和 php-fpm , redis ,memcached 等
Windows下安裝PHP開發環境
說明 zip 系統 () html fin php zip 官網 安裝配置 一、Apache 因為Apache官網只提供源代碼,如果要使用必須得自己編譯,這裏我選擇第三方安裝包Apache Lounge。 進入Apachelounge官方下載地址:http://www.a
Mac安裝PHP開發環境遇到的問題
目前的開發環境為 XAMPP + Eclipse 1、終端輸入mysql,提示command not found 原因:輸入命令時,系統預設會查詢/usr/bin下的命令,如果這個命令不在這個目錄下,當然會找不到命令,我們需要做的就是對映一個連結到/usr/bin目錄下,相當於建立一個
使用Docker構建PHP開發環境
PHP開發環境中的一些服務之間是需要通訊的,例如nginx和php-fpm,PHP和MySQL,PHP和redis等都需要通訊,如果採用宿主機埠對映的方式可以滿足網路通訊但是效率和安全性都會減弱,所以可以使用Docker的網路指令來構建一個互通的網路,下面列出想用的網路命令。 建立網路 do
docker篇2-使用Docker構建PHP開發環境
PHP開發環境中的一些服務之間是需要通訊的,例如nginx和php-fpm,PHP和MySQL,PHP和redis等都需要通訊,如果採用宿主機埠對映的方式可以滿足網路通訊但是效率和安全性都會減弱,所以可以使用Docker的網路指令來構建一個互通的網路,下面列出常用的網路命令。 建立網路
docker 搭建php開發環境
本地環境: ubuntu15.10 +docker 關於安裝docker ,網上有很多文章,官網也有教程,這裡不再講述. 這裡需要用到的映象有 php:5.6-fpm mysql:latest mongo:latest nginx:1.9.6
centOS7mini安裝PHP開發環境3——Redis、Memcache
原始碼安裝redis 配置檔案:/home/sy/local/redis3.2.9/redis.conf 啟動命令: redis-server & 啟動redis,加上&表示使redis以後臺程
mac安裝php開發環境
安裝xcode: 從App Store搜尋下載xcode,自動安裝。安裝homebrew: 去官網brew.sh,有最新下載地址,貼上到終端即可,需要先有xcode。安裝mysql:用homebrew安裝,只需要一條命令即可,brew install mysql。 apach
Mac上通過docker配置PHP開發環境
這篇文章介紹的內容是關於Mac上通過docker配置PHP開發環境,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下 更多PHP相關知識請關注我的專欄PHPzhuanlan.zhihu.com 安裝docker 關於MAC上安裝docker網上有很多文章介紹,這裡我就不在做描述了,順便提一句,建
Docker for Windows安裝與Linux+PHP開發環境搭建(二)
Docker for Windows安裝與Linux+PHP開發環境搭建(二) 上一篇講了docker安裝與環境搭建的步驟,這一次主要是介紹過程中遇到的錯誤情形及其錯誤處理方法: 1).執行docker pull local.registry.com:5000/php 或其他連線本地
Docker for Windows安裝與Linux+PHP開發環境搭建(一)
Docker是什麼? 簡單得來說,Docker是一個由GO語言寫的程式執行的“容器”(Linux containers, LXCs); 目前雲服務的基石是作業系統級別的隔離,在同一臺物理伺服器上虛擬出多個主機。Docker則實現了一種應用程式級別的隔離; 它改變我們基本的開發、操作單元,
PHP開發環境&MySQL下載安裝及配置流程
str gb2312 sni _array 連接 login log res apache2 PHP開發環境&MySQL下載安裝及配置流程 因工作須要,從0開始學PHP,前幾天看完視頻教程後開始搞開發環境,到今天才好。這裏把安裝配置流程梳理一下分享
Vagrant 搭建跨平臺的 PHP 開發環境 (一)安裝 ubuntu 虛擬機器
Vagrant是一個軟體,可以自動化虛擬機器的安裝和配置流程,支援 VirtualBox 、VMware 、AWS 作為虛擬機器以 VirtualBox 為例,步驟如下: Windows 10 系統中 需要關閉 Hyper-v , 小米筆記本中 biso 中找不到 虛擬化配置,關閉 Hyper-v 就可以了
Vagrant 搭建跨平臺的 PHP 開發環境 (一)安裝 ubuntu 虛擬機
刪除 des 添加 ans com 操作系統 nsh list 找不到 Vagrant是一個軟件,可以自動化虛擬機的安裝和配置流程,支持 VirtualBox 、VMware 、AWS 作為虛擬機以 VirtualBox 為例,步驟如下: Windows 10 系統中 需要
PHP開發環境搭建一:PHP整合環境XAMPP的安裝與配置
1. XMAPP簡介 XAMPP(Apache+MySQL/MariaDB+PHP+Perl)開頭的X代表X-OS,代表可以在任何常見作業系統下使用,包括Windows、Mac、Linux,開源平臺。 XAMPP(Apache+MySQL+PHP+PERL)是一個
PHP開發環境搭建一:PHP整合環境XAMPP 的安裝與配置
1. XMAPP簡介 XAMPP(Apache+MySQL/MariaDB+PHP+Perl)開頭的X代表X-OS,代表可以在任何常見作業系統下使用,包括Windows、Mac、Linux,開源平臺。 XAMPP(Apache+MySQL+PHP+PERL)是一個
PHP開發搭建環境二:開發工具PhpStorm安裝、啟用以及配置 PHP開發環境搭建一:PHP整合環境XAMPP 的安裝與配置
關於php的開發工具很多,目前市面上最好用最強大的莫過於PhpStorm這款開發神器了,但是鑑於很多開發者朋友在網站上下載的PhpStorm開發工具不能用,或者使用起來很不方便,筆者把最好用的下載地址及免費啟用教程共享出來。 一、安裝並配置整合環境XAMPP 具體可以參考我的這篇部落格:P
PHP開發環境搭建:PHP整合環境XAMPP 的安裝與配置
1. XMAPP簡介 XAMPP(Apache+MySQL/MariaDB+PHP+Perl) 開頭的X代表X-OS,代表可以在任何常見作業系統下使用,包括Windows、Mac、Linux,開源平臺。 XAMPP(Apache+MySQL+PHP+PERL)是一個功
Idea 安裝以及破解 ,以及在Idea中搭建PHP開發環境
4. php.ini 中增加一下: zend_extension=php_xdebug-2.6.1-7.1.dll [Xdebug] zend_extension_ts=php_xdebug-2.6.1-7.1.dll ;xdebug.remote_host=