You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bitbucket Pipelines如何仅部署dist目录内的文件到生产服务器

Bitbucket Pipelines仅部署dist目录内部文件的配置方案

方案1:新增LOCAL_PATH参数(推荐,适配绝大多数官方FTP部署pipe)

绝大多数Bitbucket官方提供的FTP/CPanel部署pipe都支持LOCAL_PATH变量,指定该参数为dist/后,pipe会直接读取dist目录下的所有内容上传到远程目标路径,不会携带dist文件夹本身。
修改后的部署step配置如下:

- step:
    name: Deploy to CPANEL
    deployment: production
    script:
      - pipe: (....你的原部署pipe标识)
        variables:
          USER: $ftp_user
          PASSWORD: $ftp_password
          SERVER: $ftp_host
          REMOTE_PATH: $ftp_remote_path
          LOCAL_PATH: 'dist/' # 新增该行即可

方案2:提前移动文件(适配无LOCAL_PATH参数的部署pipe)

如果你使用的部署pipe不支持自定义本地路径,可以在执行部署操作前,将dist目录内的所有文件移动到流水线工作目录根路径,再执行部署:

- step:
    name: Deploy to CPANEL
    deployment: production
    script:
      # 移动dist下所有文件到工作目录,包含隐藏文件,同时删除空dist目录
      - shopt -s dotglob nullglob && mv dist/* . && rm -rf dist
      - pipe: (....你的原部署pipe标识)
        variables:
          USER: $ftp_user
          PASSWORD: $ftp_password
          SERVER: $ftp_host
          REMOTE_PATH: $ftp_remote_path

注意:如果不需要同步dist下的隐藏文件(如.htaccess、.npmrc等),可以去掉shopt -s dotglob nullglob部分,直接写mv dist/* . && rm -rf dist即可。

方案3:自定义部署脚本调整

如果你没有使用官方pipe,而是自己写的部署命令,直接指定部署路径到dist目录内部即可,比如用scp命令的话写法为:
scp -r dist/* $ftp_user@$ftp_host:$ftp_remote_path

内容的提问来源于stack exchange,提问作者Alberto Torrisi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 23:45:03