Điểm:0

Chạy certbot trên phiên bản ECS

lá cờ gh

Tôi đang cố chạy certbot trên phiên bản ECS đang chạy hình ảnh docker (docker.io/existdb/teipublisher). Hình ảnh chạy tốt và tôi đã liên kết nó với một tên miền phụ tùy chỉnh teipub.dh-dev.com sử dụng một IP đàn hồi.

Việc cố gắng cài đặt và chạy certbot để tôi có thể có kết nối Https đã được chứng minh là khó khăn một cách đáng ngạc nhiên.

chạy bằng root, tôi cài đặt nginx với:

sudo amazon-linux-danh sách bổ sung | grep nginx
sudo amazon-linux-extras kích hoạt nginx1
Sudo yum siêu dữ liệu sạch
Sudo yum -y cài đặt nginx

sau đó, theo cái này từ nginx tôi sáng tạo /etc/nginx/conf.d/teipub.dh-dev.com.conf với nội dung:

người phục vụ {
    nghe 80 default_server;
    lắng nghe [::]:80 default_server;
    gốc/var/www/html;
    server_name teipub.dh-dev.com;
}

nhưng bây giờ khi chạy sudo nginx -c /etc/nginx/nginx.conf để tải lại cấu hình mới tôi nhận được nhập mô tả hình ảnh ở đây

Điều này hợp lý với tôi bởi vì khi tôi xây dựng định nghĩa tác vụ để chạy hình ảnh của mình trên cụm ECS, tôi đã sử dụng portMapping giữa hostPorts 80 và 443 và các containerPorts tương ứng, có nghĩa là đã có thứ gì đó đang lắng nghe trên cổng 80 (cũng như 443) .

đang chạy trạng thái sudo systemctl nginx, trạng thái sudo systemctl httpd hoặc trạng thái sudo systemctl apache2 trên phiên bản ECS EC2 sạch đang chạy hình ảnh docker không thể tìm thấy các dịch vụ đó. Vì vậy, nginx chưa được cài đặt chứ đừng nói đến việc chạy trước khi tôi thử chạy nó.

Vì vậy, câu hỏi của tôi là: đã có máy chủ web trên phiên bản ECS chưa? Nó là gì và tôi có thể cài đặt certbot trên đó không? Hoặc nếu không, những gì đang nghe trên cổng 80?

Ngoài ra - có cách nào khác để sử dụng certbot trên phiên bản ECS không?

Nhân tiện, và tôi không nghĩ điều này có liên quan, tên miền chính của tôi (dh-dev.com và www.dh-dev.com) cho phép kết nối https, có thể thông qua chứng chỉ do nhà cung cấp dịch vụ lưu trữ của tôi cung cấp.

===Cập nhật===

theo nhận xét của @dave_thompson_085, bây giờ tôi đã hiểu (xem hình ảnh bên dưới) rằng một quy trình được gọi là docker-proxy đang lắng nghe trên các cổng 80 và 443. Đó là lý do tại sao tôi không thể sử dụng nginx để định cấu hình certbot trên các cổng này. Mọi ý tưởng về cách tiến bộ được chào đón nhất...

nhập mô tả hình ảnh ở đây

dave_thompson_085 avatar
lá cờ jp
Bạn nói "nginx chưa được cài đặt" nhưng bạn đã thực hiện `sudo yum install -y nginx` để cài đặt nó, mặc dù TTBOMK không nên khởi động nó một mình. `httpd` và `apache2` KHÔNG phải là tên của nginx; làm `sudo systemctl status nginx` và bạn sẽ thấy nó, và xem nó có đang chạy không.
lá cờ gh
@dave_thompson_085 ``Sudo systemctl status nginx`` trên phiên bản ECS EC2 sạch tạo ra ``Không thể tìm thấy đơn vị nginx.service``. Đã chỉnh sửa câu hỏi để phản ánh điều đó.
dave_thompson_085 avatar
lá cờ jp
nginx không được cài đặt trên một phiên bản sạch, nhưng nó được cài đặt sau khi bạn thực hiện bốn lệnh mà bạn đã liệt kê trong phần "Tôi cài đặt nginx với" và trước khi bạn thử (rõ ràng) chạy nó; đó là thời gian tôi nghĩ rằng bạn đang nói về. Dù sao, hãy làm `Sudo ss -antp | grep -e :80 -e :443` hoặc nếu bạn thích `netstat` thay vì `ss` để xem thực tế cái gì đang chạy trên các cổng đó.
lá cờ gh
Cảm ơn! đã chạy lệnh ss và thực sự có một quy trình gọi là ``docker-proxy`` đang lắng nghe trên các cổng 80 và 443. Vì vậy, câu hỏi vẫn còn là, làm thế nào có thể sử dụng certbot (hoặc bất kỳ giải pháp hỗ trợ SSL nào khác) với thiết lập này?

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.