Verdaccio でプライベート npm リポジトリをサクッと立てる

Verdaccio という npm パッケージを使うと、プライベート npm リポジトリがサクッと立てられるので紹介。

プライベート npm リポジトリがどういう時に欲しいのかというと、個人ではあまり必要に迫られることはないと思う。社内のネットワーク上の問題とかで、npm -g config set registry とかしないといけない時に使うことになるかと。

Verdaccio 自体は Sinopia という npm パッケージの Fork らしく、スコープパッケージを上手く解釈できないという Sinopia の不具合を解消している。

Verdaccio のインストール

Verdaccio 自体も npm パッケージなので、まずはグローバルインストールする。

$ npm install -g verdaccio

Verdaccio の起動

グローバルインストールした Verdaccio を叩くと、http://localhost:4873/ に npm リポジトリサーバが起動する。

$ verdaccio

コレだけ。最強に簡単!

Verdaccio に npm パッケージを公開する

次に公開したい npm パッケージがあるディレクトリで、以下のようにして Verdaccio リポジトリにログインする。ユーザ名やパスワードは何でもログインできる。適当に login とでもしておけば良い。.npmrc にログインした記録となるトークンが追記される。

$ npm adduser --registry http://localhost:4873

そして npm publish する際に --registry オプションを指定することで、Verdaccio リポジトリに npm パッケージを公開できる。

$ npm publish --registry http://localhost:4873

http://localhost:4873/ を見てみると、即座に npm パッケージが確認できるだろう。

Verdaccio に公開した npm パッケージをインストールする

今度は Verdaccio に公開した npm パッケージを使う側の話。

使用する側のプロジェクトで以下のように npm コマンドの接続先リポジトリを変更する。

$ npm config set registry http://localhost:4873

この内容は .npmrc に記述される。

この状態で、Verdaccio にアップした npm パッケージ名を入れて npm install してやれば良い。


Verdaccio とっても簡単。