Mac
(写此文章的目的就是记录自己的Mac环境配置方法), 同时也适用于Windows
只是Windows有好用的集成环境, 所以就懒得这么麻烦了Docker
容器技术Docker
的centos
镜像来模拟linux
环境,在centos
镜像中简单粗暴的安装宝塔面板
,再通过宝塔面板简单快速的搭建一个好用的PHP环境docker
的数据卷,将本地项目目录挂载到容器中, 方便开发# 安装mysql
brew install mysql@5.7
# 连接mysql, 注意: 刚安装的mysql是没有密码的
mysql -u root -p
# 修改初始化密码, 注意: 此方法不行的话, 请根据使用的数据版本自行百度初始化密码的方法
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
Docker
官网下载的Mac版客户端即可, 附上官网链接 Docker官网下载页面# 运行docker容器 请将xxxxxx 处替换为自己本地的项目目录
# 我是在Document下建了一个www目录,所有的项目都放在该目录下
# 注意提前将本地的项目目录权限改为777,防止意外
# 此处的phpdev是容器名,可以任意起名, 80和8888端口一定要开, 8080和81不一定, 我是随手就都开了
docker run -it --name phpdev -p 80:80 -p 8888:8888 -p 8080:8080 -p 81:81 -v xxxxxx:/www/wwwroot centos /bin/bash
# 成功启动镜像后在容器内运行命令 安装 宝塔面板
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
中间有提示时 输入y
安装完成后, 根据宝塔的提示输入宝塔面板的登录网站
注意: 要把登录的ip地址更换为 127.0.0.1
通过宝塔面板安装 nginx, redis, php等软件, 宝塔的用法请参考宝塔官网
注意: 安装PHP 7.4, 8.0, 8.1版本后可能出现无法启动的情况
请卸载刚安装的PHP, 并在容器中执行yum install oniguruma libsodium -y
再重新安装PHP
在容器中连接容器外部的MySQL时, host地址要填写docker.for.mac.host.internal
原因: Mac电脑, 在容器中连接容器外部的MySQL时, host地址填写docker网桥中的地址是不行的, 原因是Mac电脑中没有docker0这个网桥. docker 18.03 加入了一个 feature,在容器中可以通过 host.docker.internal
来访问主机
停止容器后再次启用容器时使用
docker start cid
启动容器
启动后使用docker attach cid
进入容器命令行
使用bt start
启动宝塔面板
之后就可以正常使用环境了
control + p + q
windows : ctrl + p + q
docker ps -a
docker stop cid
docker start
docker attach cid