php7 安裝yar 生成docker鏡像
Docker包含三個(gè)概念:
(1)遠(yuǎn)程倉(cāng)庫(kù)即遠(yuǎn)程鏡像庫(kù)所有鏡像的聚集地(不可進(jìn)入操作)。
(2)本地鏡像即從遠(yuǎn)程倉(cāng)庫(kù)拉取過來的鏡像
(3)運(yùn)行起來的本地鏡像叫做容器(分層的可操作)
Docker使用:
1.首先通過第三方鏡像庫(kù)(c.163.com)拉取相應(yīng)的信息比如centos,ubuntu,tomcat等作為基礎(chǔ)鏡像。
Docker pull xxxx
2.運(yùn)行下載好的鏡像。
Docker run -dt -p 宿主機(jī)端口:鏡像端口 --name起一個(gè)名字 鏡像id/鏡像名字 bash
-d 后臺(tái)運(yùn)行
-t 生成一個(gè)偽終端
-p 指定端口
--name 為運(yùn)行的容器起一個(gè)名字
3.進(jìn)入容器有兩種方法
(1)docker exec -it容器名字/容器id bash(ctrl+d退出時(shí)不會(huì)停止該運(yùn)行的容器)
(2)Docker attach 容器名字/容器id (ctrl+d退出時(shí)會(huì)停止該運(yùn)行的容器)
4.開始下載編譯環(huán)境所需的相應(yīng)的工具和所需的依賴包
(1)yum安裝wget以及編譯的工具 yum install -y wget gcc gcc-c++ make openssl-devel
(2)更新國(guó)內(nèi)yum源
Wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/xxx/ Xxx表示你要選擇的yum源 -O 下載并以不同的文件名保存 CentOS-Base.repo 表示命名的yum源
(3)下載各個(gè)版本的nginx版本
Wget http://nginx.org/download/xxx Xxx表示你要選擇的nginx的版本
(4)下載pcre
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/xxx
Xxx表示選擇的版本
(5)更新yum確保最新的
Yum update
(6)下載php7
選擇版本,選擇國(guó)界
(7)把以上下載的東西全部粘貼到/usr/local/src 并且全部解壓
(8)編譯nginx
(1)創(chuàng)建nginx用戶
groupadd -r nginx useradd -r -g nginx nginx
(2)編譯安裝nginx
cd xxx 切換到您的nginx目錄 ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.37 ./configure參數(shù)說明: --prefix=指定文件的安裝目錄 --user=指定用戶 --group指定用戶組 --with-使用已有的軟件包和庫(kù)文件 Make && make install 出現(xiàn)問題自行百度 echo "daemon off;" >> /usr/local/nginx/conf/nginx.conf #在nginx的配置文件里加上這一行很關(guān)鍵,這樣nginx可以在docker啟動(dòng)的時(shí)候在后臺(tái)運(yùn)行!
(9)編譯php
(1)準(zhǔn)備php的依賴包
yum install -y bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel
(2)進(jìn)入php文件目錄
(3)開始編譯php
./configure --prefix=/usr/local/php --with-zlib-dir --with-freetype-dir --enable-mbstring --with-libxml-dir=/usr/local/libxml --enable-soap --enable-calendar --with-curl --with-mcrypt --with-zlib --with-gd --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-exif --enable-bcmath --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-pdo-mysql --with-mysqli --with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr/local/libpng --enable-gd-native-ttf --with-openssl --with-fpm-user=www --with-fpm-group=www --with-libdir=lib64 --enable-ftp --with-imap --with-imap-ssl --with-kerberos --with-gettext --with-xmlrpc --with-xsl --enable-opcache --enable-fpm --enable-xml --enable-shmop --enable-session --enable-ctype --with-iconv-dir --with-iconv
注:出現(xiàn)問題自行百度。
(4)make && make install
(5)準(zhǔn)備php配置文件
cp php.ini-production /etc/php.ini cd /usr/local/php/etc cp php-fpm.conf.default php-fpm.conf
(6)修改配置文件
;daemonize = yes的注釋去掉,并把yes改為no
(7)安裝yar拓展
(1)安裝二進(jìn)制打包協(xié)議msgpack
find / -name phpize 查找phpize是否存在 yum install php-devel pecl install msgpack
注:出現(xiàn)問題自行百度
(2)下載yar wget http://pecl.php.net/get/xxx
Xxx表示版本 確定好與php版本對(duì)照這個(gè)很重要。
(3)解壓編譯tar -zxvf yar-2.0.0.tgz
(4)cd cd yar-2.0.0
(5)/usr/bin/phpize
(6)./configure --with-php-config=/usr/bin/php-config7.0*
(7)make && make install
(8)如果出現(xiàn)模塊未安裝可 php --ini 查看ini路徑相對(duì)調(diào)整
(9)docker commit -m "描述" -a "作者" 容器id 倉(cāng)庫(kù)信息mydocker/nginx:版本信息v1
(10)docker save xxx > /home/save.tar
(11)Docker load xxx
如果編譯安裝過程中報(bào)錯(cuò),按照?qǐng)?bào)錯(cuò)提示的去用yum解決依賴關(guān)系;如果當(dāng)前的yum源解決不了,那么可以試試:
wget http://www.atomicorp.com/installers/atomic chmod +x atomic ./atomic yum install -y XXX XXX
以上所述是小編給大家介紹的php7 安裝yar 生成docker鏡像,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
thinkPHP5框架實(shí)現(xiàn)分頁(yè)查詢功能的方法示例
這篇文章主要介紹了thinkPHP5框架實(shí)現(xiàn)分頁(yè)查詢功能的方法,結(jié)合實(shí)例形式分析了thinkPHP5實(shí)現(xiàn)分頁(yè)查詢功能的相關(guān)控制器、模板等操作技巧,需要的朋友可以參考下2018-03-03php is_writable判斷文件是否可寫實(shí)例代碼
這篇文章主要介紹了php is_writable判斷文件是否可寫實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2016-10-10將PHP的session數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中的代碼實(shí)例
這里我們將分享兩個(gè)將PHP的session數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中的代碼實(shí)例,分別針對(duì)PostgreSQL與MySQL,需要的朋友可以參考下2016-06-06thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實(shí)例詳解
這篇文章主要介紹了thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-08-08PHP實(shí)現(xiàn)會(huì)員注冊(cè)系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了PHP實(shí)現(xiàn)會(huì)員注冊(cè)系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-01-01thinkPHP5.0框架引入Traits功能實(shí)例分析
這篇文章主要介紹了thinkPHP5.0框架引入Traits功能,結(jié)合實(shí)例形式分析了Traits的概念、功能及thinkPHP5.0中Traits功能的使用方法,需要的朋友可以參考下2017-03-03