Khi bạn tạo một dự án trong Visual Studio 2017 với sự hỗ trợ Docker, các Dockerfile có dòng sau:Dockerfile COPY {nguồn -...}
COPY ${source:-obj/Docker/publish} .
có nghĩa là gì? Macro nguồn trỏ tới đâu? Ý nghĩa của dấu gạch ngang là gì?
Khi bạn tạo một dự án trong Visual Studio 2017 với sự hỗ trợ Docker, các Dockerfile có dòng sau:Dockerfile COPY {nguồn -...}
COPY ${source:-obj/Docker/publish} .
có nghĩa là gì? Macro nguồn trỏ tới đâu? Ý nghĩa của dấu gạch ngang là gì?
Điều đó được gọi là thay thế biến.
Trong tiếng Anh, nó dịch thế này:
"Hey Docker, khi bạn xây dựng này, COPY
đường dẫn mà bạn tìm thấy trong $source
biến trong vào thư mục hiện trong hình ảnh (.
) Nếu $source
rỗng hoặc. vắng mặt, chỉ cần sử dụng đường dẫn mặc định obj/Docker/publish
"
$source
là biến môi trường được xác định trước khi thực hiện docker build
.
Một số tài liệu tham khảo:
Khi tôi cố gắng xây dựng từ dòng lệnh tôi chạy vào vấn đề này: 'lstat obj/Docker/xuất bản: không có tệp hoặc thư mục đó'. Tôi đã sao chép lệnh từ cửa sổ xây dựng VS để lệnh chính nó phải chính xác. – Deqing
Nó không hoạt động từ dòng lệnh vì biến 'source' được truyền bởi Visual Studio tại thời gian xây dựng. – Hasan