M1 Mac Docker内でTa-Libをインストールする

M1 Mac Docker内でTa-Libをインストールする
目次

M1 Macを利用してTa-libのインストールに失敗したがビルド方法を見つけたので記事化

Dockerfile

FROM python:3.9.0
USER root

RUN apt-get update
RUN apt-get -y install locales && \
    localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:ja
ENV LC_ALL ja_JP.UTF-8

RUN apt-get install -y vim less
RUN pip install --upgrade pip
RUN pip install --upgrade setuptools

RUN wget --quiet http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz -O ta-lib-0.4.0-src.tar.gz && \
    tar xvf ta-lib-0.4.0-src.tar.gz && \
    cd ta-lib/ && \
    ./configure --prefix=/usr --build=arm && \
    make && \
    make install && \
    cd .. && \
    pip install TA-Lib && \
    rm -R ta-lib ta-lib-0.4.0-src.tar.gz

docker-compose.yml

version: '3'
services:
  python3:
    restart: always
    build:
      context: ./docker
    container_name: 'python3'
    working_dir: '/root/'
    tty: true

ある程度抜粋していますが、一番重要な部分は--build=armになります 自分の環境だと上記のファイルで成功できました。