by Devin Yang

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

前言

本文介紹,當我們使用D-Laravel的.env載入多個yml檔時,為何docker-compose ps官方指令無法列出所有使用中的服務。
但在D-Laravel上的./console ps確能正常顯示,那官方的docker-compose指令因如何使用才能有相同的效果呢?

docker-compose小教室

首先,當我們使用docker-compose up -d或是docker-compose down時,他預設會去抓取目錄下的docker-compose.yml檔。

docker-compose,其實提供了-f參數,讓我們可使用多個yml檔及非預設的名稱。
例下方的例子中,透過-f同時啟動了兩個yaml檔。


這時,docker-compose ps您或許會發現,怎麼看不見reids的服務,這是因為兩個不同的yml檔在不同的目錄下。
因此,如果需要查看redis的ps,我們要加上-p代表project的名稱(預設為目錄名稱)。
或是完整的指令-f docker-compose-random.yml -f service/redis.yml


下方,我們來看看D-Laravel提供的,./console ps
搭配.env時,如何幫我們搞定多個yaml檔的ps顯示,是不是方便很多,在下圖中您會看到如果只是單純使用
docker-compose ps時,您看不到redis的程序。


原官方指令: (這裡只列兩個yml檔,如果我們要載入更多的yml檔呢??)
docker-compose -f docker-compose.yml -f service/redis.yml ps

透過./console簡化後: (D-Laravel搭配.env,是不是簡單到爆炸了)
./console ps


 

Tags: docker

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


docker

用bash更新docker-compse版本

安裝最新版本的docker-compose

wordpress, d-laravel, docker, docker-compose

如何用D-Laravel安裝Wordpress

約8分鐘的教學影片,介紹在D-Laravel上安裝Wordpress. D-Laravel是一個docker-compose的Laravel框架開發環境,但不代表他不能拿來裝別的東西。 這個影片,介紹使用D-Laravel安裝非Laravel的PHP專案, 您可以學到D-Laravel上的相關指令用法: ./create --host用法, docker-compose up -d及 ./console mysql用法, D-Laravel v1.0.0版後的資料庫連線設定方式。

docker, d-laravel, docker-compose, laravel

docker-compose載入多個設定檔

我們會用docker --network建立多個container互連,但是如果四個container時, 是不是就要下四次docker run不同container的指令,殺了我吧, 本文介紹透過docker-compose這個yaml檔定義一次搞定多個container的建立。 了解如何用dokcer-compose -f 參數載入多個設定檔。