前言

做过开发的人对开发环境的安装、配置应该都不会太陌生,不管你做什么开发,对开发环境都会具有一定的依赖性的。对于 PHP 的 Web 开发来说,开发环境至少要有一个 Web 服务器(如 Apache、Nginx)、一个数据库服务器(如 MySQL)和一个 PHP 解析器吧,如果你的 PHP 代码使用的一些扩展,那你还需要给你的 PHP 安装上这些扩展,那样你的 PHP 代码才能够顺利地跑起来。对于一个只想静静地敲代码的开发人员来说,开发环境的安装与配置这种事情,只要经历一次就已经很折腾人了。可是,事情往往不能按人们的意愿进行的,你保不准会重装下系统,也保不准会换一个新的环境。总之就是,你会偶尔需要重新安装配置你的的开发环境!
你可以回想一下,上一次安装配置你的开发环境花费了多少时间,你所需要的 PHP 扩展是不是到运行时报错了才记起来没安装的呢?还好,自从有了 Docker 之后,妈妈再也不用担心我的开发环境的问题了。使用 Docker ,开发环境只需要安装配置一次,之后搭建相同的开发环境很简单,只需要一条命令即可完成!
这就是本文的目的,介绍 Docker 下安装配置 Web 的服务环境,实现一次安装配置,多次重用、跨平台重用的功能。
Docker 概述
Docker 是什么?可以将 Docker 理解为打包环境的容器,它可以将环境打包成镜像,在需要的时候,再基于该镜像来创建容器,这样所需要的环境就回来了。刚刚提到了 Docker 的两大核心概念,镜像和容器。
Docker镜像是为了满足特殊用途而按照Docker的规则制作的应用,有点儿类似于Win-dows里面的安装软件包。容器都是基于镜像而创建的,基于一个镜像可以创建若干个名字不同但功能相同的容器。镜像是静态的,容器是动态的。
除了镜像和容器之外,还有两个概念需要了解一下的,那就是仓库和 docker-compose。Docker 仓库是存放镜像的地方,我们可以从 Docker 仓库中拉取镜像到本地,然后再基于镜像创建容器。docker-compose 是管理容器的。Docker 的思想是一个容器只做一件事情,一个开发环境中可能会使用到多个容器,比如 Web 服务环境会使用到 PHP 、Nginx、MySQL 等等。那么一个 Web 服务环境就需要有三个容器,并且这些容器之间是存在依赖关系的,Nginx 依赖 PHP,PHP 依赖 MySQL。有了 docker-compose 就可以很好地管理这些容器了,它可以根据容器之间的依赖关系来决定每个容器的启动顺序和关闭顺序,可以管理各容器与宿主机器之间的端口映射关系,也可以配置容器与宿主机器之间的数据共享策略等等。
国内的镜像仓库
由于地理位置的原因,国内访问 Docker 的官方仓库是比较慢的,所以在这里介绍一个国内的 Docker 仓库:灵雀云。灵雀云镜像仓库中汇集了大量来自社区的优质作品,让用户组合、复用容器化微服务,轻松搭建新一代云端应用。
搭建 Web 服务环境
本文的重点是使用 Docker 搭建一套 Web 服务环境,如果在你的环境中还没有安装 Docker,可以参考这里自行安装。
安装了 Docker 之后,搭建 Web 服务环境就很简单了,只需要一个文件,一条命令即可!
一个文件: docker-compose.yml
nginx: image: index.alauda.cn/library/nginx links: - phpfpm ports: - "80:80" - "443:443" volumes: - /Users/chenishr/www:/usr/share/nginx/html - ./nginx.conf:/etc/nginx/nginx.conf - ./nginx.d:/etc/nginx/conf.d mysql: image: index.alauda.cn/library/mysql environment: MYSQL_ROOT_PASSWORD: qazasdedc123 ports: - "3306:3306" phpfpm: image: index.alauda.cn/library/php:7.0-fpm links: - mysql volumes: - /Users/chenishr/www:/var/www/html ports: - "9000:9000"
上面的文件内容很简单,它定义了三个容器,分别是 nginx、mysql 和 phpfpm 。每个容器定义里包含了一些信息,这里简单介绍一下。
一条命令
有了上面的 docker-compose.yml 文件之后,只需要一条命令即可启动所有的容器,也就是搭建好了整个 Web 服务环境了!
docker-compose up -d
最后
有了 Docker 之后,搭建环境从未有过如此简单。
本文只是介绍了 Docker 的最基本的应用而已,它还很多用途而不仅限于本文。它可以实现多种版本的软件并存同时工作,比如,我可以在一个电脑上同时使用 PHP7 和 PHP5 而不会造成混淆。当然,还有其它的 …
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
# docker
# 搭建web环境
# docker搭建web
# 搭建web应用
# 聊聊使用docker安装nginx提供web服务的问题
# 简述Docker安装Tomcat镜像并部署web项目
# Docker部署Tomcat及Web应用的实现
# 在Docker中利用Tomcat快速部署web应用的方法示例
# Docker运行Web服务实战之Tomcat的详细过程
# 镜像
# 只需要
# 很简单
# 它可以
# 好了
# 有一定
# 会使
# 国内
# 类似于
# 都是
# 是一个
# 端口映射
# 来了
# 还没有
# 在这里
# 很好
# 你可以
# 多个
# 你会
# 这就是
相关文章:
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
如何在IIS中新建站点并配置端口与IP地址?
电脑免费海报制作网站推荐,招聘海报哪个网站多?
唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?
如何通过云梦建站系统实现SEO快速优化?
建站与域名管理如何高效结合?
网站制作公司排行榜,四大门户网站排名?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
微课制作网站有哪些,微课网怎么进?
网站制作壁纸教程视频,电脑壁纸网站?
如何在Windows服务器上快速搭建网站?
商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
,制作一个手机app网站要多少钱?
淘宝制作网站有哪些,淘宝网官网主页?
制作农业网站的软件,比较好的农业网站推荐一下?
建站之星安装需要哪些步骤及注意事项?
代购小票制作网站有哪些,购物小票的简要说明?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
*服务器网站为何频现安全漏洞?
如何通过FTP服务器快速搭建网站?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
如何在万网自助建站平台快速创建网站?
深圳网站制作培训,深圳哪些招聘网站比较好?
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
如何通过远程VPS快速搭建个人网站?
建站之星伪静态规则如何设置?
香港服务器租用费用高吗?如何避免常见误区?
油猴 教程,油猴搜脚本为什么会网页无法显示?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何自定义建站之星模板颜色并下载新样式?
建站之星3.0如何解决常见操作问题?
如何通过cPanel快速搭建网站?
中山网站制作网页,中山新生登记系统登记流程?
如何在建站之星绑定自定义域名?
建站之星如何防范黑客攻击与数据泄露?
自助网站制作软件,个人如何自助建网站?
黑客如何利用漏洞与弱口令入侵网站服务器?
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?
建站之星CMS五站合一模板配置与SEO优化指南
建站之星导航配置指南:自助建站与SEO优化全解析
建站之星代理商如何保障技术支持与售后服务?
如何在云服务器上快速搭建个人网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。