Help us understand the problem. What is going on with this article?

Laradock、PostgreSQLでローカル開発環境を構築した

こんにちは、キッド✈️と申します。
東南アジア発のスタートアップスタジオ、GAOGAOのサーバーサイドエンジニアです。
このQiitaはGAOGAO Advent Calendar 2019の8日目の記事です。

LaravelアプリケーションをHerokuで動かしている人は、DBにPostgreSQLを使っている方が多いかと思います。

Laradock関連の記事は、MySQLを使用している方が多いので、同じようにPostgreSQLを使う方のためになればとセットアップ手順をメモしてみました。

質問なども受け付けていますので、ある方はお気軽にコメント欄へ。

さっそく始めましょう。

以下の構築作業を行う前に、Docker for macのインストールをお願いします。

(1)まずはローカル開発環境用のディレクトリを作ります。

$ mkdir YOUR_PROJECT_NAME  
$ cd YOUR_PROJECT_NAME 
$ git init  

(2)作成したディレクトリ内に、laradockとあなたが開発しているLaravelアプリケーションをインストールしましょう。もちろん新規でLaravelアプリケーションを作成しても大丈夫です。

/YOUR_PROJECT_NAME

$ git submodule add https://github.com/Laradock/laradock.git  
$ git clone YOUR_REPOSITORY_URL YOUR_REPOSITORY_NAME

(3)laradockの.envファイルを作成します。

/YOUR_PROJECT_NAME

$ cd laradock  
$ cp env-example .env  

(4)laradockの環境変数を更新します。

/YOUR_PROJECT_NAME/laradock/.env

- APP_CODE_PATH_HOST=../  
+ APP_CODE_PATH_HOST=../YOUR_REPOSITORY_NAME/  

(5)workspace内のPHP_VERSIONを、laradockの環境変数で書いているPHP_VERSIONにするために、ビルドします。

/YOUR_PROJECT_NAME/laradock

$ docker-compose build workspace  

(6)必要なコンテナを作成、開始します。

/YOUR_PROJECT_NAME/laradock

$ docker-compose up -d workspace nginx postgres  

(7)workspaceのコンテナに入ります。

/YOUR_PROJECT_NAME/laradock

$ docker-compose exec workspace bash  

(8)composerパッケージをインストールし、Laravelのセットアップを行います。

$ composer install  
$ cp .env.example .env  
$ php artisan key:generate  

(9)アプリケーションのDBの環境変数を、pgsql用に更新します。

/YOUR_PROJECT_NAME/YOUR_REPOSITORY_NAME/.env

DB_CONNECTION=pgsql  
DB_HOST=postgres  
DB_PORT=5432  
DB_DATABASE=default  
DB_USERNAME=default  
DB_PASSWORD=secret  

(10)再度workspaceのコンテナに入り、DB関連のセットアップをしましょう。

/YOUR_PROJECT_NAME/laradock

$ docker-compose exec workspace bash  
$ php artisan key:generate  
$ php artisan migrate  
$ php artisan db:seed  

(11)ブラウザで確認しましょう。アプリが動くと思います。Getiing Started!!

http://localhost/

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした