5

Tôi đã tạo hình ảnh docker với các gói bắt buộc. Tôi đã chạy hình ảnh Docker xác định cổng máy chủ và khách cùng với khối lượng cần thiết gắn Ví dụ:Vấn đề về Docker-Compose với tên vùng chứa


sudo docker run -it --name CONTAINERNAME -v /host:/guest -p 
hostportno:guestportno 

đựng của tôi là lên và chạy tốt.
Tôi đang cố gắng di chuyển vùng chứa của mình sang hình ảnh trình docker mới bằng cách sử dụng docker-compose.
Tôi đã tạo ra docker-compose.yml tập tin và xác định các thông số cần thiết như hình dưới đây:

image: test1 
ports 
    - "1234:123" 
    - "2000:223" 
volumes: 
    - /home:/test 
    -container_name: dockercomposetest 
working_dir: /test 
command: /bin/bash 

tôi không thể di chuyển nó bằng cách sử Docker-soạn.
Tôi nhận được vấn đề như đã nêu dưới đây:

Conflict. The name "test" is already in use by container eeedac72bb25. 
You have to delete (or rename) that container to be able to reuse that 
name. 

làm việc xung quanh hiện là tôi phải dừng lại và loại bỏ các thùng chứa và thực hiện docker-compose up.
Tôi không thể khởi động lại/di chuyển vùng chứa bằng cách sử dụng docker-compose có cùng tên như tôi đã bắt đầu trong quy trình bình thường docker run hay không.

Trả lời

1

Không, bạn không thể có hai container có cùng tên. Bạn sẽ phải chọn một tên khác cho trường container_name. Vùng chứa trước cần được xóa trước khi bạn có thể sử dụng lại tên.

Nếu bạn muốn Soạn thư để xử lý vùng chứa như thể nó đã tạo, bạn phải đặt nhãn vùng chứa là Soạn thư. Cách dễ nhất để tìm những thứ này là tạo soạn thảo vùng chứa (có thể bằng cách xóa trường container_name), sau đó sử dụng docker inspect để xem nhãn.

0

Bạn có thể kiểm tra xem --force-recreate sẽ giúp:

docker-compose up --force-recreate 

Từ docker-compose up man page:

Nếu bạn muốn để buộc Soạn thư để dừng lại và tái tạo tất cả các container, sử dụng --force-recreate cờ.

--force-recreate 

tái container ngay cả khi cấu hình và hình ảnh của họ đã không thay đổi

+1

Vẫn tồn tại vấn đề tương tự. –

Các vấn đề liên quan