Score:0

คอนเทนเนอร์นักเทียบท่า Nginx ไม่ยอมรับคำขอ

ธง ru

ฉันพยายามเรียกใช้เว็บเซิร์ฟเวอร์ Nginx บนคอนเทนเนอร์นักเทียบท่า สิ่งที่ฉันได้ทำ:

$ นักเทียบท่าดึง nginx
$ นักเทียบท่ารัน -d -p 8080:8080 --name nginx1 nginx

แล้ว นักเทียบท่า PS แสดงว่าคอนเทนเนอร์กำลังทำงาน นอกจากนี้ยังมีการทดสอบ nginx:

$ นักเทียบท่า exec -it nginx1 bash
root@...:/# สถานะบริการ nginx
[ตกลง] nginx กำลังทำงานอยู่
root@...:/# ขด http://localhost:8080/

{แสดงเนื้อหาของไฟล์ html ที่อยู่บน /etc/nginx/html/index.html}

root@...:/# ออก
ทางออก
$ curl http://localhost:8080/

{เพิ่งโหลดและไม่มีอะไรเกิดขึ้น} <- นี่คือปัญหาของฉัน

เน็ตสแตท:

tcp 0 0 0.0.0.0:8080 0.0.0.0:* ฟัง 3776/docker-proxy   
tcp 0 1 172.17.0.1:36684 172.17.0.2:8080 SYN_SENT 3776/นักเทียบท่าพร็อกซี   
tcp 79 0 127.0.0.1:8080 127.0.0.1:41674 CLOSE_WAIT 3776/นักเทียบท่าพร็อกซี   
tcp 0 1 172.17.0.1:36682 172.17.0.2:8080 SYN_SENT 3776/นักเทียบท่าพร็อกซี   
tcp 555 0 127.0.0.1:8080 127.0.0.1:41672 ก่อตั้ง 3776/docker-proxy   
tcp6 0 0 :::8080 :::* ฟัง 3783/docker-proxy   

ฉันใช้ fedora 34 การเรียกใช้ Nginx บนระบบของฉัน (ไม่ใช่นักเทียบท่า) บนพอร์ตเดียวกันก็ใช้ได้

ของฉัน /etc/nginx/nginx.conf:

# สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่า ดู:
# * เอกสารภาษาอังกฤษอย่างเป็นทางการ: http://nginx.org/en/docs/
# * เอกสารทางการของรัสเซีย: http://nginx.org/ru/docs/

ผู้ใช้ nginx;
worker_processes อัตโนมัติ
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# โหลดโมดูลไดนามิก ดู /usr/share/doc/nginx/README.dynamic
รวม /usr/share/nginx/modules/*.conf;

เหตุการณ์ {
    worker_connections 1024;
}

http {
    log_format main '$remote_addr - $remote_user [$time_local] "$request"'
                      '$สถานะ $body_bytes_sent "$http_referer"'
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log หลัก;

    ส่งไฟล์บน;
    tcp_nopush บน;
    tcp_nodelay บน;
    keepalive_timeout 65;
    types_hash_max_size 4096;

    รวม /etc/nginx/mime.types;
    แอปพลิเคชัน default_type/octet-stream;

    # โหลดไฟล์การกำหนดค่าแบบแยกส่วนจากไดเร็กทอรี /etc/nginx/conf.d
    # ดู http://nginx.org/en/docs/ngx_core_module.html#include
    # สำหรับข้อมูลเพิ่มเติม.
    รวม /etc/nginx/conf.d/*.conf;

    เซิร์ฟเวอร์ {
        ฟัง 80;
        ฟัง [::]:80;
        ชื่อเซิร์ฟเวอร์  _;
        รูท /usr/share/nginx/html;

        # โหลดไฟล์การกำหนดค่าสำหรับบล็อกเซิร์ฟเวอร์เริ่มต้น
        รวม /etc/nginx/default.d/*.conf;

        error_page 404 /404.html;
        สถานที่ = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        ตำแหน่ง = /50x.html {
        }
    }

    เซิร์ฟเวอร์ {
        ฟัง 8080;
    }

}

สุดท้ายด้านล่างคือเซิร์ฟเวอร์ที่เกี่ยวข้อง

th flag
คุณไม่สามารถเรียกใช้ nginx บนโฮสต์และส่งต่อพอร์ตเดียวกันไปยังนักเทียบท่า
np flag
ผลลัพธ์ใด ๆ ที่เกี่ยวข้องจาก "นักเทียบท่าบันทึก nginx1"
amirali avatar
ru flag
@Own3r ไม่มีอะไรพิเศษ `root@...:/#` 4 ครั้ง
np flag
คุณได้รับพฤติกรรมเดียวกันกับ curl http://127.0.0.1:8080/ หรือไม่
co flag
บางทีเส้นทางไปยังเครือข่ายนักเทียบท่าอาจเป็นเพียง "รูท" เท่านั้น
Score:0
ธง in

อิมเมจ nginx กำลังเปิดเผยพอร์ต 80 ไม่ใช่ 8080

นักเทียบท่ารัน -d -p 8080:80 --name nginx1 nginx
amirali avatar
ru flag
สิ่งนี้ไม่ทำงานเช่นกัน ฉันยังมีการกำหนดค่าเซิร์ฟเวอร์อย่างง่ายที่ฟังพอร์ต 8080 คุณสามารถเห็น `curl http://localhost:8080/` ใช้งานได้กับคอนเทนเนอร์ bash แต่ไม่ใช่ในระบบของฉัน
in flag
จากนั้น โปรดระบุส่วนที่เกี่ยวข้องทั้งหมดของการกำหนดค่าของคุณ คำถามของคุณไม่แสดงอะไรเลยนอกจากคอนเทนเนอร์ nginx ที่ไม่ได้แก้ไข
Score:0
ธง ru

ไฟร์วอลล์คือปัญหา บน fedora:

sudo firewall-cmd --zone=dmz --add-port=8080/tcp

คนอื่น ๆ อาจเป็น:

sudo ufw อนุญาต 8080

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา