👌

Esxi + photonOS + Docker + Exment

2023/10/31に公開

背景

なんだかExcel管理につかれてきたけどKintoneお金かかるしなぁ、なんか枯れたのないのかなーと思ったらすぐ引っかかったので検証してみました。zennには関連記事なさそうなのでまぁ自分がはまったところのメモだけ。

環境

esxi(7)上の
photonOS上の
docker:24.0.5
docker-conpose:v2.23.0

photonOSのIPは固定してあります。

レッツトライ

ひとまず公式を引っ張ってきて動かそうとしてみました。

https://github.com/exment-git/docker-exment.gitを持ってきて
docker-composeを実施。(buildの下にそれぞれのバージョンペアごとにymlが置いてありました。)

80系は途中でこけるので、一旦

php8.1系はちゃんとコンテナ上がりました。が、
あくせすしたところ、500 Errorにてダメでした。

フォーク元の方のymlを実行

https://github.com/yamada28go/docker-exment/blob/master/docker-compose.yml
こっちの方がシンプルでわかりやすかったのでこっちでリトライ
実行コマンドは普通に

docker-compose up -d

1回目

libzip-devが無いと怒られたので追加。

2回目

実行OK~composerが古いのエラー。ひとまず
Dockerfileを修正して、php:8.0-fpmが入るように。

3回目

oniguruma という物騒な名前のモジュールが無いと怒られ調べたところ、
libonig-devが必要とのことなので追加

4回目

http://[IP]:8080/にてLaravelの画面が返ったので、

http://[IP]:8080/admin/installへアクセス。うまくいきました。

都合こんな感じで書き換えました。

php/Dockerfile

FROM php:8.0-fpm

# install php-ext
RUN apt-get update && apt-get install -y \
  git vim libonig-dev libzip-dev unzip libxml2-dev libpng-dev default-mysql-client \
  && docker-php-ext-install mbstring mysqli dom gd zip pdo_mysql \
  && apt-get clean
~~~

細かいところは
exment qiitaとかで検索したら大体出てくると思います。

あとphp.iniはこのヘンいれとけばいいかと。
https://exment.net/docs/#/ja/additional_php_ini?id=ファイルアップロード上限サイズ変更

Discussion