【Drupal】Drupal9ローカル環境構築1 
~Virtual Boxでlinuxを動作させる~

Drupal9をローカル環境にインストールする方法を解説していきたいと思います。

このサイトで紹介する方法は、2021年時点のものです。情報は古いですが、現在でも環境構築の際は参考にしています。

以下の環境で構築していきます。

・Windows 10 Home

今回はサーバーOS起動の準備のため、OS環境を整えます。

すでにサーバを用意している方は、サーバが環境要件を満たしているか確認し、問題なければ本記事は読み飛ばしましょう。

環境要件は以下です。(2023/02/12 現在)

ミドルウェアバージョン
Nginx0.7.x以上
Apache2.4.7以上
PHPPHP7.3(PHP7.4は必須ではなく、PHP8はDrupal9.1.0からサポート)
MySQLまたはPercona5.7.8以上
MariaDB10.3.7以上
SQLite3.26以上
PostgreSQL10以上

サーバー?環境要件??となっている人は、とりあえずCentOS8.x※を使用してDrupalを動かしてみましょう。

※本記事は筆者がDrupalを仕事で使用していた時期(2021年)の情報を載せています。

CentOSは2021年12月末でサポートが終了しているため、AlmaLinuxなどをインストールしてください。

CentOSとは…

LinuxというOSの一種(ディストリビューションと言います)です。

OSとは、アプリケーションを動かすためのソフトウェアのことで、身近なものとしてはWindowsやMacOS、Androidなどがあります。

Linuxの特徴は無料で使用できるということと、Webサーバソフトが簡単に起動できるというところです(他にもいろいろできますが)。
Linuxは無料であり、中身を変更してもいいOSなので、皆が使いやすいようにカスタマイズして、有償で提供しちゃえということができます。

有償で提供しているディストリビューションの代表例がRed Hat Enterprise Linux(通称:RHEL)です。(職場の先輩がレルって読んでたので、私もレルと言っています)
RHELは素晴らしいOSですが、なんせ有償。手を出しにくいですよね。そこでCentOSの出番です。
RHELは有償ですが、Linuxであるためソースが公開されており、そのソースをもとに作成したOSがCentOSとのこと。(参照
CentOSのおかげで、私たちは無料で有償レベルのLinuxを使用することができるということです。

今回は、CentOS8.1をVirtual Boxを使用して動かしていきます。

VirtualBoxとは…

仮想化技術を使い、OS上にOSを立てることができるソフトウェアです。

Virtual Boxを使うことで、皆さんのOSがWindowsだったとしても、CentOSを動かすことができるようになります。

ではさっそく、VirtualBoxをインストールしましょう。
このサイトにアクセスし、インストーラーをダウンロードします。

VirtualBoxはバージョンによってはインストールに失敗することがあります。

失敗する場合は、他のバージョンをインストールしてみましょう。

ダウンロードしたインストーラを起動し、VirtualBoxをインストールしましょう。
インストールはデフォルトの設定のままでよいと思います。

VirtualBoxが起動すれば成功です。

続いて、仮想マシンを作成します。「仮想マシン」-「新規」をクリックします。
画像のように入力して「次へ」をクリックします(名前は適当なものを付けてください)。

メモリサイズを選択し、「次へ」をクリックします。4Gほどあれば問題ないかと思います。

「仮想ハードディスクを作成する」を選択して「作成」ボタンをクリックします。

デフォルトのまま「次へ」。

デフォルトのまま「次へ」。

デフォルトのまま「作成」

仮想マシンが作成されました。

起動する前にネットワーク等の設定をします。「設定」-「ネットワーク」をクリックし、アダプター2に「ホストオンリーアダプタ」を設定します。

こちらからisoファイルをダウンロードします。
今回は「CentOS-8.3.2011-x86_64-dvd1.iso」をダウンロードします。ファイル容量大きいのでダウンロードに時間がかかります。

VirtualBoxの「設定」-「ストレージ」で、「コントローラー:IDE」の「空」を選択し、右側の「光学ドライブ」のCDマークをクリックし、「ディスクファイルを選択」を選択します。

そして、先ほどダウンロードしたisoファイルを指定します。

これで準備は完了です。「起動」をクリックしましょう。

「起動ハードディスクを選択」で「起動」をクリック

「Install CentOS Linux 8」を選択してエンター

言語を選択して「続行」をクリック

コンソールをクリックするとマウスがWindows側に戻らなくなります。

キーボード左側の「ctlr」を押すことで解除できます。

「時刻と日付」をクリック

日本を選択して「完了」

「ソフトウエアの選択」をクリック(画像キャプチャを忘れていました。。)

「サーバー」を選択して「完了」

サーバー(GUI使用)を選ぶとGUI(グラフィックを使用した操作)でCentOSが使用できます。

Webサーバーとして使用する場合、GUIである必要もないので今回は選択しません。
WindowsやMacOSしか使ってこなかった方にとっては、GUIでの操作に慣れてしまって、CLI(コマンドのみを使用した操作。CUIと言われたりもする。)はとっつきにくいかもしれません。
ただ、世の中のWebサーバーはCLIでの操作が基本となっています。
なぜでしょうか。。GUIのほうが直感的なのにな~と思いますが、仕方がないのでCLIに慣れていくしかないのです。

画面が切れていて見えませんが、「インストール先」をクリック

そのまま「完了」

「rootパスワード」をクリック

パスワードを入力して「完了」

パスワードは絶対に忘れないでください。

「インストールの開始」をクリックし、完了するまで待ちます。

「システムの再起動」をクリック

CentOSがこのように立ち上がればインストール成功です。

rootでログインしてみましょう。

コンソール(操作画面)が使いづらいので、Teratermで接続します。

Teratermとは…

SSHというプロトコル(通信の約束事といったイメージで良いと思います)で、サーバと通信可能なコンソールを提供するソフトウェアです。

IT系の仕事をしている人にとっては、ほぼ必須なソフトとなっているんじゃないでしょうか。
Teratermによって、CLIでサーバを動かすことができます。

Teratermを起動すると以下のような画面が表示されるので「ホスト」にCentOSのIPアドレスを入力しましょう。

IPアドレスは、CentOSで以下のコマンドを入力すると表示できます。

$ ip a

以下のような画面が表示されるので、「192.168.」から始まるIPアドレスをTeratermに入力しましょう。

IPアドレスを入力するとユーザー名とパスワードを聞かれるので、rootユーザとrootユーザのパスワードを入力しましょう。

「192.168.」から始まるIPアドレスの意味

IPアドレスはパソコンを識別するために割り振られる番号です。
現在一般的に使用されているIPv4と呼ばれるプロトコルでは、 IPアドレスは32bit=32桁の0と1の並びで表現されます。0と1の組み合わせが32桁もあると、人間は理解しづらいですよね。

なので表示上は32桁を8桁ずつに分けて、それぞれ10進数に変換して表示しています。例えば、
「11000000 10101000 00111000 00000010」 は「192.168.56.2」として表示されます。

ネットワークの世界ではIPアドレスを適当につけるのではなく、ルールに従ってつけてねという決まりがあります。
「192.168.」から始まるIPアドレスは、「外部のインターネットに直接接続しない機器」は「11000000 10101000 xxxx xxxx」の 「x」の 部分を各機器に割り当てるというルールに則っています。
IPアドレスの割り振りについては、「10.」から始まるもの、「172.」から始まるものがあります。 「プライベートIPアドレス」で調べると詳しく知ることができるかと思います。

TeratermでCentOSに接続できれば成功となります。

続けて、CentOSをインターネットに接続できるようにします。
以下のコマンドでネットワーク設定ファイルを開きます。

$ vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

「ONBOOT=no」を「ONBOOT=yes」に変更(ネットワークを有効化)して「:wq!」で保存し、以下のコマンドを実行します。

$ systemctl restart NetworkManager.service
$ ip a

「enp0s3:」の項目に「10.」から始まるIPアドレスが表示されていれば成功です。

「192.」から始まるIPアドレスにつながらなくなった場合、ifcfg-enp0s8に「IPV6INIT=no」を指定し、 「IPADDR=192.168.56.x」(xは2~254の任意の数字)、「PREFIX=24」を追加した後、OSを再起動してください。

以上となります。次回は、Webサーバーを立ち上げたいと思います。

私はこの本(Drupal 9 Module Development)でDrupalの 勉強をしています。
Drupal9に関する日本語の本にはない、Drupalの具体的な実装方法が記載されています。