Tôi đã cố gắng thiết lập vùng chứa nginx-proxy để truy cập các vùng chứa khác của mình qua các tên miền phụ trên cổng 80 thay vì các cổng đặc biệt. Như bạn có thể đoán, tôi không thể làm cho nó hoạt động.Làm cách nào để tham gia mạng cầu nối mặc định bằng docker-compose v2?
Tôi là người mới đến docker chính nó và thấy rằng nó thoải mái hơn cho tôi để viết docker-compose.yml
tập tin vì vậy tôi không phải liên tục viết dài docker run ...
lệnh. Tôi nghĩ rằng không có sự khác biệt trong cách bạn bắt đầu các thùng chứa, hoặc với docker
hoặc docker-compose
. Tuy nhiên, một sự khác biệt mà tôi nhận thấy là bắt đầu vùng chứa với docker
không tạo bất kỳ mạng mới nào, nhưng với docker-compose
, sau đó sẽ có mạng xxx_default
.
Tôi đọc rằng các vùng chứa trên các mạng khác nhau không thể truy cập lẫn nhau và có thể đó là lý do tại sao proxy nginx không chuyển tiếp yêu cầu tới các vùng chứa khác. Tuy nhiên, tôi không thể tìm cách cấu hình tệp docker-compose.yml
của mình để không tạo bất kỳ mạng mới nào, nhưng thay vào đó hãy tham gia mạng cầu nối mặc định như docker run
.
tôi đã cố gắng điều sau đây, nhưng nó dẫn đến một lỗi nói rằng tôi không thể tham gia mạng lưới hệ thống như thế này:
networks:
default:
external:
name: bridge
Tôi cũng đã cố gắng network_mode: bridge
, nhưng điều đó dường như không thực hiện bất kỳ sự khác biệt.
Làm cách nào để ghi tệp docker-compose.yml
để không tạo mạng mới hoặc hoàn toàn không thể?
Câu hỏi thưởng: Có bất kỳ khác biệt nào khác giữa docker
và docker-compose
mà tôi nên biết không?
[định dạng v1] (https://docs.docker.com/compose/compose-file/compose-file-v1/) soạn file này sẽ không tạo ra một mạng mới, nhưng yêu cầu 'liên kết' được thiết lập để nói chuyện với các vùng chứa khác trên cầu mặc định. – Matt
v1 sẽ không được dùng nữa, nên tránh sử dụng nó. – Rawkode
Có, tôi đang sử dụng định dạng phiên bản 2. Cảm ơn gợi ý. – noone