- 投稿日:2019-02-09T20:57:41+09:00
Laravelコマンド一覧
Laravelの開発では不可欠なartisanコマンド。
開発のレベルにもよりますが、個人的に使う頻度が高いものを中心に書いていきます。
基本、初心者向けに書いていきます。artisan
artisan : 職人という意味。LaravelのテーマがThe PHP Framework For Web Artisansだからですかね。
基本的なコマンド
コマンド一覧参照
php artisan list php artisan -l
artisanコマンドの一覧を表示してくれます。
きちんとlistと打たなくても、 -l でも返してくれます。コンソール起動
php artisan tinker
コンソールを起動してくれます。
対話的にプログラムを扱いながら、動作のテストなども行えます。
データベースに入っているレコードの取得や追加作業が可能です。モデル作成
php artisan make:model モデル名
モデルを作成します。ちなみにモデル名の最初は大文字にしましょう。
例)
php artisan make:model Article
これでArticle.phpというファイルが作成されます。
ついでに覚えておいたほうがいいのが、-mです。
php artisan make:model モデル名 -m
これでモデルと一緒にマイグレーションファイルも作成してくれます。
マイグレーションファイルはDBを操作するためのファイルです。詳しくは下に↓。コントローラ作成
php artisan make:controller コントローラ名
コントローラが作成できます。コントローラ名はキャメルケースにしましょう。
例えば"ArticleController"みたいな感じです。
キャメルケースが分からない人はググってください。スネークケースとパスカルケースも。モデルとコントローラはコマンドを打って作成しますが、View(bladeファイル)はLaravel上で自分で作成します。resources/views配下に新しいファイルを作ってファイル名を〇〇.blade.phpにすればOKです。プロジェクトが大きくなりそうならbladeもディレクトリで分けて作成しましょう。
マイグレーション系コマンド
マイグレーションファイルはデータベースを操作するためのファイル。テーブルやカラムを追加したり、削除したり。Laravel初心者の方はエラーを起こしがちな箇所でもあります。特にrollbackとrefreshとresetの使い方は覚えておいて損はないです!
マイグレーションファイル作成
php artisan make:migration create_article_table
上記のコマンドは新しくテーブルを作成するときの例です。
カラムを追加するならadd_column_to_articles_table --table=articlesとか??マイグレーションファイル実行
php artisan migrate
マイグレーションファイルに追記した後に実行し、DBの変更を行います。
テーブルを作ったり、カラムを追加したり。。
段階ごとにまとめてロールバックしたいときは --stepを使います。
例えば --step=3 とつければ最後の3マイグレーションをロールバックしてくれます。ロールバック
php artisan migrate:rollback
ロールバックは最後に行なったマイグレーションを元に戻します。
リフレッシュ
php artisan migrate:refresh
リフレッシュは全部のデータベースマイグレーションをまずロールバックし、migrateコマンドを実行します。データベースの作り直しの時に使います。
リセット
php artisan migrate:reset
アプリケーション全部のマイグレーションをロールバックします。
マイグレーションステータス
php artisan migrate:status
マイグレーション状況を教えてくれます。
その他もろもろ
ルーティングの確認
php artisan route:list
routes.phpで設定したルーティングを確認できます。
逐次確認しながらコーディングしていけばエラーは起こりにくくなると思います。サーバー起動
php artisan serve
その名の通りサーバーを起動します。実際の動作をブラウザで確認できます。
サーバーを停止するにはCtrl+cです。コマンド作成
今まではLaravelにあらかじめ設定されているコマンドを紹介してきましたが、実は自分でコマンドを作ることもできます。
php artisan make:console コマンド名 (~5.2) php artisan make:command コマンド名 (5.3~)
例えばあるページの情報をスクレイピングするコマンドを作成したり。。
結構便利なので、慣れてきたら使ってみてください。
*Laravel5.2までの人はmake:console , 5.3以降の人はmake:commandです。おまけ
php artisan inspire
Laravelで設定されている名言を返してくれます。全部英語です。
1回試したら2度と使わないと思います。。
laravel/vendor/laravel/framework/src/Illuminate/Foundation/Inspiring.phpに設定されているので、自分で追加することもできます最後に
色々書きましたが、分からなくなったら最初のphp artisan -lでリストを確認してください
最初は何かを参照しながらでも、慣れてきたら何も見なくても操作できるようになります。
頑張りましょう!!
- 投稿日:2019-02-09T14:48:46+09:00
Laravel Forgeを使ってAWSのサーバー構築を15分で終わらせる
業務でAWSに本番サーバーを立てる必要があり、サクッと環境構築+デプロイできる都合の良いツールはないかなぁと探していたら、ありました。
ありましたと言っても、公式で紹介されているんですけどねw(※有料です)Forgeによるデプロイ
https://readouble.com/laravel/5.7/ja/deployment.html環境構築に時間をかけるのはやめよう!
AWSでのサーバー構築に慣れていない場合、VPC作成〜EC2インスタンス作成〜必要なモジュールのインストール、等々で1時間以上かかってしまうこともあります。ところが、Forgeだと最低限の設定であれば15分程度で済ませることができてしまうんですよね。インフラ初心者でもAWSのややこしいコンソールはほとんど見る必要がなくなります。(とはいえ、業務レベルになるとAWSの知識や設定方法の理解は必要になりますが。。)
設定手順
AWSのアカウントを取得していることを前提で話を進めます。
事前準備
IAMの設定
AWSのIAMから「ユーザーを追加」から、「AmazonEC2FullAccess」にチェック✓を入れ、IAMユーザーを作成します。
アクセスキーIDとシークレットアクセスキーは、Forgeで使います!Forgeの設定
サインアップ
https://forge.laravel.com/
必要な項目を記入し、登録します。
APIキーの登録
Forgeにログインすると、画面の下の方にサービスを選択する箇所があるので、AWSを選択します。先程確認したIAMのアクセスキーIDとシークレットアクセスキーを入力し、Connectをクリックしましょう。
画面上部にGreat! Now let's connect to a source control and server provider so we can create servers!
と表示されれば成功です!
(うまくいかない場合は、IAMの設定もしくはキーの入力間違いがないかを確認してみてください)
Service Providersの登録
Forgeの右上のメニューから、MyAccountを選択し管理画面へ移動します。
Service ProviderからAmazonを選択し、Profile NameとIAMのアクセスキーIDとシークレットアクセスキーを入力しましょう。
(Profile Nameは自分が分かれば何でも構いません。後からでも変更は可能です!)
EC2インスタンスの作成
さて、Forgeの初期設定が終わったら、いよいよサーバーを立てていきます!
Forge画面トップのCreate ServerからAWSを選択しましょう。
(Connectが完了しているのにCreate Serverが表示されない場合は、画面上部にお知らせが表示されていると思うので「Skip For Now」を選択)Credentials: Server Providersで登録したProfile Name
Name: サーバー名(EC2のインスタンス名)
Region: リージョンを選択(分からなければTokyoを選択)
Server Size: お財布と相談してください。
VPC: 新規に作成する場合は、Create New。既存のVPCに作成したい場合は、それを選択してください。
(VPC作成済なのに表示されない場合は、Regionが間違っている可能性があります)
VPC Name: 作成するVPC名(既存のVPCに作成する場合は、サブネットが選択できるようになります)
PHP Version: インストールするPHPのバージョン
Post-Provision Recipe: インストール後に起動するスクリプト(今回は作成していません)
Database: 作成するデータベース(作成しない場合はNoneを選択)
Database Name: データベース名
Provision As Load Balancer: ロードバランサーとして作成する場合はチェック✓。今回はしない。入力できたら、Create Serverをクリックします。
すると、インスタンスが作成されPHPやNginx等Laravelに必要なものがサーバーにインストールされます。
インスタンスの作成には10分程かかるので、のんびり待ちましょう!
インスタンスの作成が完了したら、サーバーのSudoパスワードとデータベースのパスワードが記載されたメールが届きます。構築完了!
Connectionの矢印をクリックし、接続できていればSuccessfulが表示されます。
デプロイ
今回は、Githubを使います。
上部メニューのSitesからdefaultをクリックすると、Git Repositoryが選択できます。
リポジトリのインストール
記載されているサーバーの公開鍵を、Githubの指定のリポジトリに設定します。
リポジトリのアドレスとブランチを設定すれば、Install Repositoryをクリックし、インストールが終わるのを待ちましょう!
デプロイする
インストールが完了すれば、右上のDeploy Nowをクリックするのみです!
以上で最低限の設定は完了です!
これでアプリケーションの開発に集中できますね!参考
php開発環境の管理に超便利なLaravel Forgeの始め方 (上)
https://qiita.com/MasaGon/items/ab75001477192ecd51b5
Laracasts - EPISODE 3 Your First Project
https://laracasts.com/series/learn-laravel-forge/episodes/3