Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

342
Vistas
La imagen de Docker no se puede compilar en AWS EC2 Linux pero funciona cuando se compila en Windows y Mac

Cuando ejecuto docker-compose build minexample con los siguientes 3 archivos en Mac o Windows, la imagen se crea correctamente. Pero cuando trato de hacer lo mismo en una instancia EC2 de AWS Linux 2, falla al ejecutar el script de instalación node-sass (consulte a continuación).

Después de muchas pruebas y errores durante 2 días, me di cuenta de que el problema desaparece si bajo la versión de react-scripts a "3.0.0". Eso también significaría que necesito reducir eslint en mi dependencia de desarrollo (que no incluyo en el ejemplo mínimo) de 7.12.0 a 5.16.0.

Tengo algunas preguntas:

  1. ¿Cómo puede la compilación docker tener éxito en Mac/Windows y fallar en Linux? Pensé que se suponía que los contenedores eran un entorno aislado, pero de alguna manera el sistema operativo host afectó el resultado aquí.
  2. ¿Cómo averiguo qué versiones de paquetes de nodos están en conflicto? Tomó mucho tiempo a través de prueba y error darse cuenta de que bajar la versión react-script arregló (u ocultó) el problema.

paquete.json

 { "name": "minexample", "version": "1.0.0", "dependencies": { "node-sass": "4.12.0", "react": "16.14.0", "react-dom": "16.14.0", "react-router": "5.0.0", "react-router-dom": "5.0.0", "react-scripts": "4.0.2" }, "devDependencies": { }, "scripts": { "start": "react-scripts start" } }

Dockerfile

 FROM node:10.16.0-alpine AS build RUN mkdir -p /usr/src/app WORKDIR /usr/src/app ENV PATH /usr/src/app/node_modules/.bin:$PATH # cache dependencies COPY ./package.json /usr/src/app/package.json RUN npm install

docker-compose.yml

 version: '3.7' services: minexample: build: context: ./ dockerfile: Dockerfile container_name: minexample

Error

 > node-sass@4.12.0 install /usr/src/app/node_modules/node-sass > node scripts/install.js The command '/bin/sh -c npm install' returned a non-zero code: 1 ERROR: Service 'minexample' failed to build
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Basado en los comentarios.

Traté de replicar el problema, pero en mis pruebas, la imagen de la ventana acoplable se creó correctamente .

Instancia utilizada, t2.small (no se ha probado con t2.micro ).

AmazonLinux 2:

 NAME="Amazon Linux" VERSION="2" ID="amzn" ID_LIKE="centos rhel fedora" VERSION_ID="2" PRETTY_NAME="Amazon Linux 2" ANSI_COLOR="0;33" CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2" HOME_URL="https://amazonlinux.com/"

Estibador

 docker --version Docker version 19.03.13-ce, build 4484c46

docker-compose

 docker-compose --version docker-compose version 1.28.4, build cabd5cfb

construir imagen

 docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE a_minexample latest 82968af21096 24 minutes ago 426MB node 10.16.0-alpine 9dfa73010b19 20 months ago 75.3MB
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda