Docker Desktop 유료화로 인한 대체로 Colima Docker를 사용하고 있었다. 그런데 터미널에서 docker login을 하거나 이미지를 pull할 때 다음과 같은 에러가 발생하기 시작했다. Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp: lookup registry-1.docker.io on 192.168.107.1:53: read udp 192.168.5.15:52605->192.168.107.1:53: i/o timeout 에러 내용으로 보면 registry-1.docker.io 도메인에 대한 dns lookup이 안되서 timeout이 발생했다는 것 같다. 구글링해보니 비슷한 증상을 겪는 사람..
도커 이미지를 만들기 위해 Dockerfile을 작성하게 되는데, 컨테이너 생성 시 실행할 명령어를 지정하기 위해 Dockerfile 내에 CMD, ENTRYPOINT 명령어를 사용하게 된다. 컨테이너가 생성되며 웹 서버, DB 서버 등 어플리케이션을 구동시킬 때 많이 사용하게 되는데 이럴 경우 리눅스 환경 변수 로딩은 되지 않는 경우가 발생할 수 있다. 구동시킨 어플리케이션에서 이런 환경 변수가 필요하지 않다면 문제될 것이 없지만 필요하다면 정상적으로 동작하지 않을 수 있기 때문에 이 부분에 관해서 알아두고 정상적으로 로딩되게할 필요가 있다. 작성자 같은 경우에는 Apache Airflow를 ENTRYPOINT 명령어를 통해 구동시키게 Dockerfile을 작성하고 컨테이너 구동 후에 Airflow D..
1. 컨테이너 실행하여 쉘 사용하기 docker run -it \ -v {로컬 경로}:{docker 컨테이너에서 사용할 경로} --rm {docker 이미지} {명령어} # example docker run -it \ -v /Users/user/dev:/Users/user/dev \ --rm registry.domain.com/some_image:1.0.0 /bin/bash Usage docker run [OPTIONS] IMAGE [COMMAND] [ARG...] OPTIONS -v, --volume list : Bind mount a volume -t, --tty : Allocate a pseudo-TTY -i, --interactive : Keep STDIN open even if not attac..