docker 搭建php环境

1.拉取镜像

 docker pull php:8.0.5-fpm-buster
 docker pull nginx:latest
 docker pull mysql/mysql-server:latest

2.查看本地镜像

 docker images

在这里插入图片描述3. 创建网络 & 查看本地网络信息

 docker network create -d bridge php-net
 docker network ls

4.运行容器

 docker run --name php8.0.5 -v /Users/lsy/nginx/www:/www --network php-net -itd php:8.0.5-fpm-buster /bin/bash
 docker run --name nginx -p 8098:80 -v /Users/lsy/nginx/www:/usr/share/nginx/html -v ~/nginx/conf/conf.d:/etc/nginx/conf.d --network php-net -itd nginx:latest /bin/bash 
 docker run --name mysql -e MYSQL_ROOT_PASSWORD=root  -p 3309:3306 --network php-net -itd mysql/mysql-server:latest /bin/bash

附上 nginx配置文件(这里是laravel项目)
在这里插入图片描述

参数说明:
–name nginx:容器名称
-p 8098:80: 端口进行映射,将本地 8098 端口映射到容器内 80 端口
-d nginx: 设置容器在在后台一直运行
/Users/lsy/nginx/www 是本地项目存储目录,/usr/share/nginx/html 是容器内项目文件存储目录
~/nginx/conf/conf.d: 是本地 nginx 配置文件的存储目录,/etc/nginx/conf.d 是容器内 nginx 配置文件的存储目录
–network php-net : 设置容器使用php-net网络, nginx 可通过 php8.0.5 :9000 访问 php-fpm。

5.查看本地已启动容器

 docker ps

6.进入容器 & 启动php nginx服务

docker exec -it nginx /bin/bash
#启动 nginx服务
nginx
docker exec -it php8.0.5 /bin/bash
#启动 php-fpm
php-fpm
docker exec -it mysql /bin/bash
#启动 mysql (报错 mysqld.pid permission denied,赋权
chown -R mysql:mysql /var/run/mysqld/ )
mysqld

7.其他常用命令

 启动容器
 docker start nginx
 停止容器
 docker stop nginx
 重启容器
 docker restart nginx
 删除容器
 docker rm nginx
 查看容器映射路径等
 docker inspect nginx
 查看容器启动日志
 docker logs php 

 删除镜像  
 docker rmi nginx:latest 
 打包镜像
 docker save nginx:latest > ./nginx.tar
 解压镜像
 docker load < ./work/nginx.tar
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker是一个流行的容器化平台,用于管理和部署应用程序,特别适合PHP环境。下面是使用Docker搭建PHP环境的基本步骤: 1. **安装Docker**:首先确保您的系统已经安装了Docker,如果没有,可以从Docker官网下载适用于您操作系统的安装包。 2. **选择基础镜像**:Docker Hub上有许多预构建的基础镜像,如`php:fpm`或`php:apache`,你可以根据需求选择。例如,如果你计划用FastCGI协议,可以选择`php:fpm`。 3. **创建Dockerfile**:这是自定义镜像的一种方式,在这个文件中,你会指定基础镜像、安装所需的PHP扩展(如MySQLi、PDO等)、配置文件和运行命令等。 ```Dockerfile FROM php:fpm RUN apt-get update && \ apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng-dev && \ docker-php-ext-install -j$(nproc) pdo_mysql mysqli zip opcache ``` 4. **构建镜像**:使用`docker build`命令根据Dockerfile的内容创建一个新的镜像。 ```bash docker build -t your-image-name . ``` 5. **运行容器**:使用`docker run`命令启动包含PHP环境的容器,并映射主机目录到容器中的应用目录,以便于开发。 ```bash docker run -d --name your-container-name -v /path/to/your/php-app:/var/www/html your-image-name ``` 6. **访问服务**:可以通过容器的IP地址加上端口号(默认为9000)来访问PHP应用。 相关问题-- 1. Dockerfile的作用是什么? 2. 如何在Docker容器中安装扩展? 3. 如何查看并管理正在运行的PHP容器?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值