在使用 CI / CD gitlab 部署 vuejs 项目时,我需要帮助。
在这种情况下,我有3个文件环境:
我在这里使用其他 baseHref / publicPath :
在此阶段,我将按照教程Here.
但我仍然对如何使用其他环境进行部署感到困惑。
通常我使用以下命令:
npm run build---mode阶段
npm run build---mode production
这是我制作的 en 的示例:
# Environment Local
NODE_ENV=development
BASE_URL = /development/
VUE_APP_TITLE=Website (development)
VUE_APP_END_POINT='http://localhost:8000/api/v1/'
VUE_APP_CLIENT_ID = 12341
VUE_APP_CLIENT_SECRET = 'asdASD1123s'
VUE_APP_SCOPE = '*'
VUE_APP_BASE_URL_LINK = 'http://localhost:8080'
VUE_APP_VERSION =
这是我拥有的 vue.config.js 文件:
process.env.VUE_APP_VERSION = require('./package.json').version
module.exports = {
publicPath: process.env.BASE_URL,
"transpileDependencies": [
"vuetify"
]
}
我做的分支
在gitlab-ci.yml中:
build site:
image: node:6
stage: build
script:
- npm install --progress=false
- npm run build
artifacts:
expire_in: 1 week
paths:
- dist
unit test:
image: node:6
stage: test
script:
- npm install --progress=false
- npm run unit
deploy:
image: alpine
stage: deploy
script:
- apk add --no-cache rsync openssh
- mkdir -p ~/.ssh
- echo "$SSH_PRIVATE_KEY" >> ~/.ssh/id_dsa
- chmod 600 ~/.ssh/id_dsa
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- rsync -rav --delete dist/ user@server.com:/var/www/website/
使用上述gitlab-ci.yml的配置,我只能部署本地环境。
我希望有人希望分享他们关于 CI / CD 部署 vuejs 的知识和经验。或提供一些 CI / CD vuejs 教程参考多个环境。
非常感谢您。
答案 0 :(得分:0)
您尝试拥有多少工作?如果您完成3个工作,并且发送了参数,则可以。
您有印刷品或工作实例吗?
答案 1 :(得分:0)
我在我的项目中找到了一个dockerfile,如果它可以帮助您:
FROM node:12.16.1 AS builder
RUN mkdir /app
COPY *.json /app/
COPY src /app/src
WORKDIR /app
RUN npm install
RUN npm run build
FROM nginx:1.15.8
COPY --from=builder /app/dist/ /usr/share/nginx/html
EXPOSE 80:80
ENTRYPOINT ["nginx", "-g", "daemon off;"]
别忘了使用多阶段docker;)