Tôi đã vật lộn hơn một tuần để chạy bộ chứa Windows với Dịch vụ ứng dụng Azure. Sở thích ban đầu của tôi là chỉ sử dụng một phiên bản bộ chứa tiêu chuẩn, nhưng có vẻ như bạn chỉ có tùy chọn kết nối mạng công cộng hoặc riêng tư, thay vì tùy chỉnh (không giống như các bộ chứa Linux). Có vẻ như nếu bạn chạy bộ chứa Windows của mình trong một dịch vụ ứng dụng, thì bạn sẽ nhận được các tùy chọn kết nối mạng giống như bạn có với các trang web khác. Hỗ trợ Azure cho bộ chứa Windows trong Dịch vụ ứng dụng là gần một tuổi, nhưng tương đối ít tài nguyên giải quyết vấn đề này, ngoài các tình huống rất cơ bản.
Mục đích của tôi khi sử dụng vùng chứa là chạy dịch vụ Windows nền của bên thứ ba theo yêu cầu mà không cần máy ảo. Vì nó đang sử dụng một dịch vụ ứng dụng nên tôi đã quyết định thêm một điểm cuối còn lại lõi asp.net cho một số thông tin trạng thái. Vùng chứa của tôi dựa trên mcr.microsoft.com/windows/servercore:ltsc2019
. Tôi tải xuống và cài đặt lõi .net và asp.net (hình ảnh cơ sở chỉ có khung .net), cài đặt các dịch vụ của tôi, xây dựng và chạy trang web, sau đó điểm vào của tôi là tập lệnh Powershell cập nhật một số giá trị cấu hình và chạy asp. net điểm cuối lõi quản lý các dịch vụ.
Nếu tôi sử dụng cổng thông tin, tôi có thể chọn các tùy chọn cho vùng chứa so với mã, Windows so với Linux và bắt đầu mọi thứ với hình ảnh bắt đầu nhanh cơ bản, nhưng hình ảnh của riêng tôi trong Azure Container Registry không khởi động đúng cách. Tôi đang sử dụng một trong những hình ảnh cơ sở được hỗ trợvà nó chạy tốt trên máy cục bộ của tôi. Trên Azure, nó tạo ra mọi thứ, nhưng nó không bao giờ khởi động. Số lượng nhật ký nhỏ chỉ ra rằng nó khởi động nó, gắn kết khối lượng chia sẻ tệp, sau đó về cơ bản chỉ chết:
- Tạo vùng chứa cho hình ảnh
- Đang cố khởi động vùng chứa
- Khởi động vùng chứa thành công
- Vùng chứa đã bắt đầu
- Gọi cấu hình tiện ích vùng chứa
- Cấu hình tiện ích container đã hoàn thành
- Vùng chứa đã bắt đầu
- Đang cố gắng dừng container
- Đang cố gắng chấm dứt vùng chứa
- Đang cố xóa vùng chứa
- Đã xóa vùng chứa thành công
Cũng kỳ lạ, ngay cả với hình ảnh khởi động nhanh, tôi không thấy Phiên bản vùng chứa thực tế. Có lẽ điều này là do nó đang chạy trực tiếp trong Gói dịch vụ ứng dụng, mặc dù không có điều nào trong số đó rõ ràng. Từ ứng dụng web, tôi có thể chuyển đến Gói dịch vụ ứng dụng (gói Bộ chứa Windows), trong đó, bên dưới Ứng dụng, nó hiển thị một ứng dụng duy nhất có loại "ứng dụng, bộ chứa, cửa sổ", nhưng tôi không thể tìm thấy quyền truy cập để xem nhật ký bảng điều khiển hoặc chạy trình bao như tôi có thể với các tài nguyên thuộc loại Hình ảnh vùng chứa. Trong một số ảnh chụp màn hình tôi đã xem, tôi có thể thấy liên kết "Cài đặt vùng chứa" trong "Cài đặt" mà tôi không có, nhưng có lẽ vì một số lý do, điều đó chỉ dành cho vùng chứa Linux.
Vì vậy, tôi nên khắc phục sự cố bộ chứa như thế nào khi chạy trong một dịch vụ ứng dụng? Tôi có thiếu một cái gì đó ở đâu đó?