これは Laravel + Vue.js を使用した「履歴書・職務経歴書 管理アプリケーション」のベータ版です。
ただし 2019/11/7 現在は,管理者 (yatsubashi) を紹介するアプリケーションとしてのみ機能しています。
https://www.resume-catalog.net
このアプリケーションには主に以下の機能が実装されています。
- 認証
- REST-like API
- SPA (Single Page Application)
- DB トランザクション
- AWS S3 からの画像ファイル読み込み
- ユニットテスト
- CSRF (Cross-Site Request Forgeries) 対策
- 401, 404, 422, 500 エラーハンドリング および ナビゲーションガード
- Laravel
- Vue.js
- Vue.js
- VueRouter
- Vuex
- Sass (SCSS)
- Docker
- docker-compose
- AWS ECS
- Docker コンテナのデプロイ
- AWS ECR
- ECS で使用する Docker コンテナレジストリ
- AWS RDS
- MySQL エンジンを使用した RDB
- AWS S3
- 画像ファイル用ストレージ
- AWS ELB
- Application Load Balancer を使用したロードバランシング
- AWS Route 53
- 独自ドメインの取得と DNS
Docker と Node.js (v12.11.1 で動作確認済み) がインストールされている必要があります。
また,事前に AWS S3 の設定も必要です。
Mac OS X のみで動作確認済み,Windows では未確認です。
git clone [email protected]:yatsubashi/resume-catalog.git
cd resume-catalog
npm コマンドはホスト OS (resume-catalog
ディレクトリ) で実行します。
npm install
npm run development
監視モードでコンパイルする場合は以下。
npm install
npm run watch
cp ./laravel/.env.prod ./laravel/.env
上記で作成した .env
を以下の通り編集します。
...
DB_HOST=db
DB_PORT=3306
DB_DATABASE=local
DB_USERNAME=<任意>
DB_PASSWORD=<任意>
...
AWS_ACCESS_KEY_ID=<S3のアクセスキーID>
AWS_SECRET_ACCESS_KEY=<S3のシークレットアクセスキー>
AWS_DEFAULT_REGION=<S3のリージョン名>
AWS_BUCKET=<S3バケット名>
...
docker-compose で Docker コンテナを起動します。
docker-compose up -d
起動したら Dcoker コンテナに入ります。
docker-compose exec app ash
以下の操作は Docker コンテナ (PHP-FPM のコンテナ) 内で行います。
composer install
php artisan artisan key:generate
php artisan migrate
以上が完了すれば http://localhost:9000 でブラウザからアクセスできます。