前言

刚买了一个mac本, 决定搭建一个纯docker的开发环境, 说到做到, 开始踩坑.

搭建

在搭建环境的过程中, 经历了很多错误, 例如为了令两个docker环境可以互通(如: nginx和php-fpm), 尝试了 link, network等等等等方式.

最后发现, 如果想实现两个docker环境的互通, 可以通过link的方式. 但是, link是有启动顺序的, 如果你link的容器不存在, 就会出现问题.

这时, docker-compose 闪亮登场, 你可以将所有需要的环境进行定义, 然后一键启动, 它会自动计算依赖关系. 中间的各种坑就不说了, 说多了都是我菜, 哈哈.

version: '3'
services:# 定义php-fpm容器php-fpm:image: nanoninja/php-fpmvolumes:- "/Users/hujing/dir:/Users/hujing/dir"restart: alwaysdepends_on:- mysql# 定义nginx容器nginx:image: nginxdepends_on:- php-fpmvolumes:- "./config/nginx/config:/etc/nginx/conf.d"- "/etc/hosts:/etc/hosts"- "/Users/hujing/dir:/Users/hujing/dir"- "./config/nginx/log:/var/log/nginx"ports:- "80:80"restart: alwaysmysql:image: mysqlports:- "3306:3306"volumes:- ".config/mysql/data:/var/lib/mysql"- ".config/mysql/config:/etc/mysql/conf.d"environment:MYSQL_ROOT_PASSWORD: 'root'

上面是nginx, php-fpm, mysql 进行环境搭建. 后续再添加redis, mongo等内容吧.

最终, 经过摸索, 感觉并没有我想象中的那么难. 我将内容上传到了码云上. 有需要的朋友可以下载下来, 然后直接使用命令: docker-compose up命令即可一键启动. 如果有需要的可以下载使用.

https://gitee.com/hujingnb/php_docker

mac docker搭建开发环境相关推荐

  1. Linux/Mac/Windows - 搭建开发环境的变化记录

    1.应用场景 主要是记录和回顾个人 Windows / Linux / Mac下搭建开发环境的变化,同时参考搭建部署生产环境[Linux]. 2.学习/操作 1. 文档 设置 Linux/Mac 本地 ...

  2. docker mysql开发环境_跟我一步一步用Docker搭建Beimi游戏服务端开发环境

    跟我一步一步用Docker搭建Beimi游戏服务端开发环境 Stone 摘要 本文为java 0基础的小伙伴介绍如何用Docker搭建开发环境.如果不关心过程直接可 跳到本文最后取代码. 关键步骤为: ...

  3. 利用Docker构建开发环境

    最近接触PAAS相关的知识,在研发过程中开始使用Docker搭建了自己完整的开发环境,感觉生活在PAAS时代的程序员真是幸福,本文会简要介绍下Docker是什么,如何利用Docker来搭建自己的开发环 ...

  4. Docker - 搭建LNMP环境 - 学习/实践

    1.应用场景 主要用于学习使用docker搭建开发环境. 学习容器化技术. 以及快速搭建开发环境, 同时保持团队之间开发/测试环境相同~~~~ 2.学习/操作 1.文档阅读 Docker - 学习/实 ...

  5. 游戏开发 应用Docker实现开发环境

    作者简介:陈霈霖,金山西山居资深Unity开发工程师,Unity开发框架KSFramework作者,关注Web开发全栈.DevOps最近,跟一个大学金融系的同学交流,发现他对科技发展的动态非常了解,然 ...

  6. 深入浅出Docker(五):基于Fig搭建开发环境

    本文原创版权归 infoq 肖德时 所有,此处为技术收藏,如有再转,请于篇头保留原创作者及出处,以示尊重! 作者: 肖德时 原文: http://www.infoq.com/cn/articles/d ...

  7. (001) RN开发之Mac搭建开发环境

    接触RN第一步:React Native中文网 搭建开发环境 必须安装的依赖有:Node.Watchman 和 Xcode. 我们推荐使用Homebrew来安装 Node 和 Watchman.在命令 ...

  8. virtualbox php mac,详解mac下通过docker搭建LEMP环境

    在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew up ...

  9. 使用Docker高效搭建开发环境

    女主宣言 Docker 作为轻量级的基于容器的解决方案,它对系统侵入性低,容易移植,天生就适合做复杂业务部署和开发环境搭建,今天给大家带来的是我司开发是如何使用 Docker 高效搭建开发环境的.本文 ...

最新文章

  1. 应用软件(E-MAIL-FTP-WEB)
  2. 解决1px的border在移动端变粗的问题
  3. Python学习笔记(随机数)
  4. linux内核双向循环队列,读书笔记之linux内核设计与实现(2)进程调度
  5. sql跨表查询_白话django之ORM的查询语句
  6. pads铺铜不能开启drp_PADS中常见问题解决方案
  7. 关于Windows azure从github上部署项目
  8. Setting property 'source' to 'org.eclipse.jst.jee.server
  9. 笨办法学 Linux 4~7
  10. 遮挡行人的检测论文合集
  11. python 和 的区别_Python中is和==的区别
  12. SQLMAP 脱库过程(get请求)
  13. Web Electron 平台即时通讯产品的技术选型
  14. 一个关于Booth算法的文章
  15. ecshop模板支持html,免费ecshop响应式设计手机wap自适应dossy整站模板
  16. 小菊的语义分割1——语义分割科普Semantic Segmentation
  17. 看这里!你的手机号关联了多少互联网账号?一证通查→
  18. Sql 中两个数除法计算结果等于0原因是什么?
  19. android 获取系统语言版本,Android 获取系统语言的实例(兼容7.0)
  20. SSE图像算法优化系列二十五:二值图像的Euclidean distance map(EDM)特征图计算及其优化。...

热门文章

  1. 现代软件工程 作业 最后一周总结
  2. 微软认知服务应用秘籍 – 与机器人聊知识
  3. bootstraptable查看详情_bootstrap-table前端实现多条件时间段查询数据
  4. glibc版本查看_Linux开发必知内容整理 | libc、glibc和glib的关系
  5. JAVA入门级教学之(参数传递)
  6. mysql binlog查看_MySQL--17 配置binlog-server 及中间件
  7. 服务器访问oracle数据库,Oracle数据库的访问——通过不同服务器名对数据库的访问...
  8. java 变量作用域 c语言_C语言深入理解 - 常量与变量
  9. 847方波放大电路_分析运放7大经典电路,有图有真相,详解每个电路原理!
  10. python全系列之爬虫scrapy_python爬虫scrapy之登录知乎