docker 真香?laradock 三天踩坑之旅,拒绝访问。
话说一直都有人说 docker 真香,然后就想试一下
本地环境:windows 7
docker
用的是 docker-toolbox
没有翻墙工具
第一天
开始安装 laradock
第一步:拉取
git clone https://github.com/laradock/laradock.git
因为网络的原因,拉取 github
上的仓库稍微慢一点,大概等了 5 分钟左右才拉取完成
第二步:进入 laradock 文件夹
cd laradock
cp env-example .env
然后修改一下 .env
配置信息。因为安装 node
过程及其缓慢,并且安装不了,主要是网络受限
WORKSPACE_BASE_IMAGE_TAG_PREFIX=latest
WORKSPACE_COMPOSER_GLOBAL_INSTALL=true
WORKSPACE_COMPOSER_AUTH=false
WORKSPACE_COMPOSER_REPO_PACKAGIST=
WORKSPACE_NVM_NODEJS_ORG_MIRROR=
WORKSPACE_INSTALL_NODE=false #这里
WORKSPACE_NODE_VERSION=node #这里
WORKSPACE_NPM_REGISTRY=
WORKSPACE_INSTALL_YARN=false #这里
WORKSPACE_YARN_VERSION=latest
WORKSPACE_INSTALL_NPM_GULP=false #这里
WORKSPACE_INSTALL_NPM_BOWER=false #这里
WORKSPACE_INSTALL_NPM_VUE_CLI=false #这里
WORKSPACE_INSTALL_NPM_ANGULAR_CLI=false #这里
第三步:开始编译
因为编译过程是比较缓慢,所以我这边开了三个窗口,分别执行以下命令
docker-compose build nginx
docker-compose build php-fpm
docker-compose build workspace
编译 nginx
还是比较顺利的,但是安装 php
和 workspace
就比较崩溃了。会一直报错,一般重复执行 5-10 次命令才能安装完成。如:
在编译 workspace
出现无法安装 node
那就真的装不了,目前我没有找到解决方法,只能跳过安装。
安装过程大概花费 1 个小时左右。
第四步:运行
注:因为默认 php-fpm
workspace
会默认指定,所以不指定也没关系
docker-compose up -d nginx
或
docker-compose up -d nginx php-fpm workspace
第一次运行也需要等大概 3-5 分钟才可以运行成功
第二天
第一步:开始配置站点,进入到 laradock/nginx/sites
cp laravel.conf.example cc.conf
然后编辑 cc.conf
编辑完成后需要重新编译一下 nginx
docker-compose build nginx
docker-compose restart nginx
本地文件目录
并且也在 hosts
添加了指向
但是在访问的时候,访问不了
然后查阅了相关资料,实际上,hosts
的指向是不能直接用 127.0.0.1
原因不详
所以需要查看 docker-machine
的配置信息
docker-machine env
然后重新修改 hosts
指向
然后浏览器输入 cc.test
就可以正常访问了
Laradock
的容器编译问题确实有些头疼,change_source
不要动,还有如果需要编译phpmyadmin
容器,需要在.env
文件里改一下phpmyadmin
的映射端口,不然会和workspace
(应该是workspace
容器) 的端口冲突,编译时尽可能科学上网,多试几次,会成功的,常用的容器,仅有一两个需要科学上网才可以编译,大多是不需要的.env
中目录映射设置的不正确,具体的映射效果可以使用docker exec -it laradock_workspace_1 bash
或者docker-compose exec workspace bash
进入workspace
容器查看看到你的前言有提到无法
KXSW
,如果workspace
还没有编译成功的话,可以先在.env
中把workspace
容器中的node
相关的安装都设置为false
再试试docker、npm和node都可以设置国内加速镜像源
你应该进入
workspace
内查看/var/www
目录是否有预期的目录,否则还是目录映射有问题;另,我猜测你的系统应该是win
,我的.env
文件中APP_CODE_PATH_HOST=D:\homesteads
是这样写的win7上感觉问题挺多的,映射的目录,要填virtualBox里设置的共享目录的挂载的名称才可以映射成功
兄弟,问题解决了吗, 我映射目录都没有,容器里/var/www/下只有一个laradock目录,也是win7环境,各种方法都试了
:joy: 谢谢了,怪我没早看到,进虚拟机手动挂载的mount步骤我是真忘了,已经升级win10系统装桌面版的docker了