1
1

More than 1 year has passed since last update.

Debian に Apache+PHP Laravel+Node.js 環境を構築する

Last updated at Posted at 2023-04-20

はじめに

最近は Linux 環境を構築する場合でも コンテナーを利用するのが一般的ですが、素の Debian で Laravel を動かす機会があったので構築手順を記録として残しておきます。

動作環境

新しめのバージョンならたいてい動作するとは思いますが、以下の環境にインストールしました。

  • Azure Virtual Machine
  • Debian bullseye (バージョン 11)

目次

1. 基本モジュールのインストール

  1. Web アクセス系とかユーティリティ
    $ sudo apt update
    $ sudo apt install -y openssl curl wget git zip unzip vim tzdata
    
  2. このあと使う環境変数を定義しておく(以下を /etc/profile に追記する)
    $ sudo vim /etc/profile
    
    /etc/profile
    # TimeZone
    export TZ=Asia/Tokyo
    
    # Locale
    export LANG=ja_JP.UTF-8
    
    # for Apache 
    export APACHE_RUN_USER=www-data
    export APACHE_RUN_GROUP=www-data
    export APACHE_PID_FILE=/var/run/apache2/apache2.pid
    export APACHE_RUN_DIR=/var/run/apache2
    export APACHE_LOCK_DIR=/var/lock/apache2
    export APACHE_LOG_DIR=/var/log/apache2
    
    # for PHP & Composer
    export PHP_VERSION=8.0
    export COMPOSER_HOME=/.composer
    export PATH="$PATH:${COMPOSER_HOME}/vendor/bin"
    
  3. 環境変数を有効にするためログインし直す。または(面倒なら) /etc/profile を読み込む
    $ . /etc/profile
    

2. Apache のインストール

  1. Laravel を使うため Rewrite モジュールも入れておく
    $ sudo apt install -y apache2
    $ sudo a2enmod rewrite
    

3. PHP のインストール

  1. まずは指定バージョンをインストールするための準備
    $ sudo apt install -y gnupg2 ca-certificates lsb-release apt-transport-https
    $ wget -qO - https://packages.sury.org/php/apt.gpg | sudo apt-key add -
    $ echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
    
  2. 指定バージョンの PHP をインストール(基本モジュールと Apache 連携のみ)
    $ sudo apt update
    $ sudo apt install -y php${PHP_VERSION} php${PHP_VERSION}-cli php${PHP_VERSION}-common libapache2-mod-php${PHP_VERSION}
    $ sudo update-alternatives --set php /usr/bin/php${PHP_VERSION}
    $ php -v    # PHP のバージョンを確認
    
  3. Composer をインストール
    $ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
    $ php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
    sudo php composer-setup.php  --install-dir=/usr/bin --filename=composer
    $ php -r "unlink('composer-setup.php');"
    $ sudo mkdir -p $COMPOSER_HOME
    $ sudo chmod 777 -R $COMPOSER_HOME
    $ composer -V    # composer コマンドのバージョンを確認
    
  4. Laravel での開発に必要な拡張機能をインストール
    • DebugKit と PHPUnit、XDebug も使えるようにしておく
    • PDO は PostgreSQL と MySQL を入れておく
    $ sudo apt install -y php${PHP_VERSION}-curl php${PHP_VERSION}-zip php${PHP_VERSION}-bcmath php${PHP_VERSION}-mbstring php${PHP_VERSION}-xml php${PHP_VERSION}-sqlite3 php${PHP_VERSION}-dom php${PHP_VERSION}-xmlwriter php${PHP_VERSION}-xdebug php${PHP_VERSION}-pgsql php${PHP_VERSION}-mysql
    $ php -m    # インストールされた拡張機能を確認
    
  5. ついでに Laravel インストーラーも入れておく
    $ composer global require laravel/installer
    $ laravel -V    # laravel コマンドのバージョンを確認
    

4. Node.js のインストール

  1. npm と yarn は流行りや好みもあるのでどちらでも動くようにインストールしておく
    $ curl--sL https://deb.nodesource.com/setup_16.x | sudo bash -
    $ sudo apt install -y nodejs
    $ sudo npm install -g yarn
    $ node -v    # Node.js のバージョンを確認
    $ npm -v     # npm コマンドのバージョンを確認
    $ yarn -v    # yarn コマンドのバージョンを確認
    
1
1
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
1
1