docker部署php+nginx+lumen连接mysql

最近刚好用到,记录一下,以防忘记。

  1. php+nginx 自行安装
  2. 下载镜像 MySQL 镜像库地址
  3. 默认是最新版本:docker pull mysql:latest
    此得我用的是:docker pull mysql:5.7
  4. docker部署php+nginx+lumen连接mysql_第1张图片
  5. 创建一个新的容器:
  6. 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权限
  7. 在lumen框架.env修改连接数据库的配置
  8. DB_CONNECTION=mysql
    DB_HOST=127.0.0.1  # 这里的ip要改成nginx+php容器的ip地址, 否则会报连接拒绝
    DB_DATABASE=test
    DB_USERNAME=root
    DB_PASSWORD=root
    
    
  9. 查找nginx+php容器ip:
docker inspect --format '{
    { .NetworkSettings.Gateway}}' 
或
docker inspect 

# 网上也有些资料说是取 {
    { .NetworkSettings.IPAddress }}'这个,但是我测试时,发现取Gateway才是有效

 

你可能感兴趣的:(mysql,docker,docker,laravel,mysql)