目录
前言思路开始搭建通过brew 安装 mysql安装Docker启动centos容器安装宝塔安装需要软件关于连接MySQL重启容器docker容器部分操作方法前言
本方法适用于Mac
(写此文章的目的就是记录自己的Mac环境配置方法), 同时也适用于Windows
只是Windows有好用的集成环境, 所以就懒得这么麻烦了由于本人木有找到在Mac端简单好用的php集成开发. 在使用brew搭建环境后, 个人感觉在安装php扩展和配置环境也不是很方便. 环境不用了想关掉时, mysql, nginx也要一个一个的brew service stop很麻烦, 用完了不关, 很占电脑资源(来自贫穷的8G内存😭), 就想找个简单的方法这样可以让主机环境更干净~思路
使用Docker
容器技术基于Docker
的centos
镜像来模拟linux
环境,在centos
镜像中简单粗暴的安装宝塔面板
,再通过宝塔面板简单快速的搭建一个好用的PHP环境使用docker
的数据卷,将本地项目目录挂载到容器中, 方便开发为了方便对数据库的操作, 数据持久化和数据管理, 我选择直接把mysql安装在Mac上而没有安装在容器中开始搭建
通过brew 安装 mysql
# 安装mysqlbrew install mysql@5.7# 连接mysql, 注意: 刚安装的mysql是没有密码的mysql -u root -p# 修改初始化密码, 注意: 此方法不行的话, 请根据使用的数据版本自行百度初始化密码的方法ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
安装Docker
使用Docker
官网下载的Mac版客户端即可, 附上官网链接 Docker官网下载页面无脑安装好客户端之后, 启动客户端即可启动centos容器
# 运行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 /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
在容器中连接容器外部的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
启动宝塔面板
之后就可以正常使用环境了
docker容器部分操作方法
在不停止容器的情况下, 退出容器命令行: mac:control + p + q
windows :ctrl + p + q
查看容器列表docker ps -a
停止容器docker stop cid
启动已停止的容器docker start
从命令行进入启动的容器docker attach cid