강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của n00nietzsche
n00nietzsche

câu hỏi đã được viết

Docker dễ dàng dành cho nhà phát triển

Định cấu hình quy trình tự động hóa xây dựng hình ảnh bằng GitHub Actions

github actions 의 steps 중 platforms 제거

Đã giải quyết

Viết

·

567

1

안녕하세요. GitHub Actions 관련 실습 중이었는데, 아래와 같은 에러가 발생했습니다.

 

ERROR: failed to solve: node:14: no match for platform in manifest: not found

154Error: buildx failed with: ERROR: failed to solve: node:14: no match for platform in manifest: not found

 

일단은 platforms 를 제거해서 해결했는데요.

platforms 관련하여 검색해 알아보니 특정 OS 에 최적화하는 옵셔널한 값으로 넣으면 좋고 안넣어도 괜찮은 그냥 그런 것으로 소개되고 있더라고요

 

제 질문은 아래와 같은데요.

 

  1. platforms 를 지워서 GitHub Actions 가 성공했는데, 이렇게 실습해도 되나요?

  2. 실무에서는 보통 platforms 를 작성하는게 관행인가요?

 

 

docker가상화ci/cddocker-composegithub-actionsdocker-volumecontainer

Câu trả lời 2

0

daintree님의 프로필 이미지
daintree
Người chia sẻ kiến thức

서진규님 안녕하세요. 데브위키입니다.

네 말씀해주신 대로 platforms에 내용을 기재해 주셔야 합니다..!

platforms: 필드를 기재하시는 이유는, 환경이 두 개가 존재하기 때문입니다.

환경 1: 파이프라인이 실제로 실행되어 이미지를 빌드하는 깃허브 소유의 OS환경

환경 2: 이미지를 다운받아 실행하는 실습PC 환경



환경 1과 환경2의 OS환경(정확히는 커널)이 다를 경우 빌드한 이미지가 제대로 실행되지 않습니다.

그래서 platforms를 기재해서 이미지가 정상적으로 실행될 수 있도록 기재해 주시는 것입니다 😀

 

정리하자면 linux/arm64/v8 가 서진규님의 OS 커널 환경인 것이고, 깃허브의 환경에서 빌드할 때 잘 실행될 수 있도록 플랫폼을 기재해 주시는 것입니다.

 

강의 들으시면서 더 궁금하신 부분이 있으시면 편하게 질문해주세요!

 

0

n00nietzsche님의 프로필 이미지
n00nietzsche
Người đặt câu hỏi

결국 platforms 가 없으니 manifest 에서 해당하는 플랫폼인 linux/arm64/v8 를 못찾았다고 뭐라해서 platforms: linux/arm64/v8 를 추가해서 해결했습니다..!

 

특정 OS 환경에서 컨테이너 실행하려면 platforms 를 잘 지정해두어야 하는거군요..!

Hình ảnh hồ sơ của n00nietzsche
n00nietzsche

câu hỏi đã được viết

Đặt câu hỏi