资讯专栏INFORMATION COLUMN

使用 Docker 搭建开发环境

zxhaaa / 2611人阅读

摘要:做了一次分享,主题使用搭建开发环境,简单介绍了一下的概念,演示了使用构建全套环境。应场景通常于如下场景应的动化打包和发布动化测试和持续集成发布在服务型环境中部署和调整数据库或其他的后台应从头编译或者扩展现有的或平台来搭建的环境。

做了一次分享,主题《使用 Docker 搭建开发环境》,简单介绍了一下 Docker 的概念,演示了使用 Docker-compose 构建全套 PHP 环境。

主要内容

镜像、容器、仓库概念

容器与虚拟机的区别

使⽤ Docker 搭建 PHP 环境

介绍 docker-compose

什么是 Docker?

Docker 是⼀个基于 Linux 内核的 cgroup,namespace,以及AUFS 类的 Union FS 等技术,对进程进⾏封装隔离,属于操作系统层⾯的虚拟化技术。

最初实现是基于 LXC,从 0.7 版本以后开始去除 LXC,转⽽使⽤⾃⾏开发的 libcontainer,从 1.11 开始,则进⼀步演进为使⽤ runC 和 containerd。

Docker 在容器的基础上,进⾏了进⼀步的封装,从⽂件系统、⽹络互联到进程隔离等等,极⼤的简化了容器的创建和维护。使得 Docker 技术⽐虚拟机技术更为轻便、快捷。

Docker 应⽤场景

Docker 通常⽤于如下场景:

web应⽤的⾃动化打包和发布;

⾃动化测试和持续集成、发布;

在服务型环境中部署和调整数据库或其他的后台应⽤;

从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建⾃⼰的PaaS环境。

更多场景和优势

• 加速本地开发和构建流程,使其更加⾼效、更加轻量化
• 能够让独⽴服务或应⽤程序在不同的环境中,得到相同的运⾏结果
• ⽤ Docker 创建隔离的环境来进⾏测试
• Docker 可以让开发者先在本机构建⼀个复杂的程序或架构进⾏测试,⽽不是⼀开始就在⽣产环境部署、测试
• 构建⼀个多⽤户的平台即服务(PaaS)基础设施
• 为开发、测试提供⼀个轻量级的独⽴沙盒环境

Docker架构

Docker客户端和服务器

Docker 是⼀个 C/S 架构的程序。Docker 客户端向服务器或守护进程发出请求,服务器或守护进程将完成所有⼯作并返回结果

Docker 提供了⼀个命令⾏⼯具以及⼀整套 RESTful API

可以在同⼀台宿主机上运⾏ Docker 守护进程,也可以从⼀个本地客户端运⾏另⼀台宿主机上远程 Docker 守护进程

Docker镜像、容器、仓库

镜像是⼀个特殊的⽂件系统,提供容器运⾏所需的程序、⽂件、资源、配置,以及为运⾏时准备的配置参数(镜像

不是Dockerfile⽂件)

容器是是镜像的⼀个实例,是⼀个动态的概念,是运⾏状态下的镜像,它可以被创建、启动、停⽌、删除。(进程

隔离)

仓库是存放镜像的地⽅,如官⽅ Hub 仓库,上⾯有成千上万的镜像可以直接使⽤。

Docker-compose 介绍

Docker-compose 是 Docker 官⽅编排(Orchestration)项⽬之⼀,负责快速的部署分布式应⽤。

Docker Compose 是⼀个 Python 写的⽤来定义和运⾏复杂应⽤的 Docker ⼯具。

使⽤ Compose 可以定义和运⾏多个 Docker 容器的应⽤,使⽤⼀条命令来启动所需应⽤,完成⼀切准备⼯作

使用 laradoc 搭建全套PHP环境步骤

仅需要三个步骤就完成了 PHP 全套环境的搭建,每次开机启动 PHP 环境也只需⼀个命令:

克隆 laradock

创建环境变量⽂件

使⽤ docker-compose 启动所需服务

PPT 下载

点击下载:https://oddyzfr8z.qnssl.com/w...


讲堂报名地址:https://segmentfault.com/l/15...

PHP笔试面试题精选(二) 课程简述

《PHP笔试面试题精选》课程系列分享关于 PHP 笔试面试会问到的一些问题和知识点,围绕 PHP、数据库、计算机网络、计算机操作系统、设计模式、WEB安全等多个方面进行。

课程内容

由于涉及到的问题和知识点比较多,本期主要讲 PHP基础、WEB安全、计算机网络三个方面有关的问题。

PHP基础方面

PSR规范

PHP新特性

PHP_FPM性能调优

Session垃圾回收机制

WEB安全

XSS攻击原理和防范

CSRF攻击原理和防范

SQL注入攻击防范

密码哈希

计算机网络

HTTP协议

TCP/IP协议

WebSocket连接过程

讲堂报名地址:https://segmentfault.com/l/15...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27255.html

相关文章

  • 使用 Docker 搭建 Laravel 本地环境

    摘要:本文就介绍如何使用搭建本地环境。讲座介绍是现在火热的一个容器技术,作为开发人员有必要掌握它的使用,无论你是用来搭建本地环境,还是部署应用。 (原文地址:https://blog.tanteng.me/2017/...) Laravel 官方提供 Homestead 和 Valet 作为本地开发环境,Homestead 是一个官方预封装的 Vagrant Box,也就是一个虚拟机,但是跟...

    StonePanda 评论0 收藏0
  • 使用 Docker 搭建 Laravel 本地环境

    摘要:本文就介绍如何使用搭建本地环境。讲座介绍是现在火热的一个容器技术,作为开发人员有必要掌握它的使用,无论你是用来搭建本地环境,还是部署应用。 (原文地址:https://blog.tanteng.me/2017/...) Laravel 官方提供 Homestead 和 Valet 作为本地开发环境,Homestead 是一个官方预封装的 Vagrant Box,也就是一个虚拟机,但是跟...

    lscho 评论0 收藏0
  • 使用 Docker 搭建开发环境

    摘要:做了一次分享,主题使用搭建开发环境,简单介绍了一下的概念,演示了使用构建全套环境。应场景通常于如下场景应的动化打包和发布动化测试和持续集成发布在服务型环境中部署和调整数据库或其他的后台应从头编译或者扩展现有的或平台来搭建的环境。 做了一次分享,主题《使用 Docker 搭建开发环境》,简单介绍了一下 Docker 的概念,演示了使用 Docker-compose 构建全套 PHP 环境...

    kycool 评论0 收藏0
  • 使用 docker 搭建 web 服务环境

    摘要:国内的镜像仓库由于地理位置的原因,国内访问的官方仓库是比较慢的,所以在这里介绍一个国内的仓库灵雀云。灵雀云镜像仓库中汇集了大量来自社区的优质作品,让用户组合复用容器化微服务,轻松搭建新一代云端应用。 本文目的 做过开发的人对开发环境的安装、配置应该都不会太陌生,不管你做什么开发,对开发环境都会具有一定的依赖性的。对于 PHP 的 Web 开发来说,开发环境至少要有一个 Web 服务器(...

    Jeffrrey 评论0 收藏0

发表评论

0条评论

zxhaaa

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<