博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用docker配置laravel5.5环境
阅读量:5253 次
发布时间:2019-06-14

本文共 2195 字,大约阅读时间需要 7 分钟。

简介

简述一下我用docker来配置laravel环境

软件镜像

  • php:7.2-rc-fpm-alpine
  • mysql:5.6
  • nginx:1.12.2-alpine

    配置环境

  • Ubuntu:16.04
  • macOS:Sierra

以上两个操作系统我都实验过,均能运行


准备

注意点:要是宿主机上面开着mysql和nginx服务的,请停止服务,要不然两个服务分别占用:3306和80或443端口,使得容器无法启动

service mysql stop ps -ef|grep nginxkill pid# nginx 的进程号

配置过程

从github上下载配置文件

git clone https://github.com/daimonster/PHP-env.git

切换版本

git checkout laravel5.5

生成php镜像

cd php && docker build -t dai/php:laravel .

特别要注意的是镜像名字不能随便填,如果想要改成别的名字,一定要记得将docker-compose.yml文件中的镜像的名字改成一样的

顺便介绍一些有用的docker操作:

  • 批量删除所有镜像:docker rmi $(docker images -q)
  • 批量停止所有容器:docker stop $(docker ps -aq)
  • 批量删除所有容器:docker rm $(docker ps -aq)

运行docker-composer

docker-compose.yml内容

version: "3"services:    nginx:        image: nginx:1.12.2-alpine        ports:            #改成127.0.10.10这样不会与localhost冲突            - "127.0.10.10:80:80"            - "127.0.10.10:443:443"        volumes:            - ~/Git-Documents:/home/code:rw # ~/Git-Documents 是我自己的存放代码的目录,需要改成自身存放代码的地方            - ./conf/nginx/nginx.conf:/etc/nginx/nginx.conf:ro#配置nginx            - ./conf/nginx/vhost:/etc/nginx/conf.d:ro#配置nginx            - ./log/nginx:/var/log/nginx:rw        networks:            - code-network    php:        image: dai/php:laravel        volumes:            - ~/Git-Documents:/home/code:rw # 这里同上            - ./conf/php/php.ini-development:/usr/local/etc/php/php.ini:ro # 配置php        networks:            - code-network    mysql:        image: mysql:5.6        ports:            - "3310:3306"        volumes:            - ./conf/mysql/my.cnf:/etc/mysql/my.cnf:ro            - ./data/mysql:/var/lib/mysql:rw            - ./log/mysql:/var/log/mysql:rw        environment:            MYSQL_ROOT_PASSWORD: "root"            MYSQL_USER: "test"            MYSQL_PASSWORD: "test123"networks:    code-network:        driver: bridge

运行命令:

# 前台运行docker-composer up# 后台运行docker-composer up -d

对php容器进行修改

docker ps查看正在运行中的容器,然后进入php容器

docker exec -it [容器ID] sh

创建laravel项目

composer create-project laravel/laravel Laravel --prefer-dist "5.4.*"

给访问用户权限

sudo chown -R :www-data /home/ubuntu/Code/Laravelsudo chmod -R 775 /home/ubuntu/Code/Laravel/storage

如果能成功显示laravel页面,就OK了

转载于:https://www.cnblogs.com/daibigmonster/p/8426210.html

你可能感兴趣的文章
python:从迭代器,到生成器,再到协程的示例代码
查看>>
Java多线程系列——原子类的实现(CAS算法)
查看>>
在Ubuntu下配置Apache多域名服务器
查看>>
多线程《三》进程与线程的区别
查看>>
linux sed命令
查看>>
html标签的嵌套规则
查看>>
[Source] Machine Learning Gathering/Surveys
查看>>
HTML <select> 标签
查看>>
类加载机制
查看>>
tju 1782. The jackpot
查看>>
HTML5与CSS3基础(五)
查看>>
WinDbg调试C#技巧,解决CPU过高、死锁、内存爆满
查看>>
linux脚本中有source相关命令时的注意事项
查看>>
css样式表中的样式覆盖顺序
查看>>
湖南多校对抗赛(2015.03.28) H SG Value
查看>>
REST Web 服务(二)----JAX-RS 介绍
查看>>
hdu1255扫描线计算覆盖两次面积
查看>>
hdu1565 用搜索代替枚举找可能状态或者轮廓线解(较优),参考poj2411
查看>>
bzoj3224 splay板子
查看>>
程序存储问题
查看>>