คู่มือภาษาและกรอบงาน
ปรับใช้แอป ASP .NET ด้วย Docker บนคอนเทนเนอร์
8 นาที
back4app containers เป็นแพลตฟอร์มที่ทรงพลังสำหรับการโฮสต์แอปพลิเคชัน asp net ด้วยความสามารถในการปรับใช้แอป asp net ที่ทำเป็น docker โดยอัตโนมัติ คุณสามารถเริ่มต้นโปรเจกต์ของคุณในสภาพแวดล้อมที่สามารถปรับขนาดได้และยืดหยุ่นได้อย่างง่ายดาย ในคู่มือนี้ เราจะพาคุณไปผ่านกระบวนการเตรียมและปรับใช้แอปพลิเคชัน asp net ของคุณบน back4app containers โดยครอบคลุมทุกอย่างตั้งแต่โปรเจกต์ง่ายๆ ไปจนถึงการตั้งค่าที่ซับซ้อนมากขึ้น เราจะเริ่มต้นด้วยการเตรียมการที่จำเป็น จากนั้นจะไปที่การทำ docker ของแอปพลิเคชัน การทดสอบในเครื่อง การผลักดันโปรเจกต์ไปยัง github การตั้งค่าโปรเจกต์บน back4app containers การติดตามการปรับใช้ และการแก้ไขปัญหาทั่วไป หากคุณมีคำถามหรือความคิดเห็นใดๆ โปรดเข้าร่วมการสนทนาในช่อง #containers บน back4app community บน slack คุณยังสามารถติดต่อเราที่ community\@back4app com ได้ตลอดเวลา หากคุณต้องการตรวจสอบตัวอย่างโปรเจกต์ asp net ที่ทำงานได้บน back4app containers สามารถไปที่ https //github com/templates back4app/containers python flask sample 1 เตรียมแอปพลิเคชัน asp net ของคุณ ก่อนที่จะนำแอปพลิเคชัน asp net ของคุณไปใช้งานบน back4app containers คุณต้องมั่นใจว่าโครงการของคุณถูกกำหนดค่าอย่างถูกต้องและว่าข้อกำหนดทั้งหมดถูกติดตั้งอย่างถูกต้อง ทำตามขั้นตอนเหล่านี้เพื่อเตรียมแอปพลิเคชันของคุณสำหรับการนำไปใช้งาน ตรวจสอบให้แน่ใจว่าโครงการของคุณกำลังใช้เวอร์ชันที่รองรับของ net framework (แนะนำให้ใช้ net 5 หรือสูงกว่า) ตรวจสอบว่าข้อกำหนดทั้งหมดถูกระบุใน csproj ไฟล์ อัปเดต appsettings json ไฟล์ของคุณเพื่อรวมตัวแปรสภาพแวดล้อมหรือการตั้งค่าคอนฟิกที่จำเป็น ตรวจสอบให้แน่ใจว่าแอปพลิเคชันของคุณกำลังฟังที่พอร์ตที่ถูกต้อง (โดยทั่วไปคือ 5000 สำหรับ http และ 5001 สำหรับ https) และว่าพอร์ตนั้นถูกเปิดเผยใน dockerfile ของคุณ หากแอปพลิเคชันของคุณพึ่งพาฐานข้อมูล ให้กำหนดค่าแอปของคุณให้ใช้บริการฐานข้อมูลระยะไกลแทนฐานข้อมูลท้องถิ่น 2 การทำให้เป็น docker ในการทำให้แอปพลิเคชัน asp net ของคุณเป็น docker คุณจะต้องสร้าง dockerfile นี่คือตัวอย่าง dockerfile สำหรับแอปพลิเคชันที่ซับซ้อนมากขึ้น \# build stage from mcr microsoft com/dotnet/sdk 5 0 as build workdir /app \# copy and restore project files copy containers asp net sample csproj run dotnet restore \# copy the entire project and build copy run dotnet publish c release o out \# runtime stage from mcr microsoft com/dotnet/aspnet 5 0 as runtime workdir /app copy from=build /app/out / \# expose port 80 expose 80 \# set the entry point for the container entrypoint \["dotnet", "containers asp net sample dll"] 3 ทดสอบโปรเจกต์ของคุณในเครื่อง ก่อนที่จะนำแอปพลิเคชันของคุณไปใช้งาน การทดสอบในเครื่องเป็นสิ่งสำคัญมาก เพื่อทำเช่นนี้ ให้รันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ docker build t myapp docker run p 5000 5000 myapp ตอนนี้ ให้ไปที่ http //localhost 5000 ในเบราว์เซอร์ของคุณเพื่อให้แน่ใจว่าแอปพลิเคชันของคุณทำงานได้อย่างถูกต้อง 4 ผลักดันโปรเจกต์ของคุณไปยัง github เพื่อผลักดันโปรเจกต์ของคุณไปยังที่เก็บ github ให้ทำตามขั้นตอนเหล่านี้ เริ่มต้นที่เก็บ git ในโฟลเดอร์โปรเจกต์ของคุณโดยการรัน git init เพิ่มไฟล์โปรเจกต์ทั้งหมดไปยังที่เก็บโดยใช้ git add คอมมิตการเปลี่ยนแปลงพร้อมข้อความโดยใช้ git commit m "initial commit" สร้างที่เก็บใหม่บน github และเพิ่ม url ที่เก็บระยะไกลไปยังที่เก็บ git ในเครื่องของคุณโดยใช้ git remote add origin \<repository url> ผลักดันการเปลี่ยนแปลงไปยังที่เก็บระยะไกลโดยใช้ git push u origin master 5 ปรับใช้แอปพลิเคชันของคุณบน back4app containers ในการปรับใช้แอปพลิเคชัน asp net ของคุณบน back4app containers ให้ทำตามขั้นตอนเหล่านี้ เข้าสู่ระบบบัญชี back4app ของคุณและไปที่ส่วน "containers" คลิก "สร้างแอปใหม่" และจากนั้นเลือก "แก้ไขสิทธิ์ github" อนุญาตให้ back4app เข้าถึงบัญชี github ของคุณและเลือกที่เก็บข้อมูลที่มีโปรเจกต์ asp net ของคุณ เมื่อเชื่อมต่อกับที่เก็บข้อมูลของคุณแล้วให้เลือกเพื่อดำเนินการต่อ เลือกสาขาที่เหมาะสมและกำหนดค่าตัวแปรสภาพแวดล้อมที่จำเป็น คลิก "สร้าง" เพื่อเริ่มกระบวนการปรับใช้ back4app containers จะสร้างและปรับใช้แอปพลิเคชันของคุณโดยอัตโนมัติโดยใช้ dockerfile คุณสามารถติดตามเอกสารเหล่านี้เพื่อให้คำแนะนำที่ดียิ่งขึ้น 1 เชื่อมต่อที่เก็บ github ของคุณกับ back4app https //www back4app com/docs containers/integrate with github 2 เตรียมโปรเจกต์ของคุณสำหรับการปรับใช้ https //www back4app com/docs containers/prepare your deployment โดยสรุป คอนเทนเนอร์จะปฏิบัติตามคำแนะนำที่ระบุใน dockerfile ของคุณและเริ่มสร้างแอปของคุณ หลังจากกำหนดค่าคอนเทนเนอร์แอปของคุณ back4app จะสร้างภาพคอนเทนเนอร์โดยอัตโนมัติโดยใช้ dockerfile และปรับใช้แอป express ของคุณบนแพลตฟอร์ม กระบวนการปรับใช้อาจใช้เวลาสักครู่ ขึ้นอยู่กับขนาดและความซับซ้อนของแอปพลิเคชันของคุณ เมื่อการปรับใช้เสร็จสิ้น back4app containers จะให้ url ที่ไม่ซ้ำกันแก่คุณซึ่งคุณสามารถเข้าถึงแอปที่ปรับใช้ของคุณได้ 6 ตรวจสอบการปรับใช้และแก้ไขข้อผิดพลาดที่อาจเกิดขึ้น เมื่อแอปพลิเคชันของคุณถูกปรับใช้แล้ว คุณสามารถตรวจสอบสถานะของมันได้ผ่านแดชบอร์ด back4app containers ที่นี่ คุณสามารถดูบันทึก ติดตามความก้าวหน้าของการปรับใช้ และระบุข้อผิดพลาดหรือคำเตือนใด ๆ ที่อาจเกิดขึ้นระหว่างการปรับใช้ เพื่อให้การปรับใช้นั้นราบรื่น ให้ใส่ใจอย่างใกล้ชิดกับข้อความข้อผิดพลาดใด ๆ และแก้ไขตามนั้น 7 การแก้ไขปัญหาทั่วไป เมื่อปรับใช้และเรียกใช้แอปบน back4app containers คุณอาจพบปัญหาทั่วไปบางประการ นี่คือรายการปัญหาทั่วไปอย่างน้อย 5 ข้อและวิธีแก้ไขของพวกเขา app not starting ensure that your dockerfile's entrypoint is correct and that your application is listening on the correct port (usually 5000 for http and 5001 for https) database connection issues if your application relies on a remote database, double check your connection string and ensure that the remote database is accessible from the back4app containers environment update your appsettings json file with the correct connection string and any required environment variables dependencies not installed verify that all dependencies are listed in your csproj file, and make sure your dockerfile includes the necessary run dotnet restore command build errors if your application fails to build during deployment, review the build logs in the back4app containers dashboard for any error messages ensure that your dockerfile is properly configured, and double check your project's source code for any issues slow performance if your application is experiencing slow performance or high latency, consider increasing the resources allocated to your container or scaling your app horizontally by adding more container instances at anytime if you want to check a sample working asp net project on back4app containers go to https //github com/templates back4app/containers python flask sample เมื่อทำการแก้ไขปัญหา จำไว้ว่าบันทึกคือเพื่อนที่ดีที่สุดของคุณ แพลตฟอร์ม back4app containers ให้บันทึกที่ละเอียดสำหรับแอปพลิเคชันของคุณ ช่วยให้คุณสามารถระบุและแก้ไขปัญหาได้อย่างรวดเร็ว โดยการจัดการกับปัญหาทั่วไปเหล่านี้ คุณสามารถมั่นใจได้ว่าจะมีการปรับใช้และประสบการณ์การทำงานที่ราบรื่นสำหรับแอปพลิเคชัน asp net ของคุณบน back4app containers โดยการจัดการกับปัญหาทั่วไปเหล่านี้ คุณสามารถมั่นใจได้ว่าจะมีการปรับใช้ที่ประสบความสำเร็จและการทำงานที่ราบรื่นของแอปพลิเคชัน asp net ของคุณบน back4app containers