> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudtype.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Laravel

## 준비 및 확인사항

### 지원 PHP 버전

* **7.3, 7.4, 8.0, 8.1, 8.2 (배포 시 자동 탐지)**

### Procfile 작성

* Laravel 서비스를 배포하기 위해서는 소스의 루트 위치에 `Procfile` 을 생성하고 다음의 내용을 작성한 후 원격 저장소에 반영해놓아야 합니다.
  ```plain theme={null}
  web: vendor/bin/heroku-php-apache2 public/
  ```

## 대시보드를 통한 생성

### 1. 템플릿 선택하기

* **[Github 저장소에서 템플릿 보기](https://github.com/cloudtype-examples/laravel.git)**

* 시작하기 페이지의 **언어/플랫폼** 카테고리에 접속 또는 `⌘ + K` 를 사용하여 `laravel` 를 검색하고 `Laravel` 템플릿을 클릭하세요.

<Figure className="mt-5 mb-12" src="quickstart/laravel/select_template.png" size="3xl" />

### 2. 새 저장소(repository) 생성하기 또는 나의 저장소 선택하기

클라우드타입은 기본적으로 사용자 Github 계정의 저장소에 반영된 소스를 배포합니다.

* 1️⃣ **배포하려는 저장소가 없다면**
  ⇒ 클라우드타입이 제공하는 예제 저장소를 사용자의 Github 계정에 생성합니다.
* 2️⃣ **배포하려는 저장소가 있다면**
  ⇒ 클라우드타입에서 배포할 사용자 본인의 저장소를 선택합니다.

#### 1️⃣ 배포하려는 저장소가 없는 경우

* 아래의 그림처럼 **비공개 저장소 설정하기** 여부만 선택한 후 `저장소 만들기` 를 클릭하면 사용자의 Github 계정에 해당 템플릿 저장소가 자동으로 생성됩니다.

<Figure className="mt-5 mb-12" src="quickstart/laravel/repository-1.png" size="3xl" />

#### 2️⃣ 배포하려는 저장소가 있는 경우

* Github 계정에 존재하는 저장소를 사용하려는 경우 아래의 화면처럼 여러 저장소 중 배포를 원하는 항목을 선택하세요. 이미 위에서 저장소를 만든 경우 이 부분은 건너뛰어주세요.

<Figure className="mt-5 mb-4" src="quickstart/laravel/repository-2.png" size="3xl" />

* 빌드 및 시작을 위한 명령어 등 세부 설정이 기본 설정과 다를 수 있습니다. 아래의 그림처럼 빌드 설정의 **설정변경** 버튼을 클릭하고 수정이 필요한 설정사항을 수정해주세요.
* `APP_KEY`: Laravel 내부적으로 사용되는 APP\_KEY 값을 입력해주어야 합니다. Laravel 프로젝트가 위치한 경로에서 `php artisan key:generate` 명령을 수행하면 `.env` 파일에 APP\_KEY에 대한 값이 할당되며, 이 값을 배포 설정의 **APP\_KEY** 필드에 입력해주세요.

<Figure className="mt-5 mb-12" src="quickstart/laravel/repository-3.png" size="3xl" />

### 3. 배포하기

* 위 과정을 마친 후 마지막으로 배포할 리전을 선택하고 `배포하기` 버튼을 클릭하면 배포가 자동으로 진행됩니다.

<Figure className="mt-5 mb-4" src="quickstart/laravel/deployment-1.png" size="3xl" />

<Figure className="mt-5 mb-12" src="quickstart/laravel/deployment-2.png" size="3xl" />

***

## CLI 를 통한 생성

### 1. 사전준비

아래 가이드에 따라 CLI 를 설치하고 로그인을 진행해주세요.<br />
[CLI 설치하기](/ko/developers/cli/install)

### 2. 설정파일 생성

`.cloudtype/app.yaml` 파일을 생성하세요.

#### Laravel

```yaml theme={null}
name: laravel
app: php
options:
  ports: 9000
  env:
    - name: APP_KEY
      value: [APP_KEY 값]
    - name: LOG_CHANNEL
      value: errorlog
context:
  git:
    url: https://github.com/cloudtype-examples/laravel.git
    branch: main
  preset: laravel
```

### 3. 배포하기

```sh theme={null}
$ ctype apply
```

## 참고

### FAQ

* [서비스 접속 시 50X 페이지만 뜹니다.](/ko/troubleshooting/common)
* [하나의 Git 원격 저장소에서 두 개 이상의 앱을 배포하고 싶어요.](/ko/troubleshooting/git)

### 공식문서

* [Laravel Docs](https://laravel.com/docs/10.x)
