Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

132
Views
standard_init_linux.go:211: el proceso de usuario exec provocó un "error de formato exec"

Estoy creando el Dockerfile para el script python que se ejecutará en el sistema minikube windows 10 a continuación es mi Dockerfile

Construyendo la ventana acoplable usando el siguiente comando docker build -t python-helloworld .

y cargando eso en minikube docker demon docker save python-helloworld | (eval $(minikube docker-env) && docker load)

Archivo acoplable

 FROM python:3.7-alpine #add user group and ass user to that group RUN addgroup -S appgroup && adduser -S appuser -G appgroup #creates work dir WORKDIR /app #copy python script to the container folder app COPY helloworld.py /app/helloworld.py #user is appuser USER appuser ENTRYPOINT ["python", "/app/helloworld.py"]

archivo pythoncronjob.yml (archivo de trabajo cron)

 apiVersion: batch/v1beta1 kind: CronJob metadata: name: python-helloworld spec: schedule: "*/1 * * * *" jobTemplate: spec: backoffLimit: 5 template: spec: containers: - name: python-helloworld image: python-helloworld imagePullPolicy: IfNotPresent command: [/app/helloworld.py] restartPolicy: OnFailure

A continuación se muestra el comando para ejecutar este trabajo kubectl create -f pythoncronjob.yml

Pero obtener el trabajo de error a continuación no se ejecuta correctamente, pero cuando ejecutó Dockerfile solo, funciona bien

standard_init_linux.go:211: el proceso de usuario exec provocó un "error de formato exec"

over 4 years ago · Santiago Trujillo
8 answers
Answer question

0

Para aquellos en arm64 (¿Apple M1?) Que quieren compilar para un uso de producción, logré hacerlo funcionar con la opción --platform de docker build.

 docker build --platform linux/amd64 -t registry.gitlab.com/group/project:1.0-amd64 ./

puede, por otro lado, elegir linux/arm64 .

over 4 years ago · Santiago Trujillo Report

0

Rufus tiene razón, me encontré con este problema al intentar crear una imagen de servidor x86 en mi MacBook M1, que es arm64.

Pude crear la arquitectura de destino correcta al agregar el atributo "plataforma" a mi docker-compose.yml.

 services: web: image: myimage/web:latest platform: linux/x86_64 build: context: ./myfolder dockerfile: Dockerfile.prod
over 4 years ago · Santiago Trujillo Report

0

Me encontré exactamente con el mismo mensaje de error. Se solucionó instalando qemu en la máquina host. Ni idea del motivo.

over 4 years ago · Santiago Trujillo Report

0

Tuve este problema recientemente. Compartiendo mi experiencia aquí. Básicamente, estaba tratando de ejecutar una imagen acoplable ARM en la arquitectura X86_64 .

Aquí están los pasos que he seguido.

  1. Comprobar la arquitectura del host

     uname -m # Display the host architecture #x86_64 docker pull arm32v7/ubuntu # Get ARM docker image docker run --rm -t arm32v7/ubuntu uname -m standard_init_linux.go:211: exec user process caused "exec format error"
  2. Configuración de la emulación ARM en x86

El uso de QEMU nos permite crear binarios ARM en una máquina x86 sin necesidad de un compilador cruzado.

 sudo apt-get install qemu binfmt-support qemu-user-static # Install the qemu packages docker run --rm --privileged multiarch/qemu-user-static --reset -p yes # This step will execute the registering scripts
  1. Ejecute la imagen de la ventana acoplable

     $ docker run --rm -t arm32v7/ubuntu uname -m armv7l

Referencia: Construyendo un contenedor ARM en x86

over 4 years ago · Santiago Trujillo Report

0

Esto también puede suceder cuando su máquina host tiene una arquitectura diferente de la imagen de su contenedor invitado.

Por ejemplo, ejecutar un contenedor de brazo en un host con arquitectura x86-64

over 4 years ago · Santiago Trujillo Report

0

Puedo ver que agrega el comando command: [/app/helloworld.py] al archivo yaml.

por lo que necesita (en Dockerfile):

 RUN chmod +x /app/helloworld.py

establece shebang en tu archivo py :

 #!/usr/bin/env python # whatever your defualt python to run the script

o configure el comando de la misma manera que lo hizo en Dockerfile

over 4 years ago · Santiago Trujillo Report

0

Recientemente me encontré con el problema al ejecutar un contenedor logstash

standard_init_linux.go:211: el proceso de usuario exec provocó un "error de formato exec"

Notó que la línea shebang (#!/bin/sh) en entrypoint.sh se escribió en la segunda línea en lugar de en la primera línea del archivo entrypoint.sh.

Cuando la línea shebang se hace como la primera línea en el script, el error desapareció y "docker run -it logstashimage:latest sh" funcionó perfectamente.

over 4 years ago · Santiago Trujillo Report

0

Otras dos razones podrían plantear este problema si ejecuta Docker en Windows :

  • los finales de línea de scripts no son LF (linux)
  • la codificación de scripts debe ser utf-8 + BOM
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!