# Docker部署Verdaccio的安装文档

## 前提条件

确保已安装以下软件：

1. Docker：请访问[官方Docker安装页面](https://docs.docker.com/get-docker/)并按照相应的指南为您的操作系统安装Docker。



## 部署Verdaccio

1. **拉取Verdaccio Docker镜像：** 在终端或命令提示符中运行以下命令，以从Docker Hub拉取最新的Verdaccio镜像：

   ```bash
   docker pull verdaccio/verdaccio
   ```

2. **创建配置文件：** 从[Verdaccio GitHub仓库](https://github.com/verdaccio/verdaccio/blob/master/conf/full.yaml)下载一个示例配置文件`config.yaml`。您可以根据需要修改此文件以满足您的需求。确保将配置文件保存在您可以轻松访问的位置，比如`/path/to/your/config/`。

3. **创建一个持久化存储卷：** 为了确保您的Verdaccio数据在容器重新启动时保持不变，创建一个Docker卷以持久化存储数据。运行以下命令：

   ```bash
   docker volume create --name verdaccio-storage
   ```

4. **运行Verdaccio容器：** 使用以下命令运行一个新的Verdaccio容器。请确保将`/path/to/your/config/config.yaml`替换为实际配置文件的路径。

   ```bash
   docker run -it --rm --name verdaccio -p 4873:4873 -v /path/to/your/config/config.yaml:/verdaccio/conf/config.yaml -v verdaccio-storage:/verdaccio/storage verdaccio/verdaccio
   ```

   这将启动一个名为“verdaccio”的容器，并将宿主机器的端口`4873`映射到容器的端口`4873`。同时，它将配置文件和存储卷挂载到容器中的相应位置。

5. **访问Verdaccio界面：** 打开浏览器，访问`http://localhost:4873`，您应该可以看到Verdaccio的Web界面。



## 配置npm客户端

1. **设置npm注册表：** 在终端或命令提示符中运行以下命令，将npm注册表设置为您的Verdaccio实例：

   ```bash
   npm set registry http://localhost:4873
   ```

2. **登录：** 如果您在Verdaccio的配置文件中设置了身份验证，可以使用以下命令登录：

   ```bash
   npm login
   ```

   按照提示输入用户名、密码和电子邮件地址。

现在，您已成功部署了Verdaccio，并可以使用它来发布和安装私有npm包。如果您需要对Verdaccio进行进一步配置或管理，请查阅[官方文档](https://verdaccio.org/docs/en/configuration)。



## 更多操作

1. **在后台运行Verdaccio容器：** 如果您希望在后台运行Verdaccio容器，可以使用`-d`（或`--detach`）标志。将上面的`docker run`命令更改为：

   ```
   arduinoCopy code
   docker run -d --name verdaccio -p 4873:4873 -v /path/to/your/config/config.yaml:/verdaccio/conf/config.yaml -v verdaccio-storage:/verdaccio/storage verdaccio/verdaccio
   ```

2. **查看容器日志：** 要查看Verdaccio容器的日志，请运行以下命令：

   ```
   Copy code
   docker logs verdaccio
   ```

3. **停止和删除容器：** 若要停止Verdaccio容器，请运行：

   ```
   arduinoCopy code
   docker stop verdaccio
   ```

   若要删除Verdaccio容器，请运行：

   ```
   bashCopy code
   docker rm verdaccio
   ```

   请注意，由于我们使用了持久化存储卷，即使容器被删除，Verdaccio的数据仍然会保留。

4. **升级Verdaccio：** 若要升级Verdaccio，请先停止并删除当前容器，然后再次运行步骤1中的`docker pull`命令以获取最新的镜像。最后，使用步骤4中的`docker run`命令重新创建容器。



通过以上步骤，您已经学会了如何使用Docker部署Verdaccio、配置npm客户端以及进行一些基本操作。

如有需要，请查阅官方文档以获取更多关于Verdaccio的信息和配置选项。