mac docker php mysql_Mac上使用docker搭建php+nginx+mysql开发环境

本文介绍了如何在Mac上利用Docker快速搭建PHP、Nginx和MySQL的开发环境。首先讲解了Docker的基础操作,然后详细阐述了逐个搭建mysql、php-fpm和nginx容器的步骤,包括Dockerfile的编写、镜像构建和容器启动,最后通过--link和--volumes-from参数将容器关联并进行目录挂载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、预备内容

Docker搭建环境的好处:

操作简单,搭建迅速,环境隔离

常见的Docker操作命令及参数:

docker search # 从Docker Hub查找镜像

docker images # 查看本地镜像列表

docker pull # 从镜像仓库中拉取或者更新指定镜像

docker run # 创建一个新的容器并运行一个命令

docker rm # 删除一个容器

docker rmi # 删除一个镜像

docker inspect # 获取容器/镜像的元数据

docker ps # 查看启动的容器,加参数 -a 查看所有的容器

docker build # 使用 Dockerfile 创建镜像

常见的Dockerfile指令:

FROM # 格式为FROM image或FROM image:tag,并且Dockerfile中第一条指令必须是FROM指令,且在同一个Dockerfile中创建多个镜像时,可以使用多个FROM指令

RUN # 格式为RUN command或 RUN ["EXECUTABLE","PARAM1","PARAM2".....],前者在shell终端中运行命令,/bin/sh -c command,例如:/bin/sh -c "echo hello";后者使用exec执行,指定其他运行终端使用RUN["/bin/bash","-c","echo hello"]

CMD # 用于指定容器启动时执行的命令

MAINTAINER # 指定维护者信息

ENV # 用于指定环境变量,这些环境变量,后续可以被RUN指令使用

EXPOSE # 暴露端口,为容器外部链接使用

二、开始搭建

顺序:mysql --> phpfpm --> nginx

一定要先搭建 phpfpm,然后搭建 docker_nginx

搭建docker_mysql

先使用docker search mysql 列出仓库中存在的mysql镜像

b845ede5fa91b32652caa9f56072ddd8.png

使用docker pull 命令,将STARTS 最多的镜像下载到本地(下载时间有点长...)

docker pull mysql

下载后,使用docker images查看是否镜像已经下载到本地

docker images

可以看到以下内容

3dbe058c727ada4d42824cfce185bbcd.png

使用docker run 命令启动一个docker_mysql 容器

docker run -di --name mydockermysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

docker run ##启动容器的命令

-i ##交互式操作

-d ##守护进程

--name ##指定容器名为 mydockermysql

-p ##将容器的3306端口映射到主机的3308端口

-e ##指定环境变量,容器中可以使用该环境变量,设置root密码

最后一个mysql是指定使用某个镜像

使用docker ps 命令查看容器是否已经启动

a24eca9760a6fd9c8ad1d47778198f20.png

如果能看到刚刚搭建的mysql,则说明容器创建成功,如果没有看到,可以使用docker log mydockermysql命令查看有哪些错误,并对命令加以修改,再重新启动,不过需要先把刚刚的容器删掉,命令为docker rm mydockermysql

ff57ba1508109098ee1bc26fece6d0d8.png

尝试使用navicat工具链接数据库发现failed,排查一下

进入mysql容器

docker exec -it mydoc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值