0
0
個人開発エンジニア応援 - 個人開発の成果や知見を共有しよう!-

【23年9月】Laravel10をとりあえず使いたい時のとりあえずの設定をする

Posted at

実行環境

OS macOS Ventura 13.5
shell zsh 5.8.1 (x86_64-apple-darwin21.0)
middleware Docker(24.0.6)
framework laravel(10.20.0)
vite(4.4.9)

検証日: 2023/09/25

本記事で得られる結果

  • 日本向けの最低限の設定を行った Laravel10 動作環境
    • Laravel(10.20.0)
    • PHP(8.2.9)
    • MySQL(8.0.34)

前提

  • Dockerインストール済み

手順

Laravel

  1. 公式を参照 (macOS向け)

    https://laravel.com/docs/10.x#getting-started-on-macos

  2. インストール

    curl -s "https://laravel.build/example-app" | bash
    

    example-app はプロジェクト名なので変更可能です

  3. 実行確認

    cd example-app
    
    ./vender/bin/sail up
    

    Control + C で終了

  4. エイリアス設定

    vim ~/.zshrc
    
    .zshrc
    + alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail'
    

タイムゾーンや文字コードの変更

  1. Docker をカスタマイズ可能にする

    sail artisan sail:publish
    
  2. コンテナのタイムゾーン設定

    docker/8.2/Dockerfile
    - ENV TZ=UTC
    + ENV TZ='Asia/Tokyo'
    
  3. MySQLの文字コード設定

    日本語を利用できるようにするために初期設定ファイルを作成する

    touch docker/8.2/my.cnf
    
    vim docker/8.2/my.cnf
    
    docker/8.2/my.cnf
    + [mysqld]
    + character-set-server = utf8mb4
    + collation-server = utf8mb4_bin
    + 
    + [client]
    + default-character-set = utf8mb4
    

    docker-compose.ymlへパスを追加

    docker-compose.yml
    mysql:
        image: 'mysql/mysql-server:8.0'
        ports:
            - '${FORWARD_DB_PORT:-3306}:3306'
        environment:
            MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
            MYSQL_ROOT_HOST: '%'
            MYSQL_DATABASE: '${DB_DATABASE}'
            MYSQL_USER: '${DB_USERNAME}'
            MYSQL_PASSWORD: '${DB_PASSWORD}'
            MYSQL_ALLOW_EMPTY_PASSWORD: 1
        volumes:
            - 'sail-mysql:/var/lib/mysql'
    +       - './docker/8.2/my.cnf:/etc/my.cnf'
            - './docker/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh'
    

    docker/8.2/Dockerfile を利用する想定だがアップデート次第では変更される場合があるので読み替えてください

日本語ローカライズ

  1. 設定ファイルの変更

    config/app.php
    - 'locale' => 'en',
    + 'locale' => 'ja',
    
    - 'fallback_locale' => 'en',
    + 'fallback_locale' => 'ja',
    
    - 'faker_locale' => 'en_US',
    + 'faker_locale' => 'ja_JP',
    
  2. 日本語ファイルの追加

    sail artisan lang:publish
    
    sail composer require laravel-lang/lang
    
    sail artisan lang:add ja
    

    laravel-lang/lang:^13.2 が入る想定
    13.2 より低い場合に lang:add ができない場合がある

  3. Laravel のタイムゾーン設定

    config/app.php
    - 'timezone' => 'UTC',
    + 'timezone' => 'Asia/Tokyo',
    

動作確認

sail build --no-cache

sail up -d

備考

  • ローカライズの注意

    # https://laravel-lang.com/installation/ より
    
    sail composer require laravel-lang/common
    
    # laravel-lang/lang が先に入っていると競合する場合がある
    
  • 最初からLaravelインストールするときにロケール指定できると楽ですね

    例えば
    - curl -s "https://laravel.build/example-app" | bash
    + curl -s "https://laravel.build/example-app?lang=ja" | bash
    
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0