Python 앱용 AWS 공식 AMI/컨테이너 이미지를 사용하여 GitHub 자체 호스팅 러너를 구축할 때 주의 사항

다음은 AWS 공식 AMI 및 컨테이너 이미지를 기반으로 하는 GitHub 자체 호스팅 러너에서 특정 Python 버전을 설정할 때 발생하는 몇 가지 문제입니다.

  • 공식 Amazon Linux 2 AMI 및 공식 Amazon Linux 2 컨테이너 이미지에는 동일한 Python 런타임 설정이 없습니다.
  • Amazon Linux 2 AMI( ECS-optimized AMI /aws/service/ecs/optimized-ami/amazon-linux-2/recommended )에는 기본적으로 python2.7python3.7가 있습니다.
  • Amazon Linux 2 컨테이너 이미지amazonlinux/amazonlinux ( public.ecr.aws/amazonlinux/amazonlinux )에는 python2.7만 있습니다. 기본적으로 python3/pip가 설치되어 있지 않습니다.

  • Amazon Linux 2 AMI는 기본적으로 python3python3.7를 가리킵니다. 다른 Python3 버전을 가리키도록 변경python3할 때(예: 설정update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1), 중단될 수 있으므로cfn-signal EC2 시작 시 신호가 ASG로 전송되지 않습니다(즉, 건강한 인스턴스가 등록되지 않음).
    러너에 대해 ASG를 사용하는 경우(ECS Fargate가 아님) 이는 문제가 됩니다.
  • python는 Python3을 지원하지 않으므로 python2.7yum를 가리키도록 유지합니다. Python3을 가리키도록 python를 설정하면 이 오류가 표시됩니다.

    > yum
    File "/usr/bin/yum", line 30
    except KeyboardInterrupt, e:
                           ^
    SyntaxError: invalid syntax
    

    https://stackoverflow.com/questions/11213520/yum-crashed-with-keyboard-interrupt-error도 참조하십시오.
  • actions/setup-python@v4arm64 ( https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json )를 지원하지 않습니다.
    관련 공개 문제https://github.com/actions/setup-python/issues/108를 참조하십시오.

  • 참고: (3)과 (4)는 Amazon Linux에 한정되지 않습니다. Amazon 공식 이미지 기반 자체 호스팅 러너를 구축할 때 발생한 문제입니다.

    좋은 웹페이지 즐겨찾기