Laravel + Laradock로 환경 구축부터 인증 처리가 움직이는 곳까지 단번에 한다

TL;DR



라라벨 로 웹 어플리케이션 개발하는 환경을 Laradock

환경



Mac OS X 10.13.6

준비



Docker CE for Mac 을 DL& 설치하고 docker , docker-compose
Docker ID가 필요하기 때문에 만들어 둡니다.

가정하는 목표



프로젝트 이름은 sample
work
├── laradock
└── sample
  • PHP 7
  • Laravel 5.6
  • MySQL 5.7
  • Nginx (+php-fpm)

  • 이런 식으로 localhost에서 최소한의 인증 처리가 움직이는 웹 앱을 확인할 수 있는 곳

    시작



    우선은 프로젝트용 디렉토리 작성으로부터 workspace 의 컨테이너 움직이는 곳까지
    # on local
    $ mkdir work && cd work
    $ git clone https://github.com/laradock/laradock.git
    $ cd laradock
    $ cp env-example .env
    $ docker-compose up -d workspace
    
    workspace 컨테이너에서 Laravel 프로젝트 만들기
    # on local
    $ docker-compose exec --user=laradock workspace bash
    # on workspace container
    $ composer create-project laravel/laravel sample
    $ exit
    
    .env
    # on local
    $ vim .env 
    
    APP_CODE_PATH_HOST=../
    MYSQL_VERSION=latest
    ↓
    APP_CODE_PATH_HOST=../sample
    MYSQL_VERSION=5.7
    

    다시 쓰면 한번 workspace 의 컨테이너가 떨어지고, 새롭게 nginx 이나 mysql 와 함께 기동한다
    # on local
    $ docker-compose down
    $ docker-compose up -d workspace nginx mysql
    

    일어나면 localhost 움직이고 있을 것이므로, 브라우저로부터 액세스 해 한 번 동작 확인한다



    Laravel의 화면을 확인할 수 있으면 일단 OK로, 이대로라면 이 페이지밖에 조작할 수 없기 때문에, 인증 주위를 움직인다

    우선 Laravel 프로젝트 측의 .env 의 설정이 디폴트라면 Homestead
    $ vim ../sample/.env
    
    DB_HOST=127.0.0.1
    DB_DATABASE=homestead
    DB_USERNAME=homestead
    ↓
    DB_HOST=mysql
    DB_DATABASE=default
    DB_USERNAME=default
    

    나중에 인증 페이지와 필요한 테이블을 만들려면 workspace 컨테이너에서 명령을 실행합니다.
    # on local
    $ docker-compose exec --user=laradock workspace bash
    # on workspace container
    $ php artisan make:auth
    $ php artisan migrate
    $ exit
    

    이제 브라우저에서 localhost에 액세스하여 확인합니다.



    오른쪽 상단에 LOGINREGISTER 링크가 나타납니다.

    이제 REGISTER에서 계정을 등록하고 LOGIN에서 로그인하면 어디까지나 움직일 수 있어야합니다.

    빠는거리



    우선, 디폴트로 그대로 시작하면 mysql은 8계가 들어가지만, 8계라고 migrate 그리고 에러가 된다

    이 근처 의 이야기라고 생각되지만, 8계 전혀 접한 적 없고, 정보량적으로도 아직 5계가 안심감 있고, 라고 하는 것으로 5.7을 명시적으로 지정하도록 했다

    나중에 Laradock의 mysql은 기본적으로 ~/.laradock/data 라고 설정치로 제대로 써 있다)

    그 밖에도 도중에 「데이터베이스명 바꾸자~」라든가 옆길 벗어나면서 하고 있으면 상당히 조금 빠졌기 때문에, 조심하는 편이 좋다고 할까, 우선은 여기까지 움직일 수 있는 것을 확인하고 나서 세세한 곳 재검토하는 편이 좋다고 생각해 (그래서 기사 쓴)

    좋은 웹페이지 즐겨찾기