mlebkowski/crane

此软件包的最新版本(1.0.1)没有可用的许可信息。

1.0.1 2013-12-12 13:03 UTC

This package is auto-updated.

Last update: 2024-09-23 19:13:12 UTC


README

使用 docker 容器和 git 启动本地环境

设置

  1. 根据 架构 创建您的配置。您可以在那里找到详细的描述
  2. 将架构推送到 git 仓库,例如:git@example.com:vendor/crane-project

初始化项目

  1. 使用 composer 在您的本地机器上安装 crane。

     $ composer global require 'mlebkowski/crane:dev-master'
    

    二进制文件将被放置在 ~/.composer/vendor/bin/crane

  2. 添加项目配置

      $ crane project:init git@example.com:vendor/crane-project
    
  3. 编辑 ~/.crane/config.json 以设置 targets/current-target

构建镜像

每个目标只需要构建一次。Docker 镜像将从 Dockerfile 中构建。

$ crane image:build vendor/project-name --verbose

如果有什么变化或出现问题,您可能想使用 --rebuild 标志。

启动项目

启动所有容器。

$ crane project:start vendor/project-name --verbose

使用 --restart 如果出现问题或镜像已更改。主镜像总是会被重新启动。

启动应用程序

您可能想以某种方式启动应用程序(初始化数据库、设置权限等)。Crane 是应用程序无关的,因此它没有内置的机制。然而,它确实提供了一个 project:command 命令。它将使用 identity 文件作为私钥通过 SSH 进入正在运行的容器(如果容器内部暴露了 22 端口)。

例如,在主容器上运行启动命令

$ crane project:command vendor/project-name 'phing -verbose -f /home/main-image-name/build.xml install'  --verbose

权限

确保您为目标主机设置了代理转发。所有 SSH 命令都使用 -A 标志。

编辑文件

您可能想编辑应用程序源文件。为此,将任何分支推送到 ssh://current-target/.crane/vendor-name/project-name/volumes/main-image-name。那里有一个 post-receive 钩子,它将工作副本重置为推送的提交。

您也可以使用 sshfs,但存在缓存和性能问题。 YMMV