一棵里、私有庫(kù)搭建
本文私有庫(kù)在linux中使用docker搭建
- 拉最新鏡像
docker pull verdaccio/verdaccio:latest
- 查看鏡像
docker image ls | grep verdaccio
- 運(yùn)行容器(普通)
docker run -it -d --name verdaccio -p 4873:4873 verdaccio/verdaccio
- 查看運(yùn)行狀態(tài)
docker ps -a | grep verdaccio
- 可以對(duì)docker中的目錄進(jìn)行映射
創(chuàng)建并進(jìn)入文件夾目錄
mkdir /home/verdaccio && cd $_
創(chuàng)建3個(gè)文件夾
storage断傲、conf 、plugins
分別修改權(quán)限
chown -R 10001:65533 /home/verdaccio/storage
chown -R 10001:65533 /home/verdaccio/conf
chown -R 10001:65533 /home/verdaccio/plugins
- 映射文件夾運(yùn)行命令:
docker run -it -d --name verdaccio -p 4873:4873 -v /home/verdaccio/storage:/verdaccio/storage -v /home/verdaccio/conf:/verdaccio/conf -v /home/verdaccio/plugins:/verdaccio/plugins verdaccio/verdaccio
同樣使用 docker ps -a | grep verdaccio
查看運(yùn)行狀態(tài)
成功后在本機(jī)ip:4873可看到私有庫(kù)頁(yè)面
二腊脱、vue發(fā)布npm庫(kù)
創(chuàng)建工程
vue create example
- 在
src
中創(chuàng)建package
文件夾 -
package
中新建index.js
和example
文件夾 - 在
example
文件夾中寫好你的組件
在本地調(diào)試組件庫(kù)
- 在組件庫(kù)的
package.json
中修改build
命令
"build": "vue-cli-service build --target lib ./src/package/index.js --name dist --dest dist"
利用了vue-cli的構(gòu)建方法,構(gòu)建單獨(dú)的入口
-- target lib 關(guān)鍵字 指定打包的目錄 后面可以接上entry打包入口
-- name 打包后的文件名字
-- dest 打包后的文件夾的名稱
- 打包
npm build 后會(huì)產(chǎn)生一個(gè)dist文件夾
cd dist
npm init -y 創(chuàng)建package.json
- 在其他項(xiàng)目中引入
npm install <剛剛生成的dist庫(kù)路徑>
配置入口
- 在
index.js
中引入組件
import xxxView from "@/package/example/xxx.vue"
import yyyView from "@/package/example/yyy.vue"
const coms = [xxxView,yyyView]
const install = function (Vue) {
coms.forEach(com => {
Vue.component(com.name, com)
})
}
if (typeof window != "undefined" && window.Vue) {
window.Vue.use(comment)
}
export default install
發(fā)布
npm set registry ip:4873/
npm adduser --registry ip:4873/
npm notice Log in on ip:4873/
Username: 輸入用戶名
Password: 輸入密碼
Email: (this IS public): 輸入郵箱
設(shè)置完成后:Logged in as 你的用戶名 on ip:4873/.
- 查看當(dāng)前用戶
npm whoami
或npm whoam
- 發(fā)布庫(kù)
npm publish --registry ip:4873/
使用你的私有庫(kù)
- 在根目錄創(chuàng)建
.npmrc
文件
寫入規(guī)則:
@xxx:registry=ip:4873
xxx開頭的庫(kù)從 ip:4873 中加載
- 項(xiàng)目中直接使用
npm install xxx