0.最新編輯内容請參考:
Dockerfile基于鏡像php:7.2-fpm建構自定義php7.2鏡像https://blog.csdn.net/one312/article/details/105026554 |
1.建立一個Dockerfile 并寫入以下内容:
FROM php:5.6-fpm RUN apt-get update \ #cp -r /etc/apt/sources.list /etc/apt/sources.list.bak \ #修改軟體源 # #&& echo "deb http://mirrors.aliyun.com/debian/ wheezy main non-free contrib" > /etc/apt/sources.list \ #&& echo "deb http://mirrors.aliyun.com/debian/ wheezy-proposed-updates main non-free contrib" >> /etc/apt/sources.list \ #&& echo "deb-src http://mirrors.aliyun.com/debian/ wheezy main non-free contrib" >> /etc/apt/sources.list \ #&& echo "deb-src http://mirrors.aliyun.com/debian/ wheezy-proposed-updates main non-free contrib" >> /etc/apt/sources.list \ # #&& apt-get update \ #切換目錄 && cd /tmp \ #安裝sudo && apt-get install sudo -y \ #安裝vim文本編輯器 && apt-get install vim -y \ #安裝wget下載下傳工具 && apt-get install wget -y \ #安裝網絡管理工具 && apt-get install net-tools -y \ #安裝ping && apt-get install iputils-ping -y \ #安裝telnet && apt-get install telnet -y \ #安裝程序管理指令ps, top, vmstat, w, kill, free, slabtop, and skill && apt-get install procps -y \ #安裝C/C++編譯包,該軟體包,編譯c/c++所需要的軟體包也都會被安裝。 #該包包含gcc,g++,make等` && apt-get install build-essential -y \ #安裝zip依賴 zlib && apt-get install zlib1g-dev -y \ #安裝zip && bash -c "apt-get install unzip -y;" \ #安裝openssh-server 即sshd && apt install -y openssh-server -y \ #給root使用者設定初始密碼123456 && echo root:123456 | chpasswd \ #安裝composer指令 #下載下傳composer.phar && php -r "readfile('https://getcomposer.org/installer');" | php \ #給composer.phar賦可執行權限 #将composer.phar複制到/bin/目錄下并重命名為composer && mv composer.phar /bin/composer \ #檢視composer版本 #composer -v #修改composer鏡像源位址為國内位址 && composer config -g repo.packagist composer https://packagist.phpcomposer.com \ #安裝php擴充 #下載下傳 && wget http://qinqinxia.com/zip-1.13.5.tgz \ #解壓 && tar -zvxf zip-1.13.5.tgz \ #解壓後複制到目錄/usr/local/src && cp -r zip-1.13.5 /usr/local/src \ #切換目錄到/usr/local/src/zip-1.13.5 && cd /usr/local/src/zip-1.13.5 \ #安裝php擴充php-zip # && /usr/local/bin/phpize \ # && ./configure --with-php-config=/usr/local/bin/php-config \ # && make && make install # 擴充所在目錄: #Installing shared extensions: /usr/local/lib/php/extensions/no-debug-non-zts-20131226/ #配置 #cp /usr/local/etc/php/php.ini-development /usr/local/etc/php/php.ini #vim /usr/local/etc/php/php.ini #然後添加配置項extension=zip.so即可 #composer安裝laravel #composer global require laravel/installer ############################################################################ #其中php的官方下載下傳位址 太慢,是以dockerfile中的用的是我自己的站點位址 : #php官網各版本下載下傳位址:https://www.php.net/releases/ #wget https://www.php.net/distributions/php-5.6.40.tar.bz2 #下載下傳太慢可以用迅雷下載下傳後複制過來 |
2.執行以下指令建構鏡像
docker build -t hengda/php5.6-fpm:v1 . 建構成功會有如下提示: ![]() |
以hengda/php5.6-fpm:v1鏡像運作一個容器,并命名容器為 hengda-php
docker run -it --name hengda-php hengda/php5.6-fpm:v1 /bin/bash |
往php.ini檔案中添加php擴充zip.so
extension=zip.so |
進入容器之後安裝laravel 架構源碼
1.進入www目錄執行指令2.在www目錄下,建立composer.json檔案,并寫入如下配置:{ "name": "laravel/laravel", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", "type": "project", "require": { "php": ">=5.5.9", "laravel/framework": "5.2.*" }, "config": { "preferred-install": "dist" }, "repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" } } } 3.在www目錄執行指令composer install執行結果: |