git clone https://github.com/laradock/laradock.git
下載Laradock文件谷遂,運(yùn)用在多項(xiàng)目的場(chǎng)景里执泰。
修改.env項(xiàng)目目錄
APP_CODE_PATH_HOST=../
修改源路徑
WORKSPACE_COMPOSER_REPO_PACKAGIST=https://mirrors.aliyun.com/composer/
WORKSPACE_NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node
WORKSPACE_NPM_REGISTRY=https://registry.npmmirror.com
開始安裝
docker-compose up -d nginx mysql phpmyadmin redis workspace
安裝 redis出錯(cuò)遵湖,pecl走不通泳桦,需要修改redis安裝的腳本通過編譯安裝
編輯php-fpm/Dockerfile景用,替換redis安裝腳本
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
? ? # Install Php Redis Extension
? ? if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
? ? ? curl -L -o /tmp/reids.tar.gz "https://codeload.github.com/phpredis/phpredis/tar.gz/4.3.0"; \
? ? else \
? ? ? curl -L -o /tmp/reids.tar.gz "https://codeload.github.com/phpredis/phpredis/tar.gz/5.0.2"; \
? ? fi \
? ? && cd /tmp \
? ? && tar -xzf reids.tar.gz \
? ? && docker-php-source extract \
? ? && mv phpredis-5.0.2 /usr/src/php/ext/phpredis \
? ? && ls -l /usr/src/php/ext | grep redis \
? ? && docker-php-ext-install phpredis \
? ? && php -m | grep redis \
? ? && rm -rf /tmp/reids.tar.gz \
;fi
安裝 ast 出錯(cuò)盗迟,pecl走不通坤邪。
AST 公開了 PHP 7+ 生成的抽象語(yǔ)法樹。PHP 的靜態(tài)分析器等工具需要此擴(kuò)展罚缕。
修改workspace/Dockerfile文件
通過IPAddress.com首頁(yè),輸入raw.githubusercontent.com查詢到真實(shí)IP地址后修改etc/hosts文件艇纺,加入以下代碼
199.232.68.133 raw.githubusercontent.com
對(duì)于pecl 安裝的軟件,可以修改Dockfile文件邮弹,使用具體到版本號(hào)的安裝文件
修改php-fpm/Dockfile
else \
? ? ? # pecl install http://pecl.php.net/get/imagick; \
? ? ? curl -L -o /tmp/imagick.tar.gz "https://pecl.php.net/get/imagick-3.7.0.tgz" \
? ? ? && chmod +x /tmp/imagick.tar.gz \
? ? ? && cd /tmp \
? ? ? && tar -xzf imagick.tar.gz \
? ? ? && docker-php-source extract \
? ? ? && mv imagick-3.4.3 /usr/src/php/ext/imagick \
? ? ? && ls -l /usr/src/php/ext | grep imagick \
? ? ? && docker-php-ext-install imagick \
? ? ? && php -m | grep imagick \
? ? ? && rm -rf /tmp/imagick.tar.gz \
? ? ; fi && \
重新啟動(dòng)后黔衡,報(bào)3306和80端口被占用,無(wú)法啟用腌乡。需要在任務(wù)管理器中把mysqld相關(guān)的進(jìn)程結(jié)束掉盟劫。
netstat -aon|findstr "80"
報(bào)80端口被system(PID=4)占用,無(wú)法啟用与纽。需要關(guān)閉windows10的http服務(wù)侣签。
通過下面的命令結(jié)束進(jìn)程
net stop http
最后再跑一啟用命令塘装,一次成功
docker-compose up -d nginx mysql phpmyadmin redis workspace