3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Dockerだけでnpm initやnpm installをする方法

Posted at

npmをローカルにインストールせずに、Dockerだけでnpm initnpm installをする方法を解説します。

npm init

まずは、ディレクトリを作成して中に移動します。

mkdir app && cd app

次に、dockerを使ってnpm initします。以下のコマンドを実行してください。実行するとpackage.jsonが生成されます。

docker run --rm -w "/usr/app" -v "${PWD}:/usr/app" node:15.3-alpine npm init -y

コマンドの解説をします。

docker run <IMAGE>は、イメージをコンテナ化するコマンドです。今回はnode:15.3-alpineを指定しています。これは、公式のイメージで、ローカルになければコマンドを実行したときにインストールされます。

--rmオプションは、コンテナの終了時に自動的にそのコンテナを削除します。詳しくはこちらに書いてあります。

-wオプションでワーキングディレクトリを指定しています。システムの邪魔にならなければどこでもいいですが、今回は/usr/appとしました。

-vオプションは、マウントをします。今回は、${PWD}:/usr/appとしているので、現在のディレクトリを/usr/appにマウントすることになります。こうすることで、npm init -yを実行して、/usr/app内に生成されるpackage.jsonを現在のディレクトリに反映させることができます。

最後の引数は、実行したいコマンドです。

npm install

上記と同じように以下のコマンドを実行します。例としてexpressをインストールしてみました。実行するとpackage-lock.jsonnode_modulesが生成されます。

docker run --rm -w "/usr/app" -v "${PWD}:/usr/app" node:15.3-alpine npm install express

Dockerを使うことで、npmをインストールせずに使うことができました。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?