es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El Runner de GitLab parece no cargar la imagen de Docker.

Para un antiguo código base, estamos tratando de pasar de simplemente subir cambios a través de FTP a utilizar Gitlab CI/CD. Sin embargo, ninguno de nosotros tiene experiencia extensa en Gitlab, y he estado tratando de configurar la implementación siguiendo esta guía:

https://savjee.be/2019/04/gitlab-ci-deploy-to-ftp-with-lftp/

Actualmente estoy ejecutando un gitlab-runner en mi propia Mac, sin embargo, parece que la imagen de docker en mi archivo yml no se carga correctamente. Cuando utilizo el yml del artículo:

image: ubuntu:18.04

before_script:
  - apt-get update -qy
  - apt-get install -y lftp

build:
  script:
    # Sincronizar con FTP
    - lftp -e "open ftp.mywebhost.com; user $FTP<em>USERNAME $FTP</em>PASSWORD; mirror -X .* -X .*/ --reverse --verbose --delete local-folder/ destination-folder/; bye"

Me muestra el mensaje apt-get: comando no encontrado. También he intentado con apk-get, pero no hay diferencias. He intentado encontrar una imagen de docker diferente que tenga lftp instalado de antemano, pero entonces solo obtengo un lftp: comando no encontrado:

image: minidocks/lftp:4

before_script:
  # - apt-get update -qy
  #- apt-get install -y lftp

build:
  script:
    - lftp -e "open ftp.mywebhost.com; user $FTP<em>USERNAME $FTP</em>PASSWORD; mirror -X .* -X .*/ --reverse --verbose --delete local-folder/ destination-folder/; bye"
    - echo 'probar esto'

Si comento las partes de lftp/apt-get, sí puedo llegar al comando echo y funciona.

No puedo encontrar ninguna razón para esto al buscar en línea. Disculpa si esta es una pregunta duplicada o si simplemente he estado buscando en los lugares equivocados.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema que estás enfrentando está relacionado con la falta de gestores de paquetes como apt-get y apk-get en las imágenes de Docker que estás utilizando. Una solución podría ser usar una imagen de Docker diferente que ya tenga lftp instalado. Podrías buscar una imagen así en DockerHub y usarla en tu archivo yml. Alternativamente, podrías intentar instalar los paquetes requeridos utilizando un enfoque diferente, como curl o wget. Otra opción podría ser usar un método de implementación diferente por completo, como SSH o SCP, que no requieran lftp. Finalmente, podrías intentar contactar al autor de la guía que estás siguiendo o a la comunidad de GitLab para obtener ayuda adicional con tu problema.

Comments are closed.