搭建公司自己的组件平台

组件平台分享

一.组件上传平台sinopia

sinopia不需要些代码只需要你把该配置的东西配置好就行

1.服务器安装node

2.配置软链

ln  -s /../node-v6.10.3-linux-x64/bin/node      /usr/local/bin/node  建立软连接用绝对路劲
ln -s /../node-v6.10.3-linux-x64/bin/npm      /usr/local/bin/npm

3.npm安装sinopia

/root/.config/sinopia/config.yaml 配置文件
storage: /home/{user}/.local/share/sinopia/storage # 库存路径,需要考虑磁盘空间

web: # 自定义web项,即浏览器访问页面


auth:
  htpasswd:
    file: ./htpasswd # 添加用户(npm adduser)后自动创建,保存用户信息,可以初始化用户
    # Maximum amount of users allowed to register, defaults to "+inf".
    # You can set this to -1 to disable registration.
    #max_users: 1000 # 设置为-1不能npm adduser


uplinks: # 可以配置多个上游地址,后面packages中的proxy指定用哪个
  npmjs:
    url: https://registry.npm.taobao.org/ # 更改此上游地址
    # amount of time to wait for repository to respond
    # before giving up and use the local cached copy
    #timeout: 30s # 请求上游地址超时时间

    # maximum time in which data is considered up to date
    #
    # default is 2 minutes, so server won't request the same data from
    # uplink if a similar request was made less than 2 minutes ago
    #maxage: 2m # 包过期时间

    # if two subsequent requests fail, no further requests will be sent to
    # this uplink for five minutes
    #max_fails: 2 # 容许依赖请求最大失败数
    #fail_timeout: 5m # 依赖请求超时时间

packages: # 包的权限管理,$all为所有人,$authenticated为通过验证人
                  # 分布和安装两种权限,值可以特指某几人
  '@*/*': # 跟package.json中的name属性进行匹配
    # scoped packages
    access: $all
    publish: $authenticated

  '*':
    # allow all users (including non-authenticated users) to read and
    # publish all packages
    #
    # you can specify usernames/groupnames (depending on your auth plugin)
    # and three keywords: "$all", "$anonymous", "$authenticated"
    access: $all

    # allow all known users to publish packages
    # (anyone can register by default, remember?)
    publish: $authenticated

    # if package is not available locally, proxy requests to 'npmjs' registry
    proxy: npmjs

# log settings
logs:
  - {type: stdout, format: pretty, level: http}
  #- {type: file, path: sinopia.log, level: info}

listen: 0.0.0.0:4873 # 设置监听地址,0.0.0.0匹配本机地址

/root/.config/sinopia/htpasswd 用户

storage:/usr/local/sinopia/storage 服务器包的存放地址

4.npm安装pm2 pm2托管sinopia进程,保持进程长期开启

5.本地nrm管理npm源

6.开发组件

1.创建目录(统一命名sf<name>)
2.npm init 初始化package.json (版本号是你上传组件的版本号)
3.组件正常开发
类比/Users/zhaozhanhai/Desktop/test/component/sfloadmore
4.登录npm用户
npm login  
Username: sffe  
Password: sffe    
Email: zhanhaizhao@sf-express.com


5.npm publish 发布
 
6.删除发布包
npm unpublish <package> --force
 
7.更新版本
修改package.json version
npm publish

二.组件预览平台
1.使用vuepress


├─ docs
│    |   .vuepress
│        ├─ README.md 入口文件结构
│        └─ .vuepress
│        └─ config.js 配置文件(导航栏,侧边栏)
│        └─ enhanceApp.js Vue 插件,注册全局组件,或者添加额外的路由钩子
│        └─override.styl 主题颜色配置
│        └─components  组件模块
│        └─public 公用模块
│   |    baseComponents
│   	  ├─ base
│               ├─ test1.md 三级侧边栏入口文件
│        ├─ README.md 二级顶部菜单首页
└─ package.json
使用
组件使用的时候 从components下边开始  以-分割
支持vue md双语法

三.niginx部署页面

1安装homebrew
sudo ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装nginx
安装:brew install nginx

安装目录
/usr/local/webserver/nginx/sbin    查看nginx版本 sudo ./nginx
启动:sudo nginx
停止:sudo nginx -s quit
配置软连接 ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/nginx 
配置nginx:
配置nginx 目录 /usr/local/nginx/conf/nginx.conf
错误日志目录 /usr/local/nginx/logs/error.log
配置文件目录 /usr/local/nginx/conf/nginx.conf

自定义配置文件

user  root; //403的解决方案
worker_processes  8;
server {
        listen       80;
        server_name  localhost;
        root /home/sftcwl/www;
        charset  utf-8;

        #access_log  logs/host.access.log  main;

        location / {
            root /home/sftcwl/www/dataCom;
 	    index index.html;
        }
        location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt|svg){
              root /home/sftcwl/www;
          }
        location ~* /dataCom/ {
                root /home/sftcwl/www/;
            }

坑:
1.mac 1024以下的端口需要用 sudo nginx给到root权限
2.nginx: [error] open() "/usr/local/var/run/nginx.pid" failed (2: No such file or directory)  每次关闭nginx会删除nginx.pid 执行nginx -c /usr/local/etc/nginx/nginx.conf 回复
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值