본문 바로가기

OpenSource/Docker

(3)
[Docker] Apple M1, M2 CPU 도커 빌드 에러 해결 애플이 Intel CPU에서 자체 개발한 m1, m2 CPU를 탑재하게 되면서 발생하는 도커 문제 해결법에 대해 정리해보고자 한다. 문제1: /bin/sh: exec format error 에러 발생시 애플 m1 CPU에서 이미지 빌드후 Intel CPU가 장착된 장비에서 도커를 수행할 때 발생되는 문제이다. docker inspect {도커 이미지} | grep Architecture 검색된 결과를 보면 arm64 로 빌드되어있는것을 확인할 수 있는데, intel CPU에서 동작시키려먼 아키텍쳐가 amd64 이어야 한다. 해결방법: 도커 빌드시 platform을 지정하여 빌드한다. docker build --platform linux/amd64 -t {빌드 태그} . 문제2: ERROR [interna..
[Docker] 이미지 다운로드를 위한 Proxy 설정 $ sudo mkdir -p /etc/systemd/system/docker.service.d $ sudo vi /etc/systemd/system/docker.service.d/http-proxy.conf ## PROXY 정보 추가 [Service] Environment="HTTP_PROXY=http://proxy.example.com:80" Environment="HTTPS_PROXY=https://proxy.example.com:443" Environment="NO_PROXY=localhost,127.0.0.1,docker-registry.example.com,.corp" $sudo systemctl daemon-reload $sudo systemctl restart docker
[Docker] Dockerfile을 이용한 도커 이미지 선언하기 도커 이미지를 여러번 만들어 사용해보았지만, 기존에 만들어진, 혹은 github에 공유된 Dockerfile을 기준으로 복사하고 짜집기 하여 사용해왔었다. 오늘은 Dockerfile Format에 대해 정리해보려고 한다. 1. 주석 도커파일 내 주석은 아래와 같이 표현한다. # Comment 2. FROM 새로 생성하고자 하는 이미지의 베이스 이미지를 선언한다 FROM 이미지명 # 태그를 선언하지 않을 경우 latest 태그가 적용된다. FROM 이미지명:태그명 # 예시: FROM ubuntu:21.04 3. RUN 베이스 이미지에 명령을 실행하여 어플리케이션을 추가로 설치한다거나 할 때 사용한다. RUN 명령어 # 예시 ## shell 형식으로 실행 RUN apt-get install -y htop #..