参考地址:
https://blog.csdn.net/weixin_33836874/article/details/87036211
1.window10家庭版无法直接用docker,只能借助虚拟机,用dockerstoolbox,下载地址:https://get.daocloud.io/toolbox/
2.安装docker需要支持内存虚拟化,可以在任务管理器中查看 任务管理器->性能->虚拟化:已开启,未开启的话需要在bois中开启。
3.toolbox安装之后会生成3个快捷方式 vm vitualbox ,kitematic,dockerquckstarttermail
4.虚拟机暂不用,打开kitematic左下角 docker cli可以直接进入docker命令行
5.通过命令行安装docker镜像的时候会报错net/http: TLS handshake timeout,这是因为没有镜像加速,经常超时,需要安装镜像加速器,建议用阿里的,方法如下
dockertoolbox 解决net/http: TLS handshake timeout
docker-machine ssh default
sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=https://jq3rfz0q.mirror.aliyuncs.com |g" /var/lib/boot2docker/profile
exit
docker-machine restart default
6.直接用官方文档安装的swoft,没法挂载共享目录,建议先挂载镜像目录之后在镜像中用composer安装,这样安装好的swoft直接出现在共享文件夹中,可以直接修改(docker invalid mode)
##docker run -d -it -p 80:80 --entrypoint="" -v /c/Users/45569/Documents/PhpProjects/swoft:/var/www/swoft tzswoft:v1 bash (这是我本地composer安装之后的镜像)
docker run -d -it -p 80:80 --entrypoint="" -v /$(pwd):/var/www/swoft --name swoft swoft/swoft bash // 开发环境和容器进行关联
docker exec -it swoft bash // 进入bash环境,如果报错尝试在开头添加winpty
composer config -g repo.packagist composer https://packagist.phpcomposer.com // 配置composer镜像
composer create-project swoft/swoft swoft // 下载项目,下载下来的项目根据需求做适当调整
php bin/swoft start //启动swoft
其中--entrypoint="" 是英文,默认的镜像中会启动某些命令,导致-v失败,必须先关掉。
7.服务正常启动之后还是无法访问的问题,是因为docker安装在虚拟机中,需要虚拟机开启端口映射。这时候打开vm vitualbox,设置->网络->端口转发,将上面的-p 80:80配置一下
参考地址:https://blog.csdn.net/a462464126/article/details/83061848
网友评论