Skaffold测试运行环境及容器化测试配置问题咨询
Skaffold测试运行环境相关问题
测试验证过程
- 首先查看本地Node.js版本:
node --version v18.12.1
- 随后在
skaffold.yaml中配置自定义测试,执行相同的版本查询命令:
apiVersion: skaffold/v4beta2 kind: Config metadata: name: microservices-quiz-app build: artifacts: - image: auth-img context: auth docker: dockerfile: Dockerfile sync: manual: - src: src/**/*.js dest: . test: - image: auth-img context: auth custom: - command: node --version manifests: rawYaml: - auth/k8s/*.yml - ingress-srv.yml
- 执行
skaffold dev后,测试输出的Node版本与本地完全一致;但直接连接由auth-img构建的容器时,看到的Node版本和本地存在差异。 - 查阅Skaffold官方文档可知,这种自定义测试默认会在本地机器运行。
问题咨询
- 是否有办法在包含jest、supertest等必要测试依赖的容器中运行测试?
- 为何Skaffold不使用被测镜像运行测试?是否我们不应在镜像中包含开发依赖?
当前使用的Dockerfile内容
FROM node:18-alpine # ENV NODE_ENV=production WORKDIR /app COPY ["package.json", "package-lock.json*", "./"] # RUN npm install --production RUN npm install COPY . . # CMD ["npm", "start"] CMD [ "npm", "run", "dev" ]
内容的提问来源于stack exchange,提问作者BPDev
相关产品推荐
相关产品推荐

