介绍(Introduction) 入门(Getting Started) 应用结构(Application Structure) 请求处理(Handling Requests) 关键概念(Key Concepts) 配合数据库工作(Working with Databases) 接收用户数据(Getting Data from Users) 显示数据(Displaying Data) 安全(Security) 缓存(Caching) RESTful Web 服务(RESTful Web Services) 开发工具(Development Tools) 测试(Testing) 高级专题(Special Topics) 小部件(Widgets) 助手类(Helpers)

Yii 和 Docker

社区推荐:掘金是一个面向程序员的技术社区,从后端到架构,从 PHP 最佳实践到一线大厂经验分享,无论入门还是进阶,来掘金你不会错过后端开发的任何一个技术干货。

对于开发和部署 Yii 应用程序可以使用 Docker 容器运行。容器就像一个轻量级的独立虚拟机,它将其服务映射到主机的端口,即在端口 80 上的容器中的Web服务器在您的(本地)主机上的端口 8888 上可用。

容器可以解决许多问题,例如在开发人员计算机和服务器上具有相同的软件版本,在开发时快速部署或模拟多服务器体系结构。

您可以在 docker.com 上阅读有关Docker容器的更多信息。

要求

  • docker
  • docker-compose

访问下载页面获取 Docker 工具。

安装

安装后,你应该可以运行 docker ps 并看到类似的输出:

CONTAINER ID   IMAGE   COMMAND   CREATED   STATUS   PORTS

这意味着您的Docker守护进程已启动并正在运行。

另外运行 docker-compose version,你的输出应该是这样的

docker-compose version 1.20.0, build unknown
docker-py version: 3.1.3
CPython version: 3.6.4
OpenSSL version: OpenSSL 1.1.0g  2 Nov 2017

使用 Compose,您可以配置管理您的应用程序所需的所有服务,例如数据库和缓存。

资源

用法

Docker的基本命令是:

docker-compose up -d

在后台启动堆栈中的所有服务

docker-compose ps

列出正在运行的服务

docker-compose logs -f

持续查看所有服务的日志

docker-compose stop

优雅地停止堆栈中的所有服务

docker-compose kill

立即停止堆栈中的所有服务

docker-compose down -v

停止并删除所有服务,在不使用 host-volumes 时注意数据丢失

在容器中运行命令

docker-compose run --rm php composer install

在新的容器中运行 composer 安装

docker-compose exec php bash

运行中的 php 服务中执行 bash

高级主题

Yii 框架测试

你可以按照这里描述的方式为 Yii 本身运行 dockerized 框架测试。

数据库管理工具

以 MySQL(mysql)的形式运行MySQL时,可以将 phpMyAdmin 容器添加到您的堆栈中,如下所示:

    phpmyadmin:
        image: phpmyadmin/phpmyadmin
        ports:
            - '8888:80'
        environment:
            - PMA_ARBITRARY=1
            - PMA_HOST=mysql
        depends_on:
            - mysql
TPshop
发现错别字或您认为此页面需要改进?
点此进入 Github 编辑