最近刚好用到,记录一下,以防忘记。
- php+nginx 自行安装
- 下载镜像 MySQL 镜像库地址
-
默认是最新版本:docker pull mysql:latest 此得我用的是:docker pull mysql:5.7
- 创建一个新的容器:
-
docker run -d -p 3306:3306 --privileged=true -v F:\mysql\conf\my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=root --name mysql5.7 mysql:5.7 -d 分离模式: 在后台运行 -p 将容器的3306端口映射到主机的3306端口 -e MYSQL_ROOT_PASSWORD=root(初始化root用户的密码) -v 将主机中目录挂载到容器中的某个目录 --name 为容器指定一个名称 --privileged=true 给容器加上root权限
- 在lumen框架.env修改连接数据库的配置
-
DB_CONNECTION=mysql DB_HOST=127.0.0.1 # 这里的ip要改成nginx+php容器的ip地址, 否则会报连接拒绝 DB_DATABASE=test DB_USERNAME=root DB_PASSWORD=root
- 查找nginx+php容器ip:
docker inspect --format '{{ .NetworkSettings.Gateway}}' <container id>
或
docker inspect <container id>
# 网上也有些资料说是取 {{ .NetworkSettings.IPAddress }}'这个,但是我测试时,发现取Gateway才是有效