はじめに
Media of Langueを開発する過程でJUMAN++をDocker内で動かしたくなったのでメモ。
ちなみにJUMAN++はバージョン2系列の方が早いのでこちらを使っていきます。
Dockerfile
今回使ったDockerfileをもとにしているので適時変更してください。
(srcディレクトリがないとエラーが出ます)
FROM nvidia/cuda:11.6.2-base-ubuntu20.04
ARG SRCDIR=/src
RUN export LC_ALL=C.UTF-8
RUN export LANG=C.UTF-8
RUN apt-get update -y && \
apt-get upgrade -y && \
apt-get install -y \
locales \
locales-all \
g++ \
wget \
clang \
cmake \
xz-utils && \
locale-gen ja_JP.UTF-8 && \
echo "export LANG=ja_JP.UTF-8" >> ~/.bashrc
RUN apt-get install -y python3 python3-pip
RUN pip3 install --upgrade pip
RUN pip3 install pyknp
RUN wget https://github.com/ku-nlp/jumanpp/releases/download/v2.0.0-rc3/jumanpp-2.0.0-rc3.tar.xz
RUN tar xvf jumanpp-2.0.0-rc3.tar.xz
WORKDIR jumanpp-2.0.0-rc3
RUN mkdir bld
WORKDIR bld
RUN cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
RUN make install -j 4
WORKDIR ${SRCDIR}
COPY .${SRCDIR} /root/src/
CMD [ "/bin/bash" ]
docker-compose.yml
docker-compose.yml
version: '3'
services:
jumanpp:
image: jumanpp
container_name: jumanpp
command:
- /bin/bash
build:
context: .
dockerfile: ./Dockerfile
working_dir: /root/
tty: true
restart: always
env_file:
- ./.env
environment:
- LANG=${LANG}
- LANGUAGE=${LANGUAGE}
- LC_ALL=${LC_ALL}
- TZ=${TZ}
- TERM=${TERM}
最後に
誰かが詰まった時の助けになれば幸いです。
Media of Langueプロジェクトでも私が代表をしているEngineeでもエンジニアを探しています。