Laravel의 docker 환경 구축. 라라도크에서 흠뻑.

laradock을 사용한 laravel의 환경 구축에 대해 흐르는 흐름을 정리했습니다.
docker 자체 처음이었기 때문에 비망록으로 메모 때입니다.

전제



· 도커가 설치되어 있음
· git이 가능한 환경임

➀ 작업 디렉토리에 laradock 복제


$ mkdir project 
$ cd project

$ git clone https://github.com/Laradock/laradock.git

여기서 작업 디렉토리는 project.
laradock는 git 클론에 의해 캡처됩니다.

이런 식으로 laradock의 디렉토리를 만들 수 있다고 생각합니다.

➁ 구성 파일 .env 만들기



laradock에서는 각 컨테이너의 환경 변수 설정을 .env 파일에 정의합니다. 이들은 docker-compose.yml 파일에 적용됩니다.
laradock의 env-example을 복사하여 .env를 만듭니다.
$ cd laradock
$ cp env-example .env

➂.env 편집



mysql 설정



mysql의 버젼은 디폴트에서는 latest가 되고 있어 그대로라면 8.0계의 버젼이 되므로 5.7로 변경해 둡시다.
왜냐하면 8.0에서는 인증 등의 변경이 있어 로그인할 수 없는 등 문제가 생깁니다. 특히 phpmyadmin을 사용하고 싶은 경우는 5.7로 해 둡시다.
자신은 여기에서 넘어져서 엄청 시간이 걸렸습니다.

사용자 이름, 비밀번호 등도 변경합니다.

MYSQL_VERSION=latest → MYSQL_VERSION=5.7
MYSQL_USER=default → MYSQL_USER=root
MYSQL_PASSWORD=latest → MYSQL_PASSWORD=root


➄ 컨테이너 구축, 시작



mysql, nginx, phpmyadmin 컨테이너를 시작합니다.
workspace와 같은 컨테이너는 nginx와 종속성이 있으므로 지정하지 않아도 함께 시작됩니다.
$ docker-compose up -d nginx mysql phpmyadmin

docker-compose는 여러 컨테이너를 함께 관리하는 메커니즘입니다.
docker-compose up 명령은 docker-compose.yml에 작성된 여러 컨테이너를 빌드하고 시작할 수 있습니다.

➅ laravel 프로젝트 만들기



laravel 설치는 composer나 node 등의 툴이 준비되어 있는 workspace 컨테이너로 실시합니다.

우선 컨테이너에 들어갑니다.
$ docker-compose exec  workspace bash

exec는 컨테이너 서비스를 실행하기 위한 명령입니다. 컨테이너에 들어가려면 bash를 붙입니다.

composer에서 laravel 프로젝트를 만듭니다.
$ composer create-project --prefer-dist laravel/laravel myapp


작업 디렉토리 내에 laravel 프로젝트가 생겼다고 생각합니다.

laravel 측의 DB 설정도 해 둡니다.
laravel의 .env 파일과 config/database.php 항목을 변경합니다.
사용자 이름: root
비밀번호: root
호스트 이름: mysql
DB 이름: default

➆ laravel의 위치 지정



.env의 APP_CODE_PATH_HOST 항목을 살펴보면 기본적으로
작업 디렉토리가 지정되었습니다.

이것을 APP_CODE_PATH_HOST=../myapp/로 수정합니다.


➇ 마이그레이션



다시 workspace 컨테이너로 들어가 마이그레이션을 수행합니다.
$ php artisan migrate

➈ 브라우저에서 액세스



브라우저에서 http://localhost로 이동하여 laravel 홈페이지가 표시되면 성공.

➉ phpmyadmin 방문



http://localhost:8080 로 이동합니다.

서버: mysql
사용자 이름: root
비밀번호: root

이것들을 입력해 로그인 할 수 있으면 OK.
테이블이 작성되었는지 확인합시다.

마지막으로



laradock에서의 환경 구축은 매우 간단하고, 우선 docker로 laravel을 시작해 보고 싶은 사람에게는 적합하다고 생각합니다. 하지만 프로젝트가 필요 이상으로 커지는 것, 또 docker에 대한 지식이 없어도 되어 버리는 것처럼 느껴집니다.

좀 더 docker에 대해 이해를 깊게하기 위해서는 laradock을 사용하지 않는 방법도 해 보면 좋다고 생각합니다.
그 방법의 기사도 썼기 때문에 좋으면 부디 → htps : // 코 m / 로페 19181 / ms / 10 72374839630 a f83b

좋은 웹페이지 즐겨찾기