我有一个带有Dockerfile的express应用程序。我正在尝试设置Docker Compose,但在运行dev或test的目标时遇到错误。看起来Docker Compose没有安装devDependencies,这就是为什么它找不到像jest或concurrently那样需要的包的原因。请参阅下面的错误: web | yarn run v1.22.5
web | $ jest --runInBand --detectOpenHandles --forceExit
web | /bin/sh: jest: not found
web | error Command
我试图通过在镜像上安装yarn.lock中的所有当前包来加快docker的旋转速度。我想我做的纱线安装不正确,它可以在其他地方工作?
dockerfile的相关部分:
# Create a dir
WORKDIR /(WORKDIR)
# Time to install all our dependencies
COPY package.json /(WORKDIR)/package.json
COPY yarn.lock /(WORKDIR)/yarn.lock
# Need the executables to be in the path
ENV PATH /(WORKDIR)/nod
使用Github操作发布npm包,它工作并运行jest测试用例,没有错误。因此,我决定添加yarn缓存以优化构建时间,缓存过程可以工作,但jest失败,错误如下。
$ jest --config=jest.config.js
/bin/sh: 1: jest: not found
error Command failed with exit code 127.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
##[error]Process completed with e
我正在编写一个无服务器的lambda,它需要一个自定义的docker。这是我写的dockerfile:
FROM node:14.16.1-alpine
RUN apk update && apk add git openssh-client vim python py-pip jq
RUN pip install awscli
RUN apk add automake autoconf libtool dpkg pkgconfig nasm libpng
RUN apk --purge -v del py-pip
RUN apk add --no-cache yarn
我一直在努力弄清楚为什么我的create-react-app应用程序在使用GitLab Auto DevOps并部署到GKE时不能正确显示。我认为这与我如何为create-react-app服务以及入口控制器的工作方式有关,但我不完全确定。
对于生产,create-react-app建议使用yarn build,然后打包,但我不认为serve和入口控制器一起玩得很好。这里供参考的是我的Dockerfile:
Dockerfile
FROM node:8.9.3-alpine
ARG NODE_ENV=production
ENV NODE_ENV=$NODE_ENV
# Set a wor
我在gitlab中运行一个作业,并在执行testcafe命令时得到以下错误。考试在当地确实通过了。
误差
spawn /builds/testcafe-reporter/node_modules/nightmare/node_modules/electron/dist/electron ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:268:19)
at onErrorNT (internal/child_process.js:470:16)
at processTicks
好,有一个Node.js应用程序,它是我使用类型记录+ ExpressJS构建的,现在我正在尝试安装对接器,以便同时拥有一个工作开发容器和一个生产容器。
I希望只有一个Dockerfile来使用多级构建过程。
my 项目由根文件夹组成,其中有所有这些dockerfile和复合文件,还有my package.json、src/文件夹、yarn.lock等。
现在我有这样的想法:
Dockerfile
FROM node:14.18.1-alpine3.14 as base
ENV APP=/app
WORKDIR $APP
COPY . $APP/
RUN yarn install --fro
使用此配置,每当在docker run build中添加新模块时,我都需要运行package.json。我想知道是否有办法避免这种情况?
FROM node:lts as dependencies
WORKDIR /app
COPY ./ui/package.json /app
COPY ./ui/yarn.lock /app
RUN npm install -g typescript
RUN yarn install --frozen-lockfile
FROM node:lts as runner
WORKDIR /app
COPY --from=dependencies /a
我有一个Dockerfile来构建一个React应用程序,并将构建复制到一个Nginx容器中。
FROM node:14-buster-slim AS node-base
FROM node-base as deps
WORKDIR /app
COPY ./ui/package.json ./ui/yarn.lock ./ui/.npmrc ./
RUN yarn install --frozen-lockfile
FROM node-base as build-ui
WORKDIR /app
COPY ./ui ./
COPY --from=deps /app/package.jso
这些测试正在通过,但进程退出代码1。不确定问题是什么。这是我的github操作文件和一个图像,显示了使用退出代码通过的测试。
当我尝试使用-t运行单个测试时,它们似乎通过得很好。但是所有的测试退出代码都是1。
on:
push:
branches:
- main
- staging
- dev
pull_request:
branches:
- main
- staging
- dev
jobs:
tests:
name: Tests
runs-on: ubuntu-late
我有一个Dockerfile,当我在本地运行它时,一切都很好,但是我通过GitHub操作构建的程序似乎失败了,我得到的错误是:
一个意外的错误发生了:"ENOENT:没有这样的文件或目录,stat '/home/runner/work/akira/akira/README.md'“。
我试图删除yarn.lock,但没有成功,可以找到完整的生成日志,,我的Dockerfile如下所示:
文档:
FROM node:14.0.0 AS base
WORKDIR /usr/src/app
FROM base as builder
COPY ./lerna.json