一直在找自動化部署的系統,最好是php版本的,偶然的機會找到了walle這個部署系統,於是靜下心來學習一下比較坑的是官方的文件和github上的文件都有問題,不清楚怎麼安裝,也許是版本滯後的問題,自己摸索了一下才正確安裝了
開始安裝walle
mkdir -p /data/www/walle-web && cd /data/www/walle-web # 新建目錄
git clone [email protected]:meolu/walle-web.git . # **檢出
git clone #最好是這樣轉殖**到本地
vi config/web.php
'db' => ['class' => 'yii\db\connection',
'dsn' => 'mysql:host=127.0.0.1;dbname=walle', # 新建資料庫walle
'username' => 'root', # 連線的使用者名稱
'password' => '123456', # 連線的密碼
'charset' => 'utf8',
],
vi config/local.php
'db' => ['dsn' => 'mysql:host=127.0.0.1;dbname=walle',
'username' => 'root',
'password' => '123456',#此處需要設定連線mysql密碼,預設為空
],
curl -ss | phpmv composer.phar /usr/local/bin/composer # path目錄
cd walle-webcomposer install --prefer-dist --no-dev --optimize-autoloader -vvvv
./yii migrate/upnginx簡單配置 這裡需要注意下 根目錄一定要是web哦,不然訪問容易出錯使用這個:./yii walle/setup # 初始化專案
server這裡講提醒一下nginx的偽靜態規則location ~ \.php$
}
location /1)php.ini要啟用exec函式
不然提示
2)修改runtime檔案的許可權,開啟的時候會提示錯誤
預設的使用者名稱密碼:admin/admin
安裝好 walle後,進行專案配置,但是檢測總是出現錯誤,錯誤如下:宿主機**檢出檢測出錯,請確認把php程序使用者www的ssh-key加入git的deploy-keys列表。
目標機器檢測出錯,請確認php程序www使用者ssh-key加入目標機器的www使用者ssh-key信任列表。
目標機 ansible ping 出錯,請檢查 ~/.ssh/config 及 ssh 證書配置
目標機器檢測出錯,請確認www有目標機器發布版本庫/data/www/publish寫入許可權。
解決方法:
1,在宿主機安裝了ansible後,就消滅了乙個關於ansible未安裝的問題
2,其實我們是把宿主機器php程序使用者www加入了目標機器www使用者的信任authired_keys表的,但是任然報未加入,此處,主要的錯誤就是因為我們在目標機器中對於
www使用者的.ssh資料夾和authorized_keys的許可權和所屬者;
chmod -r 755 /home/www/
chmod -r 644 authorized_keys
chmod -r 700 .ssh/
必須滿足以上三個條件才能免密碼登入,同時也是解決總報沒有加入目標機器信任列表的問題關鍵
chown www.www -r /home/www 將所屬者為www使用者
3,需要記住的宿主機和目標機器的 .ssh authorized_keys /home/www/ 都需要注意許可權問題
4,最後出現恭喜檢測通過了 汗
問題一,
require():open_basedir restriction in effect問題
require():open_basedir restriction in effect問題
去尋找下(/home/www/project/walle-web/web:/tmp/:/proc/)這個是在哪兒設定的
我用的是lnmp一鍵安裝包搭建的環境,最後發現在web目錄下面有.user.ini檔案中寫了這句**,
然後把它設定為**的根目錄,就可以訪問了。
web是入口檔案的資料夾。
open_basedir=/home/www/project/walle-web:/tmp/:/proc/
修改完後,就可以訪問了
問題二,
git出現問題[www@centos-7-va aa]$ git pull origin master
the authenticity of host '10.211.55.8 (10.211.55.8)' can't be established.
ecdsa key fingerprint is 0c:e1:be:87:db:3e:f2:84:dc:0d:02:3e:c1:f3:5c:3e.
are you sure you want to continue connecting (yes/no)? yes
warning: permanently added '10.211.55.8' (ecdsa) to the list of known hosts.
解決:(比如我在www使用者機器上去登入另外一台root機器,就去root機器上編輯ssh_config檔案)
乙個徹底去掉這個提示的方法是,修改/etc/ssh/ssh_config檔案(或$home/.ssh/config)中的配置,新增如下兩行配置:
stricthostkeychecking no
userknownhostsfile /dev/null
修改好配置後,重新啟動sshd服務即可,命令為:/etc/init.d/sshd restart (或 service sshd restart )
當然,這是內網中非常信任的伺服器之間的ssh連線,所以不考慮安全問題,就直接去掉了主機金鑰(host key)的檢查。
ssh中遇到的「host key verification failed.」問題,也是和「stricthostkeychecking」配置有關。
同時,這個問題也就解決了,對於gitlab的直接拉取,有不會出現相似的提示了
Walle 瓦力上線部署系統正確安裝
一直在找自動化部署的系統,最好是php版本的,偶然的機會找到了walle這個部署系統,於是靜下心來學習一下 比較坑的是官方的文件和github上的文件都有問題,不清楚怎麼安裝,也許是版本滯後的問題,自己摸索了一下才正確安裝了 開始安裝walle mkdir p data www walle web ...
Walle 瓦力 多渠道打包
簽名生成 jks檔案 signingconfigs buildtypes 新增依賴 配置渠道 在專案的build.gradle檔案中新增依賴 buildscript dependencies walle outputs channels 定製渠道包的apk的檔名稱 渠道配置檔案 channelfil...
walle(瓦力)多渠道打包
1.在priject中進行配置 dependencies 2.在專案build中配置 第二行加入 在buildtypes上面新增 signingconfigs 在buildtypes的release裡面新增 signingconfig signingconfigs.sankuai 依賴compile...