by Devin Yang

建立于: 7年前 ( 更新: 7年前 )

本文简单的来介绍,在D-Laravel的别名a如何运行container内的php artisan.
除了透过简单的bash在host端运行container内的命令,也能了解其背后的运作方式。

首先,我们知道,D-Laravel可以透过 ./console alias a ,取得别名a的命令。
alias a="../../artisan.sh"

当我们host端(MacOS或Linux)的某一个D-Laravel的Project的数据夹内时,例如sites/proj1。
我们输入了 a --version 别名,就能跑出Laravel的版号,为何呢?
其实运行a别名是,就是去运行 dlaravel目录下的artisan.sh这个bash
透过这个bash,相当於帮我们运行了官方的命令如下:
docker-compose exec -u dlaravel php php proj1/artisan --version

先来查看我们自己使用的docker-compose版本,可用命令docker-compose version
如果您运行结果与本文不同时,有可能您需要更新您的docker-compose版本。


进入正题,现在让我们来看看a --version转换后的docker-compose命令后,干了什么好事。
点下图可放大查看:
docker-compose help

因此变成别名后,相对简单很多,而且不用进到php的container中即可运行Laravel的artisan命令罗。
这里我采用docker-compose标准的命令,进入container后,再进行php artisan --version的过程

在上例如,至少需运行三行命令,才能运行到proj1资夹的php artisan命令。
一、docker-compose exec -u dlaravel php bash(运行php container服务名称的bash,所以我们进入container内了)
二、cd proj1(进入proj1的数据夹,在container内,默认的任务目录是在/var/www/html)
三、php artisan --version (感动,运行到proj1的php artisan --version了)

换成D-Laravel提供的a别名,我们只要a --version

所以,举一反三,如果我们想看php服务在container中,php的版本,命令为何?
php --version

或者,我们要来查查在php服务的container中使用的Linux核心版本是什么?
uname -a

在D-Laravel的docker-compose环境中,mysql的container服务名称是db。
所以,我们exec db mysql,即可运行container内的mysql命令,进入mysql中罗。
mysql

希望本文,您能了解到,当我们使用了简易的别名时,在D-Laravel的背后是如何运透过官方命令运作的。

Tags: dlaravel

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


docker,dlaravel

D-Laravel 1.5.5变更说明

D-Laravel的fpm image在php 7.2.1以前是使用docker php官方的dockerfile重build的, 并且所以我可以指定了fpm的默认的owner是dlaravel, --with-fpm-user=USER Set the user for php-fpm to run as. (default: nobody) --with-fpm-group=GRP Set the group for php-fpm to run as.

dlaravel

D-Laravel的sublime外挂以可由Package Control安装罗。

Mac或Linux的使用者,现在可由Sublime3的package control进行D-Laravel alias的包安装罗。 透过D-Laravel alias,我们可以使用更轻松的方式,运行容器内的artisan及composer命令。 docker的环境,要用composer安装包吗,不需再进入container内,或是设置composer的ce别名,即可在sublime中直接运行。

dlaravel

使用D-Laravel build自己专用的php fpm image。

D-Laravel已提供了Build好的php image,如果需要自己调整及Build自己专用的Image相当简单。 一、首先在D-Laravel的录中,进入dockerfiles/fpm,选择您要Build的PHP版本,例如7.2。 命令如下...