laravel环境包含nginx,mysql,php7.4,redis
一、安装好docker后pull镜像
1.nginx镜像
docker pull nginx:latest
单独启动容器
docker run --name nginx -p 80:80 -d nginx
2.php镜像
docker pull php:7.4-fpm
3.mysql镜像
docker pull mysql:5.7
4.redis镜像
docker pull redis
二、安装配置docker-compose
- 安装docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
安装完成后输入 docker-compose -v 可能提示权限不够,就增加权限
chmod +x /usr/local/bin/docker-compose
输入 dcoker-compose -v 显示版本正常即可
- 编写docker-compose.yml 配置文件,在项目目录中新建一个docker-compose.yml文件
我的镜像列表如下
#docker-compose.yml
#版本,配置文件使用第三套标准
version: "3"
#字段指定了在 Docker Compose 编排中要运行的服务。每个服务都有一个名称,并指定要使用的镜像和容器的配置选项
services:
Nginx:
#镜像名称
image: nginx:latest
#容器名称
container_name: nginx
#端口映射将右边容器端口80映射到左边宿主机端口80
ports:
- 80:80
#目录挂载,将宿主机/home/www/laravelcrm映射到ngxin的/usr/share/nginx/html目录
#可以直接使用 [主机:容器]格式,或者使用[主机:容器:ro]格式,后者对于容器来说,数据卷是只读的
volumes:
- /home/www:/var/www/html:ro
- /docker/laravelcrm/nginx/conf:/etc/nginx/conf.d:ro
- /docker/laravelcrm/nginx/log:/var/log/nginx
PHP:
image: php:7.4-fpm
container_name: php
ports:
- 9000:9000
volumes:
- /home/www