SSブログ

WSL2でLaravel使おうとした顛末。 [Linux]

結局、Laravelは入れられたんだけど、DBを動かせなくてやめたんだけどね。

https://qiita.com/sano1202/items/6021856b70e4f8d3dc3d

まずWSL2でCentOS8をAlmaLinuxに変えたことを言わなくてはならない。これ自体、かなり問題があるのかもしれない。そもそもがWSL2のCentOS8がタダで提供されていないので手動インストールなのに加え、その上でAlmaLinuxに変えてしまっている。


まずPHPをdnfで入れたらver.7.2とかだったと思うけど、結構中途半端なバージョンが入る。composerを入れて、Laravelを入れようとするけど、いろいろ依存性が足りなくて怒られる。たぶんunzipとgitとかと、PHPのコンポーネントがいくつか足りないといわれた気がする。これはその環境によっていろいろだと思うけど。

色々入れた割にはLaravelがPHPのバージョンが足りないとか抜かした。PHP5でも動くんじゃないのかよw。まぁバージョンが低いと言われたなら上げるしかない。

remiでPHP7.4を入れた。
https://mebee.info/2020/03/12/post-7365/
普通に入る。

そんでLaravelも普通に動くようになった。いろいろダウンロードしてきてくれて、かなりディレクトリができる。特にエラーも出ない。特定のポートをブラウザで見るとLaravelの表示が出てくる。まずは成功と言っていいだろう。




次にDBを入れないとなと思って、会社のシステムと合わせてPostgreSQLを入れてみる。大体、OSのリポジトリは対応が遅くてバージョンが低いが、これもdnfで入れた。

普通に入ったが、RedHat系はUbuntuみたいに勝手にインストール後にデーモンを上げてくれるような親切設計にはなっていない。なってはいないが、systemctlもserviceコマンドも動かない。どうしたことだ。

調べるとそもそもWSL2がSystemdが普通では動かなくて、initで動いていると書いてある。でもAlmaLinuxではinitすら動く気配がなかった。これはそもそもCentOS8を手動で入れたので、正式サポートされているUbuntuとかとは違って、至れり尽くせりの状態ではないということらしい。

UbuntuだとSystemdを動かす方法があったりするのだけれど、Debian系ではないディストリビューションで動くかどうかもわからない。まぁ望み薄だろうな。

なもんで、ApacheもPostgreSQLのデーモンも上がらないので、基本的にPHPでシステムを組めないよね。他にWordPressもやろうと思っていたけど、同じようにMySQLが動かないのでできない。いろいろ工夫してやろうと思ったけど、ハードウェア的にもネットワーク的にもいっぱいいっぱいだ。


というか、なぜWSL2がSystemdではなく、今更initを使っているのかが意味不明。仕組み的にinitのほうが導入しやすかったんだろうけど、今のLinuxの状況を見てみろよと。というか、普通に仮想化したLinuxを使ったほうがいい気がしてきた(WSL1の時もそう思った…)。

基本的に使えるのはLinuxにつなぐssh程度なのかなと思ったり。これならDockerでコンテナを使った方がいいと思いだした。なんかやっぱMSって中途半端なんだよな。最初のアイデアだけはいいんだろうけど、その後の実現性がクソな事が多い。

VirtualBoxとかでLinux入れてSSHしたりVSCodeでつないだ方がいい気がしてきた。それかXAMPP入れるとか…。

コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0