karoid/konlpy

By karoid

Updated over 1 year ago

konlpy linux environment for windows, linux, mac OS | cuda support image available

Image
Machine Learning & AI
0

784

m1이 처음 나오고 나서 쓸 수 있는 이미지가 없어서 만든 이미지.

Version Specification

  • 3.8-bullseye, 3.8-buster: debian으로 빌드된 파이썬 3.8 cpu 기반 konlpy
  • 그 외는 CUDA가 설치되어 있음. {PYTHON_VERSION}_{CUDA_VERSION}의 형태로 태그가 작성되어 있음.

How to Build

버전을 다르게 쓰고 싶으면 다음 도커파일로 직접 빌드해서 쓰자.

Dockerfile without cuda

# uploaded to karoid/konlpy:3.8.12-buster
# uploaded to karoid/konlpy:3.8.12-buster
ARG PYTHON_VER="3.8"
ARG VARIANT="${PYTHON_VER}-bullseye"
FROM python:${VARIANT} as base
ARG PYTHON_VER="3.8"

# https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh 과정을 ARM64도 가능하게 변형

# 파일 옮기기
COPY tmp /tmp

# Mecab Ko 설치
RUN cd /tmp/mecab-ko \
  && wget 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD' -O config.guess \
  && wget 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD' -O config.sub \
  && ./configure \
  && make all \
  && make install
# Mecab Ko Dict 설치
RUN cd /tmp/mecab-ko-dic-2.1.1-20180720 \
  && ldconfig \
  && ldconfig -p | grep /usr/local/lib \
  && autoreconf \
  && ./configure \
  && make all \
  && make install
# Mecab-Python 설치
RUN sed -i '/	version = cmd1("mecab-config --version"),/c\	version = cmd1("mecab-config --version").replace("/ko",".").replace("-",""),' /tmp/mecab-python-0.996/setup.py \
  && python -m pip install /tmp/mecab-python-0.996

# Cleaning
RUN rm -rf /tmp/mecab-* && rm -rf /tmp/tmp

Dockerfile with Cuda

ARG VARIANT="11.1.1-base-ubuntu18.04"
FROM nvidia/cuda:${VARIANT}
ARG PYTHON_VER="3.8"

# 파일 옮기기
COPY tmp /tmp

# 파이썬 설치
RUN chmod +x /tmp/change-ubuntu-mirror.sh \
  && /tmp/change-ubuntu-mirror.sh -k \
  && apt install -y python${PYTHON_VER} python${PYTHON_VER}-distutils python${PYTHON_VER}-dev wget make autoconf build-essential git \
  && update-alternatives --install /usr/bin/python python /usr/bin/python${PYTHON_VER} 1 \
  && wget https://bootstrap.pypa.io/get-pip.py -O get-pip.py \
  && python get-pip.py \
  && rm get-pip.py

# https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh 과정을 ARM64도 가능하게 변형

# Mecab Ko 설치
RUN cd /tmp/mecab-ko \
  && wget 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD' -O config.guess \
  && wget 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD' -O config.sub \
  && ./configure \
  && make all \
  && make install
# Mecab Ko Dict 설치
RUN cd /tmp/mecab-ko-dic-2.1.1-20180720 \
  && ldconfig \
  && ldconfig -p | grep /usr/local/lib \
  && autoreconf \
  && ./configure \
  && make all \
  && make install
# Mecab-Python 설치
RUN sed -i '/	version = cmd1("mecab-config --version"),/c\	version = cmd1("mecab-config --version").replace("/ko",".").replace("-",""),' /tmp/mecab-python-0.996/setup.py \
  && python -m pip install /tmp/mecab-python-0.996

# Cleaning
RUN rm -rf /tmp/mecab-* && rm -rf /tmp/tmp

Docker Pull Command

docker pull karoid/konlpy