[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-1-1-all-Fixing-Docker-Network-Issue-all--*":3,"academy-blog-translations-1uc0aba4qa5jyc0":52},{"data":4,"page":51,"perPage":51,"totalItems":51,"totalPages":51},[5],{"alt":6,"collectionId":7,"collectionName":8,"content":9,"cover_image":10,"cover_image_path":11,"created":12,"created_by":13,"expand":14,"id":45,"keywords":46,"locale":21,"published_at":47,"scheduled_at":13,"school_blog":43,"short_description":48,"slug":49,"status":41,"title":6,"updated":50,"updated_by":13,"views":44},"แก้ปัญหา Docker Network: เมื่อ IP Pool เต็มและสร้าง Network ใหม่ไม่ได้!","sclblg987654321","school_blog_translations","\u003Ch1>🚀 แก้ปัญหา Docker Network: เมื่อ IP Pool เต็มและสร้าง Network ใหม่ไม่ได้!\u003C\u002Fh1>\u003Ch2>🔥 ปัญหาที่พบ\u003C\u002Fh2>\u003Cp>ระหว่างที่กำลัง Deploy โปรเจกต์ด้วย Docker Compose อยู่ดีๆ ก็เจอ Error นี้:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-plaintext language-bash\">Error response from daemon: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>ตอนแรกก็งงว่ามันเกิดอะไรขึ้น แต่พอลองตรวจสอบดูถึงรู้ว่า \u003Cstrong>Docker ใช้ IP เปลืองมากเกินไป!\u003C\u002Fstrong> ทำให้ IP Pool เต็มเร็วกว่าที่ควรจะเป็น\u003C\u002Fp>\u003Chr>\u003Ch2>💡 ทำไมถึงเกิดปัญหานี้?\u003C\u002Fh2>\u003Cp>โดยปกติแล้ว Docker จะสร้าง Network ใหม่ให้กับแต่ละโปรเจกต์ และกำหนด \u003Cstrong>256 IPs (Subnet \u002F24) ต่อ Network\u003C\u002Fstrong> แม้ว่าแต่ละโปรเจกต์อาจใช้แค่ 4-5 IP เท่านั้น! นั่นหมายความว่า \u003Cstrong>Docker จอง IP โดยเปล่าประโยชน์มหาศาล\u003C\u002Fstrong> จน Pool เต็มเร็วมาก\u003C\u002Fp>\u003Cp>ยิ่งมีโปรเจกต์เยอะขึ้น IP ก็หมดเร็วขึ้น และพอเต็มแล้ว Docker ก็จะสร้าง Network ใหม่ไม่ได้อีกเลย!\u003C\u002Fp>\u003Chr>\u003Ch2>✅ วิธีแก้ไข (Step-by-Step)\u003C\u002Fh2>\u003Ch3>🔍 1. ตรวจสอบ IP Pool ที่ถูกใช้ไปแล้ว\u003C\u002Fh3>\u003Cp>ใช้คำสั่งนี้เพื่อตรวจสอบว่าตอนนี้มี Subnet อะไรบ้างที่ Docker ใช้งานอยู่:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-plaintext language-bash\">docker network inspect $(docker network ls -q) | grep Subnet\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>ถ้าเห็นว่ามีหลายรายการที่ใช้ Subnet \u002F24 แสดงว่า \u003Cstrong>Docker กำลังใช้ IP Pool เปลืองเกินไปจริงๆ\u003C\u002Fstrong>\u003C\u002Fp>\u003Chr>\u003Ch3>🌟 2. ปรับขนาด Subnet ให้เล็กลง\u003C\u002Fh3>\u003Cp>แทนที่ Docker จะให้ \u003Cstrong>256 IPs ต่อ Network (\u002F24)\u003C\u002Fstrong> เราจะลดขนาดลงเหลือ \u003Cstrong>16 IPs ต่อ Network (\u002F28)\u003C\u002Fstrong> ซึ่งเพียงพอสำหรับ 4-5 Services ต่อโปรเจกต์\u003C\u002Fp>\u003Col>\u003Cli>เปิดไฟล์ config ของ Docker Daemon:\u003C\u002Fli>\u003C\u002Fol>\u003Cpre>\u003Ccode class=\"language-plaintext language-bash\">sudo nano \u002Fetc\u002Fdocker\u002Fdaemon.json\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Col start=\"2\">\u003Cli>เพิ่มหรือแก้ไขค่าต่อไปนี้:\u003C\u002Fli>\u003C\u002Fol>\u003Cpre>\u003Ccode class=\"language-plaintext language-json\">{\n  \"default-address-pools\": [\n    {\n      \"base\": \"192.168.250.0\u002F16\",\n      \"size\": 28\n    },\n    {\n      \"base\": \"10.100.0.0\u002F16\",\n      \"size\": 28\n    }\n  ]\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Col start=\"3\">\u003Cli>\u003Cstrong>บันทึกไฟล์ (กด Ctrl + X → Y → Enter)\u003C\u002Fstrong>\u003C\u002Fli>\u003C\u002Fol>\u003Chr>\u003Ch3>♻️ 3. รีสตาร์ท Docker และทดสอบ\u003C\u002Fh3>\u003Cp>หลังจากตั้งค่าเสร็จแล้ว ให้รีสตาร์ท Docker:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-plaintext language-bash\">sudo systemctl restart docker\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>จากนั้นลองสร้าง Network ใหม่:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-plaintext language-bash\">docker network create test_network\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>หากไม่มี Error แสดงว่าแก้ไขสำเร็จแล้ว! 🎉🎉\u003C\u002Fp>\u003Chr>\u003Ch2>💪 ผลลัพธ์ที่ได้\u003C\u002Fh2>\u003Cp>🏠 จากเดิมที่ Docker รองรับได้แค่ \u003Cstrong>512 โปรเจกต์\u003C\u002Fstrong> ตอนนี้สามารถรองรับได้สูงสุดถึง \u003Cstrong>8,192 โปรเจกต์\u003C\u002Fstrong>!\u003C\u002Fp>\u003Cp>💰 การลดการใช้ IP โดยไม่จำเป็นทำให้ Docker จัดการ Network ได้มีประสิทธิภาพขึ้นมาก\u003C\u002Fp>\u003Cp>🚀 Deploy โปรเจกต์ใหม่ได้แบบไร้กังวล ไม่ต้องกลัวว่า IP Pool จะเต็มเร็วเหมือนเดิมอีกแล้ว\u003C\u002Fp>\u003Chr>\u003Ch2>🎯 สรุปสั้นๆ\u003C\u002Fh2>\u003Cul>\u003Cli>\u003Cstrong>Docker ใช้ IP เปลือง เพราะกำหนด 256 IPs ต่อเครือข่าย (Subnet \u002F24)\u003C\u002Fstrong>\u003C\u002Fli>\u003Cli>\u003Cstrong>แต่ละโปรเจกต์ใช้จริงแค่ 4-5 IPs ทำให้เกิดการใช้ IP โดยไม่จำเป็น\u003C\u002Fstrong>\u003C\u002Fli>\u003Cli>\u003Cstrong>แนวทางแก้ไข: ลดขนาด Subnet จาก \u002F24 → \u002F28 ให้เหมาะสมกับการใช้งานจริง\u003C\u002Fstrong>\u003C\u002Fli>\u003Cli>\u003Cstrong>จากเดิมรองรับได้แค่ 512 โปรเจกต์ → ปรับแล้วรองรับได้สูงสุด 8,192 โปรเจกต์!\u003C\u002Fstrong>\u003C\u002Fli>\u003C\u002Ful>\u003Chr>\u003Cp>🚀 \u003Cstrong>ถ้าคุณเจอปัญหานี้ ลองทำตามวิธีแก้นี้ดู!\u003C\u002Fstrong>\u003C\u002Fp>\u003Cp>💡 \u003Cstrong>มีแนวทางหรือวิธีอื่นๆ ที่น่าสนใจ? คอมเมนต์ไว้ได้เลย!\u003C\u002Fstrong>\u003C\u002Fp>","dall_e_2025_02_10_17_37_o44flle68j.einspiredbySupe.webp","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F5wyfe9ekujkmjt5\u002Fdall_e_2025_02_10_17_37_o44flle68j.einspiredbySupe.webp","2026-03-04 08:51:24.781Z","",{"locale":15,"school_blog":25},{"code":16,"collectionId":17,"collectionName":18,"created":19,"flag":20,"id":21,"is_default":22,"label":23,"updated":24},"th","pbc_1989393366","locales","2026-01-22 10:59:55.832Z","twemoji:flag-thailand","s8wri3bt4vgg2ji",true,"Thai","2026-04-10 15:42:46.614Z",{"category":26,"collectionId":27,"collectionName":28,"expand":29,"id":43,"views":44},"qn0d7xwatkleou1","pbc_2105096300","school_blogs",{"category":30},{"blogIds":31,"collectionId":32,"collectionName":33,"created":34,"created_by":13,"id":26,"image":35,"image_alt":13,"image_path":36,"label":37,"name":38,"priority":39,"publish_at":40,"scheduled_at":13,"status":41,"updated":42,"updated_by":13},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:31:21.896Z","4jn5ccty4x9_2894s1fj97.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fqn0d7xwatkleou1\u002F4jn5ccty4x9_2894s1fj97.png",{"en":38,"th":38},"How to",0,"2025-02-04 08:40:59.666Z","published","2026-04-25 02:32:14.588Z","1uc0aba4qa5jyc0",242,"5wyfe9ekujkmjt5",[],"2025-02-10 10:27:01.726Z","โดยปกติแล้ว Docker จะสร้าง Network ใหม่ให้กับแต่ละโปรเจกต์ และกำหนด 256 IPs (Subnet \u002F24) ต่อ Network แม้ว่าแต่ละโปรเจกต์อาจใช้แค่ 4-5 IP เท่านั้น! นั่นหมายความว่า Docker จอง IP โดยเปล่าประโยชน์มหาศาล จน Pool เต็มเร็วมาก","Fixing-Docker-Network-Issue","2026-04-22 07:11:47.246Z",1,{"th":49}]