我已經設置了bitbucket管道,以便在提交時推送登臺服務器上的更新。我正在使用git ftp
。在bitbucket管道推送後,在部署服務器上運行一組命令?
在下一步中,我需要在部署(登臺)服務器上運行各種命令,以便在推送後正確運行應用程序。
例如:
composer install
php artisan db:seed
php artisan migrate
..等等。
我已經設置了bitbucket管道,以便在提交時推送登臺服務器上的更新。我正在使用git ftp
。在bitbucket管道推送後,在部署服務器上運行一組命令?
在下一步中,我需要在部署(登臺)服務器上運行各種命令,以便在推送後正確運行應用程序。
例如:
composer install
php artisan db:seed
php artisan migrate
..等等。
如果您的登臺服務器位於AWS等Cloud Service上,那麼您可以使用AWS CodeDeploy通過使用boto的python腳本進行同樣的操作。或者如果你使用別的東西,不管相應的東西如何。部署指南https://confluence.atlassian.com/bitbucket/build-test-and-deploy-with-pipelines-792496469.html有更多相關細節。
如果你的服務器是內部部署服務器(和基於UNIX的),你可以使用SSH密鑰對像在服務器上執行命令:
ssh -i xyz.pem [email protected] 'command -args'
ssh -i xyz.pem [email protected] 'command -args'
你可以嘗試添加了一步通過ssh運行一個shell腳本。
$ ssh [email protected] "ls -la"
,
$ ssh [email protected] "php artisan db:seed"
你可以找到更多的方法在這裏運行: How to use SSH to run a shell script on a remote machine?
和關於作曲家一步,你可以在你的receipe補充:
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
composer install --no-interaction --no-progress --prefer-dist
登臺服務器不在AWS上的VPS上。執行ssh命令似乎是正確的方式。 – Sisir