ホームページ >バックエンド開発 >PHPチュートリアル >Laravel を使用した github CI/CD パイプライン
これは私の最初の投稿なので、多くのことが整理されていないかもしれませんが、私がこれまでに行ってきた、または現在行っている方法を正確に言おうとします、InshaAllah。
一般的にベンガル語では良い投稿が得られません。私がCI/CDを使用してcPanelにlaravelサイトをどのようにデプロイしているか考えました。それが投稿としてあれば、後で私にとって役立つでしょうし、多くの人が私の兄弟にも利益をもたらすことができるでしょう。それでは、メインのタスクに進みましょう。
まず、cPanel にログインし、FTP アカウント メニューに移動する必要があります。そこに行ったら、FTP アカウントを開く必要があります。そこでアカウントが正常に作成されると、下の図のようになります。
アカウントを作成したら、ユーザー名、サーバー、ポートを保存します。これらは後で役立ちます。
その後データベースを作成しますが、開発者であればこれを知っておく必要があるため、表示されていません。
その後、github にログインし、プロジェクトのリポジトリを確認します。
そして、以下の画像のようにしてください。
その後、[アクション] メニューに移動すると、以下のようなインターフェイスが表示されます。ここをクリックして自分でワークフローを設定すると、yml でロジックを記述するように指示されます。次のファイルをコピーして貼り付け、データベース名、ユーザー名、パスワードを指定します。
`名前: Laravel CI/CD
に:
プッシュ:
ブランチ: [ マスター ]
プルリクエスト:
ブランチ: [ マスター ]
ジョブ:
Web デプロイ:
名前: デプロイ中
実行: ubuntu-latest
services: mysql: image: mysql:5.7 ports: - 3306:3306 env: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: dbname MYSQL_USER: username MYSQL_PASSWORD: password options: '--health-cmd="mysqladmin ping --silent" --health-interval=10s --health-timeout=5s --health-retries=3' steps: - uses: actions/checkout@v2.3.2 - name: Setup PHP uses: shivammathur/setup-php@15c43e89cdef867065b0213be354c2841860869e with: php-version: '8.1.21' - name: Copy .env run: php -r "file_exists('.env') || copy('.env.example', '.env');" - name: Update .env for CI environment run: | sed -i 's/^DB_CONNECTION=.*/DB_CONNECTION=mysql/' .env sed -i 's/^DB_HOST=.*/DB_HOST=127.0.0.1/' .env sed -i 's/^DB_PORT=.*/DB_PORT=3306/' .env sed -i 's/^DB_DATABASE=.*/DB_DATABASE=dbname/' .env sed -i 's/^DB_USERNAME=.*/DB_USERNAME=username/' .env sed -i 's/^DB_PASSWORD=.*/DB_PASSWORD=password/' .env - name: Install Dependencies run: composer install --ignore-platform-reqs - name: Generate key run: php artisan key:generate - name: Wait for MySQL to be ready run: | until mysqladmin ping --host=127.0.0.1 --user=username --password=password --silent; do echo "Waiting for database connection..." sleep 5 done - name: Test Database Connection run: php -r "new PDO('mysql:host=127.0.0.1;dbname=dbname', 'username', 'password');" - name: Rollback Migrations and Seed run: php artisan migrate:fresh --seed --verbose - name: Directory Permissions run: chmod -R 775 storage - name: ? Sync files uses: SamKirkland/FTP-Deploy-Action@4.0.0 with: server: ${{ secrets.FTP_SERVER }} username: ${{ secrets.FTP_USERNAME }} password: ${{ secrets.FTP_PASSWORD }} server-dir: / local-dir: ./ exclude: | vendor/* node_modules/*
`
その後、[変更をコミット] ボタンをクリックすると、Git の master ブランチにコードがある場合、それらは cpanel の public_html フォルダーに保存されます。また、ローカルではマスター ブランチからプールを更新する必要があります。初回はアップロードに時間がかかりますが、次回からはそれほど時間はかかりません。新しいコードがマスター ブランチにプッシュされるとすぐに、問題なく自動的にサーバーに送信され、時間が大幅に短縮され、作業が効率化されます。
ご理解いただければ幸いです。間違いがありましたら、コメントでお知らせください
。
気に入っていただけましたら、コメントをお願いします
ありがとうございます。
以上がLaravel を使用した github CI/CD パイプラインの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。