เปลี่ยนฟังก์ชั่นและคำสั่งเป็นบริการเว็บ
สำหรับตัวอย่างโลกแห่งความเป็นจริงให้ดูการเปลี่ยนฟังก์ชั่น Python เป็นบริการเว็บ
webify เป็นเซิร์ฟเวอร์ CGI พื้นฐานที่ส่งต่อคำขอทั้งหมดไปยังสคริปต์เดียว เป้าหมายการออกแบบคือการกำหนดศูนย์ให้มากที่สุด
webify เรียกใช้สคริปต์ของคุณและเขียนเนื้อหาคำขอไปยังกระบวนการของคุณ 'stdin Stdout จะถูกส่งกลับไปยังลูกค้าในฐานะ HTTP Response Body
หากสคริปต์ของคุณส่งคืนรหัสออกที่ไม่ใช่ศูนย์รหัสสถานะการตอบกลับ HTTP จะเป็น 500
webify สามารถใช้ได้จากหน้ารุ่นของโครงการ
บน MacOS สามารถติดตั้งผ่าน MacPorts:
sudo port install webify # Make a web service out of `wc` to count the characters in the request body.
$ webify wc -c
2020/08/25 12:42:32 listening on :8080, proxying to wc -c
...
$ curl -d ' This is a really long sentence ' http://localhost:8080
30ภาพนักเทียบท่าอย่างเป็นทางการคือ beefsack/webify
สามารถกำหนดค่าได้โดยใช้ตัวแปรสภาพแวดล้อมต่อไปนี้:
ADDR - ที่อยู่ที่จะฟังภายในคอนเทนเนอร์, ค่าเริ่มต้นเป็น :80SCRIPT - คำสั่งที่จะเรียกใช้ค่าเริ่มต้นเป็น /script $ docker run -it --rm -p 8080:80 -v /path/to/my/script:/script beefsack/webify:latest
2020/08/25 04:27:46 listening on :80, proxying to /script
...
$ curl -d 'Some data' http://localhost:8080
สร้าง Dockerfile ดังต่อไปนี้:
FROM beefsack/webify:latest
COPY myscript /script
ยินดีต้อนรับคำขอดึง สำหรับการเปลี่ยนแปลงครั้งใหญ่โปรดเปิดปัญหาก่อนเพื่อหารือเกี่ยวกับสิ่งที่คุณต้องการเปลี่ยนแปลง
โปรดตรวจสอบให้แน่ใจว่าได้อัปเดตการทดสอบตามความเหมาะสม
มิกซ์