国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

用Consul管理Laravel項目配置

LeanCloud / 1910人閱讀

摘要:問題其他方案當我們需要在多臺服務器部署多個不同的項目時,我們需要一個集中的配置信息管理和同步的工具。啟動之后通過命令管理。我們用的配置模板意思是遍歷這個目錄,生成格式。

在預生產環境跑了一年多,在此記錄和分享一下。

問題 & 其他方案

當我們需要在多臺服務器部署多個不同的項目時,我們需要一個集中的配置信息管理和同步的工具??紤]過的方案有:

用rsync同步.env文件:多個項目的配置略繁瑣,要ssh到服務器修改再同步

用Docker:集群部署比較方便,可以用圖形界面修改環境變量,但是更新環境變量要重啟容器,大部分項目沒遷移到Docker

下面看一下Consul + Consul Template的方案。

安裝

Consul和Consul Template都提供了預編譯的可執行文件,下載解壓即可。

啟動Consul:

consul agent -server -bootstrap -ui -bind 

其他服務節點可以通過consul agent -join 加入到集群。

啟動之后通過consul命令、RESTful API、Web UI管理Consul。

Consul KV

Consul提供了一個分布式的鍵值對存儲,可以用來存儲應用的動態配置信息,基本操作:

# put 設置一個KV對
consul kv put APP_DEBUG false

# get 獲取
consul kv get APP_DEBUG

# exprot 導出JSON
consul kv export > data.json

# import 導入JSON
consul kv import @data.json

# delete 刪除
consul kv delete APP_DEBUG

Consul KV支持目錄,可以通過/分隔key實現,例如我們使用configs//這樣的目錄來存放一個項目的所有配置。

Consul Template

配置集中管理了,怎樣傳給Laravel呢?一個方法是在Laravel里用Consul的API獲取配置信息,第二個發放是在外部監聽KV變化然后寫入到.env文件,Consul Template就是這樣的一個外部工具。

我們用的配置模板(.env.tpl):

{{ range ls "configs/crm" }}
{{ .Key }}={{ .Value }}{{ end }}

意思是遍歷config/crm這個KV目錄,生成key=value格式。

運行:

## 格式: 模板文件:目標文件:更新后執行的命令
consul-template --template 
    /path/to/.env.tpl:/path/to/.env:"php /path/to/artisan config:cache"

就可以生成.env文件,并且持續監聽變化,一個consul-template實例可以有多個--template多個參數,可以為一臺服務器上多個項目生成配置文件。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/28932.html

相關文章

  • 對PHP項目在Docker上運行的一些探索

    摘要:二緣起對于一個普通的屌絲創業公司的屌絲項目來說,理論上來說是沒必要用太復雜的技術的,對新技術的克制也是碼農的一個職業操守。 Docker出現后,容器技術在互聯網領域得到了空前的普及,無論是大公司還是屌絲創業公司的碼農基本上都會在各種技術社區或者各種演講會議上了解到過相關技術,我們作為一家屌絲創業公司也不例外,去年對Docker做了一番了解,并在年前測試了一些方案,今天在這里總結一下遇到...

    liaorio 評論0 收藏0
  • 對PHP項目在Docker上運行的一些探索

    摘要:二緣起對于一個普通的屌絲創業公司的屌絲項目來說,理論上來說是沒必要用太復雜的技術的,對新技術的克制也是碼農的一個職業操守。 Docker出現后,容器技術在互聯網領域得到了空前的普及,無論是大公司還是屌絲創業公司的碼農基本上都會在各種技術社區或者各種演講會議上了解到過相關技術,我們作為一家屌絲創業公司也不例外,去年對Docker做了一番了解,并在年前測試了一些方案,今天在這里總結一下遇到...

    amc 評論0 收藏0
  • 對PHP項目在Docker上運行的一些探索

    摘要:二緣起對于一個普通的屌絲創業公司的屌絲項目來說,理論上來說是沒必要用太復雜的技術的,對新技術的克制也是碼農的一個職業操守。 Docker出現后,容器技術在互聯網領域得到了空前的普及,無論是大公司還是屌絲創業公司的碼農基本上都會在各種技術社區或者各種演講會議上了解到過相關技術,我們作為一家屌絲創業公司也不例外,去年對Docker做了一番了解,并在年前測試了一些方案,今天在這里總結一下遇到...

    phodal 評論0 收藏0
  • React搭建個人博客(二)consul-template+nginx+docker實現負載均衡

    摘要:前兩個數據業務相關的服務即下圖的,第三個項目就是的實現的負載均衡。這里后臺,前臺項目各啟動了三個實例,用戶訪問的時候,就會根據配置的負載均衡的策略,訪問其中一個。這一部分與之前我轉發的實現服務發現及網關其實也只是差了個網關和負載均衡。 一.簡介 上一篇只講了博客的前端問題,這一篇講一下后端的微服務搭建。項目的后端使用的thinkjs框架,在我之前的博客中已經寫過,這里就不重點說明了。后...

    Coding01 評論0 收藏0

發表評論

0條評論

LeanCloud

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<