跳到主要内容
版本号:Next

亚马逊网络服务

这篇文章介绍了如何通过简单的几步在 Amazon Web Services 平台使用 EC2 服务安装 Verdaccio 假设你已经创建了一个 EC2 的 Amazon Linux 服务器实例;如果没有请查看 AWS EC2 安装教程

安装 & 配置

第一步: 打开 SSH & 使用您的 EC2 秘钥登录.

第二步:请先安装 Node 版本管理工具(nvm),安装完成后关闭并使用你的 EC2 密钥重新连接 SSH

sudo apt update

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

exit

第三步:使用 nvm 安装 Node

nvm install node

第四步:安装 Verdaccio & pm2,我们需要通过 pm2 在后台运行 Verdaccio 服务

npm i -g verdaccio pm2

第五步:将 Verdaccio registry 设置为 npm 源 默认情况下使用的是 NPM registry

npm set registry http://localhost:4873

npm set ca null

第六步:运行 Verdaccio 然后停止它(ctrl+c) 这会创建一个我们需要使用的配置文件。

verdaccio

第七步:现在执行以下配置来监听该服务器/EC2 实例上的所有地址。 (查看更多)

打开并且编辑 config.yaml 文件:

nano .config/verdaccio/config.yamlnano ~/verdaccio/config.yaml

在最后添加以下几行。 (查看更多)

listen:
- 0.0.0.0:4873

更改以下行,以便只有经过身份验证的人才能访问我们的 registry

将 "access: $all" 替换为 "access: $authenticated"

(可选)根据您希望授予范围注册表访问权限的用户数量更改以下行

将 "#max_users: 1000" 替换为 "max_users: 1"

还有一些参数可用于配置它。 像修改存储方式,代理,默认端口。 (查看更多)

第八步:使用 pm2 在后台运行 Verdaccio:

pm2 start verdaccio

第九步:现在,你可以访问你的 Verdaccio 网页界面了。

URL 看起来像是这样的:

http://ec2-..compute.amazonaws.com:4873

{or}

http://your-ec2-public-ip-address:4873 (你可以在你的 AWS 控制台查看你的 EC2 实例开放的 ip)

为了确认 Verdaccio 的运行状态,请运行以下命令:

pm2 list

为了在开机时运行 Verdaccio,请执行以下命令:

pm2 stop verdaccio

pm2 delete verdaccio

pm2 startup 这将在您的终端中显示一个命令。 复制/粘贴并执行它,让 pm2 为您创建启动服务。

which verdaccio 复制此命令显示的路径。

pm2 start /home/ubuntu/.nvm/versions/node/v17.1.0/bin/verdaccio (输入您从上面的命令复制的路径)。

pm2 status 这应该会显示 Verdaccio 服务的状态为“在线”。

pm2 save 现在,当您重新启动 EC2 实例时,它会直接启动 verdaccio。

第十步: 在 Verdaccio registry 中注册用户

npm adduser

请输入用户名、密码和有效的电子邮件 ID。 记下这些详细信息,稍后将用于登录 Verdaccio registry 来发布我们的库。

第十一步: 现在我们准备将我们的 AWS 服务器实例用作私有 registry。

登录 Verdaccio registry。 输入上面步骤中设置的相同用户名、密码和电子邮件 ID。

npm set registry http://your-ec2-public-ip-address:4873

npm login

第十二步:前往您的自定义库包路径。 在我的例子中,这是我的 Angular 7 包路径 -> /libraries/dist/your-library-name/your-library-name-0.0.1.tgz

如果您想了解如何创建 angular 7 库/包,请(点击此处)

cd [custom library package path]

第十三步: 最后在 Verdaccio registry 上发布我们的库 your-library-name-0.0.1.tgz

[custom library package path] >> npm publish your-library-name-0.0.1.tgz

{or}

[custom library package path] >> npm publish

{or}

[custom library package path] >> npm publish --registry http://your-ec2-public-ip-address:4873

现在,访问 http://your-ec2-public-ip-address:4873 你将会在这里看到新的库