amazonlinuxでmecabを導入

mecabを導入

Posted by めろん on 2025/08/19 18:22

【PR】本記事はアフィリエイト広告を利用しています。

amazonlinuxでmecabを導入するDockerファイル(一部)

FROM public.ecr.aws/amazonlinux/amazonlinux:latest

RUN yum update
RUN yum -y upgrade
RUN rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
RUN yum makecache
RUN yum install -y git
RUN yum groupinstall -y "Development Tools"
RUN yum install -y
    gcc
    openssl-devel
    bzip2-devel
    libffi-devel
    zlib-devel
    readline-devel
    sqlite-devel
    ncurses-devel
    gdbm-devel
    tk-devel
    uuid-devel
    xz-devel

RUN mkdir mecab
COPY archive /mecab
RUN ls /mecab -ltr
WORKDIR mecab
RUN realpath mecab-0.996.tar.gz
RUN ls mecab-0.996.tar.gz -ltr
RUN tar xvzf mecab-0.996.tar.gz
WORKDIR /mecab/mecab-0.996
RUN ls -ltr
RUN ./configure --enable-utf8-only --with-charset=utf8
RUN make
RUN make install
RUN ldconfig

WORKDIR /mecab
RUN ls -ltr
RUN realpath mecab-ipadic-2.7.0.tar.gz
RUN tar xvzf mecab-ipadic-2.7.0.tar.gz
RUN ls -ltr
WORKDIR /mecab/mecab-ipadic-2.7.0-20070610
RUN ls -ltr
RUN ./configure --with-mecab-config=/usr/local/bin/mecab-config --prefix=/usr/local
RUN make
RUN make install
WORKDIR /

解決方法の説明

Redhat系のディストリビューションを採用しているamazonlinuxで

一番困ったのはmecabが素直に入らないこと。

ソースコードからビルドするように説明しているブログが多いけれど、
実際はリンク切れでリンクが有効ではないこと。

どうにかできないかと公式のサイトみてても時間がかかるだけだったので
解決方法をDockerファイルがあるパスの下に「archive」というディレクトリ
を作成して、そこに手動でダウンロードしてきたソースコードを入れて
コンテナにコピーし、ビルドするという方法を取りました。

なので

[Dockerファイル保存ディレクトリ]
      +[archive]
           +mecab-0.996.tar.gz
           +mecab-ipadic-2.7.0.tar.gz


こんな構成で構築してあげて、コンテナを作成するようにしたら解決。
疲れました。

UbuntuやDebian系だとここまで苦労することはないです。
RedHat系(CentOSやamazonlinuxなど)をベースに採用しているものは
苦労することでしょう。

怠かった。