No.498
【Docker】Docker内にDockerをインストールする【Ubuntsu】
インストールと問題解決方法をメモ
基本的にdocker公式ページのUbuntu向けのページに従えばよい。
Docker Engine インストール(Ubuntu 向け)
インストールは便利スクリプトを使うのが楽でいい。GPGキーのインストールなども行う必要が無い。
問題: ulimit: error setting limit
docker実行時に下記のエラーが出力されるケースがある。というかされる。
ulimit: error setting limit (Operation not permitted)
docker起動設定ファイル中の ulimit
オプションが干渉して悪さしている。
参考 /etc/init.d/docker: 62: ulimit: error setting limit (Invalid argument) Problem
docker実行前に設定ファイルをコメントアウトしてしまえばOK。
sed -i 's/ulimit -Hn/# ulimit -Hn/g' /etc/init.d/docker
参考: Docker入りDockerコンテナ用Dockerfile
というわけでコピペ用にDockerfileをメモ。
権限問題解決のために実行ユーザーをsudoできるようにしているので、不要なら最終行を削除すること。
RUN apt-get update -y \
&& apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release \
&& rm -rf /var/lib/apt/lists/*
RUN curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh && sed -i 's/ulimit -Hn/# ulimit -Hn/g' /etc/init.d/docker && service docker start
RUN useradd -m -s /bin/bash -u ユーザーID アカウント名 && usermod -aG docker アカウント名 && echo "アカウント名 ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers