
나는 다음과 같은 docker-compose를 가지고 있습니다 ...
version: "3.8"
services:
proxy:
container_name: proxy
extra_hosts:
- "host.docker.internal:host-gateway"
build:
context: proxy
dockerfile: Dockerfile
volumes:
- ./proxy/certificate:/usr/cert
ports:
- "443:443"
ui:
container_name: ui
restart: always
build:
context: frontend
ports:
- "80:80"
backend:
container_name: backend
restart: always
build:
context: backend
ports:
- "8000:8000"
environment:
- API_KEY
- GOLD_TOKEN
그런 다음 다음 쉘 스크립트를 사용하여 빌드합니다.
#! /bin/bash
docker-compose build
docker-compose up -d
하지만 쉘 스크립트를 실행하면 moby/buildkit:buildx-stable-1
컨테이너 생성을 시도합니다. 이 컨테이너가 실패하고 빌드 시 다음 오류가 발생합니다.
=> ERROR [internal] booting buildkit 0.9s
=> => pulling image moby/buildkit:buildx-stable-1 0.8s
=> => creating container buildx_buildkit_gallant_newton0 0.1s
[+] Building 0.9s (1/1) FINISHED
=> CANCELED [internal] booting buildkit 0.9s
=> => pulling image moby/buildkit:buildx-stable-1 0.8s
=> => creating container buildx_buildkit_gallant_newton0
Error response from daemon: Conflict. The container name "/buildx_buildkit_gallant_newton0" is already in use by container "8b56bc95c1e26b736d0f297236adce9766f1363b1f94b35fcbc29ac96b4b61d3". You have to remove (or rename) that container to be able to reuse that name.
왜 이런 일이 발생하며 이러한 충돌을 방지하려면 어떻게 해야 합니까?
답변1
이 컨테이너는 다음 이미지를 사용하여 Docker BuildKit(새 docker build
대체품)에 의해 생성된 것으로 보입니다.
https://hub.docker.com/r/moby/buildkit
이 컨테이너를 비활성화하려면 다음을 사용하여 빌더 인스턴스를 기본값으로 설정할 수 있습니다.
docker buildx use default