Docker搭建Laravel环境

使用docker-compose 一键搭建开发环境,备忘
注:镜像全部是拷贝大神的,自己没去多研究,目前只要搭建环境成功即可
1. 本地创建目录 及文件,如下:

mkdir study/study
mkdir study/study/public
touch study/study/docker-compose.yml
touch study/study/public/index.php
echo “Hello World” >> study/study/public/index.php

2.拷贝如下内容到docker-compose.yml

version: '2'

services:

### Applications Code Container #############################

    applications:
      image: lzssing/true
      volumes:
        - ./:/var/www

### Workspace Utilities Container ###########################

    workspace:
      image: lzssing/workspace
      volumes_from:
        - applications
      extra_hosts:
        - "dockerhost:10.0.75.1"
      ports:
        - "22"
      tty: true
      networks:
        - frontend
        - backend

### PHP-FPM Container #######################################

    php-fpm:
      image: lzssing/php-fpm
      volumes_from:
        - applications
      expose:
        - "9000"
      depends_on:
        - workspace
      extra_hosts:
        - "dockerhost:10.0.75.1"
      environment:
        - PHP_IDE_CONFIG=laradock
      networks:
        - backend

### NGINX Server Container ##################################

    nginx:
      image: lzssing/nginx
      volumes_from:
        - applications
      volumes:
        - ../logs/nginx/:/var/log/nginx
      ports:
        - "80:80"
        - "443"
      depends_on:
        - php-fpm
      networks:
        - frontend
        - backend

### MySQL Container #########################################

    mysql:
      image: lzssing/mysql
      environment:
        - MYSQL_DATABASE=study
        - MYSQL_USER=root
        - MYSQL_PASSWORD=docker.18
        - MYSQL_ROOT_PASSWORD=docker.18
      volumes:
        - ../data/mysql:/var/lib/mysql
      ports:
        - "3306:3306"
      networks:
        - backend

### Networks Setup ############################################

networks:
  frontend:
    driver: "bridge"
  backend:
    driver: "bridge"

### Volumes Setup #############################################

volumes:
  mysql:
    driver: "local"

3.进入文件夹study/study,执行命令docker-compose up -d,首次会从网上拉去5个docker镜像,运行成功后,可在浏览器输入localhost,输出Hello World.

4.通过docker ps -a查看容器,此时存在true、workspace、nginx、php-fpm、mysql五个容器,首次执行,mysql容器没有成功启动,需要修改study/data、study/logs文件夹的权限设置为777,然后在重新docker-compose up -d,进入各自的容器:

docker-compose exec workspace bash
docker-compose exec nginx bash
docker-compose exec mysql bash

5.要想运行Laravel项目,可进入workspace 容器进行相关操作,如composer、php artisan

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值