laradock使用问题汇总

laradock简介

一套完整的基于Docker的PHP开发环境.包含了预先打包的Docker镜像,所有预先配置都是为了提供一个完美的PHP开发环境(中文文档).PS: 不是最新版的 windows10 或者 Windows Server 2016,需要借助 Docker Toolbox 来进行安装使用 Docker

问题

一 : raw.githubusercontent.com Connection refused

原因 : raw.githubusercontent.com域名的DNS解析被污染,无法获取正确的ip地址

解决方案:

  1. 打开https://www.ipaddress.com/ 输入域名,获取到正确的ip
  2. 在本机的 host 文件中添加(linux系统: sudo vi /etc/hosts)

199.232.68.133 raw.githubusercontent.com
199.232.68.133 user-images.githubusercontent.com
199.232.68.133 avatars2.githubusercontent.com
199.232.68.133 avatars1.githubusercontent.com

二 :

原因 : window下项目目录未添加到docker文件共享中

解决方案 : 在容器构建时左下角消息提示中点击"share it", 或是按如下图添加:

添加共享

三 : Service 'php-fpm' failed to build: The command '/bin/sh -c if

原因 : 原php-fpm的Dockerfile文件配置项不适用

解决方案 : /laradock/php-fpm/Dockerfile:684改成如下:

###########################################################################
# IMAP:
###########################################################################

ARG INSTALL_IMAP=false

RUN if [ ${INSTALL_IMAP} = true ]; then \
    apt-get install -y libc-client-dev libkrb5-dev && \
    set -eux; \
    PHP_OPENSSL=yes docker-php-ext-configure imap --with-kerberos --with-imap-ssl; \
    docker-php-ext-install imap \
;fi

四 : mysql容器无法启动(确认端口没有被占用) ,log报错 InnoDB: Table flags are 0 in the data dictionary but the flags in file ./ibdata1 are 0x4800!

原因 : laradock数据目录写入问题

解决方案:

  1. 清空~/.laradock/data/mysql文件夹
  2. 修改.env文件.DATA_PATH_HOST=~/.laradock/data 为: DATA_PATH_HOST=./data(在当前目录新建data文件夹)

二选一,之后重启容器:

docker-compose up -d mysql

五 : mysql/redis等启动成功但连接失败

解决方案:
laravel项目中的.env文件中作如下修改:

DB_HOST=127.0.0.1 改成 DB_HOST=mysql #容器名

REDIS_HOST=127.0.0.1 改成 REDIS_HOST=redis

posted @ 2020-11-05 09:51  coding在路上~  阅读(888)  评论(0编辑  收藏  举报