tsrkzy blog

JavaScriptしか書けない人の備忘録

python3 + ffmpeg用の使い捨てdockerコンテナを作る

ffmpegを動かしたかったが、ffmpegpythonを利用しているせいか、
OSXに直接インストールするとOSXpythonの生態系が破綻する。(経験済み)

うまく入れてやれば棲み分けできるのかもしれないけど、
めんどいので表題の通り、使い捨てのpython3+ffmpegのコンテナを作る。

参考

dockerで簡易にpython3の環境を作ってみる - Qiita

偉大な先人に感謝。これにffmpeg入れるだけの記事です。

構成

# コンテナの/root/opt/にopt/を割り当て
./
 - Dockerfile
 - docker-compose.yaml
 - opt/  # => /root/opt

Dockerfile

FROM python:3
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
ENV TZ JST-9
ENV TERM xterm

# -- 追加 -- #
RUN apt update
RUN apt -y upgrade
RUN apt install ffmpeg
# -- ---- -- #

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

docker-compose.yaml

version: '3'
services:
  python3:
    restart: always
    build: .
    container_name: 'python3'
    working_dir: '/root/'
    tty: true
    volumes:
      - ./opt:/root/opt

チートシート

# コンテナ再作成して起動
docker-compose up -d --build

# コンテナのbashを実行
docker-compose exec python3 bash

# コンテナ削除
docker-compose down