Docker for WindowsでAlpine Linuxにnvmをインストールしたイメージを作成します。
作業環境と作成するDockerイメージの内容は以下になります。
作業環境
- Windows10 pro
- Docker for Windows
作成するDockerイメージの内容
- Alpine Linux
- nvm : v0.33.11
また、今回作成したDockerfileはこちらで公開しています。
https://github.com/iida-teco/alpine-nvm
NVMのインストール
まずは、nvmをインストールする手順を確認していきます。
Alpine Linuxの最新版をベースイメージに使うので以下のコマンドで起動します。
PS C:\> docker run --rm -it alpine:latest
/ #
これで、Alpine Linuxのコンソールになったと思います。
次に、NVMのインストールですが公式ドキュメントの手順通りに入れます。
まずは、ビルドに必要なパッケージをインストールしていきます。
/ # apk update
/ # apk add --no-cache curl bash ca-certificates openssl ncurses coreutils python2 make gcc g++ libgcc linux-headers grep util-linux binutils findutils
また、インストールスクリプトの最後でnvmの環境変数を.bashrc
に追記してくれるのですが、パッケージをインストールしただけでは.bashrc
が作成されないので、あらかじめ作成しておいてから、インストールスクリプトを実行します。
/ # touch ~/.bashrc
/ # curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
これでnvmがインストールされたのでバージョンを確認します。
/ # bash
bash-4.4# nvm --version
0.33.11
ちゃんと入っていますね!
Dockerfileの作成
では、上記の手順をもとにDockerfileを記述していきましょう。
FROM alpine:latest
RUN \
apk update && \
apk add --no-cache curl bash ca-certificates openssl ncurses coreutils python2 make gcc g++ libgcc linux-headers grep util-linux binutils findutils && \
touch ~/.bashrc && \
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
DockerfileをおいているディレクトリまでPowershellもしくはコマンドプロンプトで移動して以下のコマンドを実行します。
PS C:\> cd C:\works\docker\alpine-nvm
PS C:\works\docker\alpine-nvm> docker build -t alpine-nvm .
これでDockerイメージが登録されていると思います。
PS C:\works\docker\alpine-nvm> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
alpine-nvm latest b7c4edde3e8c About an hour ago 208MB
以上で、Alpine Linuxにnvmをインストールしたイメージが出来上がりました!
今回作成したDockerfileはこちらになります。
https://github.com/iida-teco/alpine-nvm
また、Docker Hubでも公開しています。
https://hub.docker.com/r/iidateco/alpine-nvm/