라라벨 프로젝트 샘플 하나를 정해서 진행해봄.
github.com/rappasoft/laravel-boilerplate
$ git clone https://github.com/rappasoft/laravel-boilerplate.git my-project
$ cd my-project
$ cp .env.example .env
.env 파일 로컬 db 환경에 맞게 수정
$ composer install
$ npm install
$ php artisan key:generate
$ php artisan migrate
$ php artisan db:seed
$ npm run dev
$ php artisan storage:link
개발 서버에서 테스트 해보려면
$ php artisan serve --host 0.0.0.0 --port 8000
완전 로컬로 접속하는 경우는 --host 0.0.0.0 필요없음.
aws console 에서 elastic beanstalk 앱과 환경 2개 (dev , prod)를 생성한다.
aws console 에서 RDS를 하나 생성한다. (aurora나 mysql 등)
라라벨은 nginx에서는 라우팅 추가설정이 필요하므로, eb구성에서 apache로 선택하면 더 편하다.
db는 외부별도 RDS를 만들었으므로 eb에서는 db구성을 하지 않는다.
문서root 는 반드시 /public 으로 해야 라라벨이 정상 작동한다.
IAM 설정, 보안그룹 설정 등을 잘 해준다.
mysqldump로 db.sql 파일을 만들고, RDS에 스키마를 dev와 prod로 각각 생성해서 import해준다.
소스 파일 전체를 zip으로 압축한다.
$ zip ../my-project.zip -r * .[^.]* -x "vendor/*"
그리고 eb 환경 화면에서 직접 업로드 해서 올려준다.
ebcli를 통해서 eb deploy 를 해도 되지만, 맨 처음에는 .env 포함 여러 구성파일들을 올려놔야 하므로
.gitignore 도 수정해야 하는 등 번거로움이 있으니 맨 처음에는 .zip을 업로드 하는 것이 편한 것 같다.
$ eb init
으로 세팅해주고
$ git init
$ git add .
$ git commit -m "처음 커밋"
등으로 커밋을 해주고 deploy를 해야 변경 소스 등이 반영 된다.
$ eb deploy
'기타 개발팁' 카테고리의 다른 글
파이썬 크롤링 (2) - 동적 웹사이트 파이썬 크롤링 (0) | 2021.09.30 |
---|---|
파이썬 크롤링 (1) - 파이썬 크롤링을 위한 기본 세팅 (0) | 2021.09.30 |
AWS EC2 인스턴스 만들고 SSH putty 접속 (0) | 2021.03.01 |
MySQL MariaDB CPU 사용량 먹고 느려질 때 (0) | 2021.02.16 |
도메인 이전하기 from GoDaddy to another (0) | 2020.05.21 |