Điểm:0

Nginx docker container không chấp nhận yêu cầu

lá cờ ru

Tôi đang cố chạy máy chủ web Nginx trên bộ chứa docker. Những gì tôi đã làm xong:

$ docker kéo nginx
$ docker run -d -p 8080:8080 --name nginx1 nginx

sau đó docker ps cho thấy vùng chứa đang chạy. Ngoài ra, tesing nginx còn hoạt động:

$ docker exec -it nginx1 bash
root@...:/# trạng thái dịch vụ nginx
[ ok ] nginx đang chạy.
root@...:/# curl http://localhost:8080/

{Hiển thị nội dung của tệp html nằm trên /etc/nginx/html/index.html}

root@...:/# thoát
lối ra
$ cuộn http://localhost:8080/

{Chỉ tải và không có gì xảy ra} <- Đây là vấn đề của tôi

Thống kê mạng:

tcp 0 0 0.0.0.0:8080 0.0.0.0:* NGHE 3776/docker-proxy   
tcp 0 1 172.17.0.1:36684 172.17.0.2:8080 SYN_SENT 3776/docker-proxy   
tcp 79 0 127.0.0.1:8080 127.0.0.1:41674 CLOSE_WAIT 3776/docker-proxy   
tcp 0 1 172.17.0.1:36682 172.17.0.2:8080 SYN_SENT 3776/docker-proxy   
tcp 555 0 127.0.0.1:8080 127.0.0.1:41672 ĐƯỢC THÀNH LẬP 3776/docker-proxy   
tcp6 0 0 :::8080 :::* NGHE 3783/docker-proxy   

Tôi đang dùng fedora 34. Đồng thời chạy Nginx trên hệ thống của tôi (Không phải docker) trên cùng một cổng vẫn hoạt động tốt.

Của tôi /etc/nginx/nginx.conf:

# Để biết thêm thông tin về cấu hình, hãy xem:
# * Tài liệu tiếng Anh chính thức: http://nginx.org/en/docs/
# * Tài liệu chính thức của Nga: http://nginx.org/ru/docs/

người dùng nginx;
worker_processes tự động;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Tải các mô-đun động. Xem /usr/share/doc/nginx/README.dynamic.
bao gồm /usr/share/nginx/modules/*.conf;

sự kiện {
    công_nhân kết_nối 1024 ;
}

http {
    log_format chính '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log chính;

    gửi tệp trên;
    bật tcp_nopus;
    bật tcp_nodelay;
    keepalive_timeout 65;
    loại_hash_max_size 4096;

    bao gồm /etc/nginx/mime.types;
    ứng dụng default_type/octet-stream;

    # Tải các tệp cấu hình mô-đun từ thư mục /etc/nginx/conf.d.
    # Xem http://nginx.org/en/docs/ngx_core_module.html#include
    # để biết thêm thông tin.
    bao gồm /etc/nginx/conf.d/*.conf;

    người phục vụ {
        nghe 80;
        nghe [::]:80;
        tên máy chủ  _;
        gốc /usr/share/nginx/html;

        # Tải tệp cấu hình cho khối máy chủ mặc định.
        bao gồm /etc/nginx/default.d/*.conf;

        lỗi_trang 404 /404.html;
        vị trí = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        vị trí = /50x.html {
        }
    }

    người phục vụ {
        nghe 8080 ;
    }

}

Cái cuối cùng ở dưới cùng là máy chủ có liên quan.

lá cờ th
Bạn không thể chạy nginx trên máy chủ và chuyển tiếp cùng một cổng vào docker.
0wn3r avatar
lá cờ np
bất kỳ đầu ra có liên quan nào từ "docker log nginx1"?
amirali avatar
lá cờ ru
@ Own3r Không có gì đặc biệt. 4 lần `root@...:/#`.
0wn3r avatar
lá cờ np
bạn có nhận được hành vi tương tự với curl http://127.0.0.1:8080/ không?
lá cờ co
Có lẽ định tuyến đến mạng docker chỉ xuất hiện cho "root"?
Điểm:0
lá cờ in

Hình ảnh nginx đang hiển thị cổng 80, không phải 8080.

docker run -d -p 8080:80 --name nginx1 nginx
amirali avatar
lá cờ ru
Điều này cũng không hoạt động. Tôi cũng có một cấu hình máy chủ đơn giản nghe cổng 8080. Bạn có thể thấy `curl http://localhost:8080/` hoạt động trên bash vùng chứa nhưng không hoạt động trên hệ thống của tôi.
lá cờ in
Sau đó, vui lòng cung cấp tất cả các phần có liên quan trong cấu hình của bạn. Câu hỏi của bạn không hiển thị gì ngoài vùng chứa nginx chưa sửa đổi.
Điểm:0
lá cờ ru

Tường lửa là vấn đề. Trên mũ phớt:

sudo tường lửa-cmd --zone=dmz --add-port=8080/tcp

Trên những người khác, nó có thể là:

sudo ufw cho phép 8080

Đă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.