...
การสร้างไฟล์ Container โดยใช้โปรแกรม Apptainer มีด้วยกันหลายวิธี แต่วิธีที่ง่ายและได้รับความนิยมคือการสร้างไฟล์ Container ด้วยการสร้าง Sandbox directory เพื่อให้สามารถเข้าใจได้ง่ายมากขึ้น ในที่นี้จะยกตัวอย่างการดาว์นโหลดไฟล์ Container ของ PyTorch จากนั้นติดตั้ง Package Tensorflow-gpu จากนั้นติดตั้งโปรแกรม OpenCV เพิ่มเติม ใน Sandbox directory ที่สร้างจากไฟล์ Container ของ PyTorch เพื่อใช้ในการสร้างไฟล์ Container ไฟล์ใหม่ที่มีการติดตั้ง Packages Tensorflow-gpu เพื่อนำมาใช้ในการสร้างไฟล์ Container ไฟล์ใหม่ที่มีการติดตั้งโปรแกรม OpenCV เพิ่มเติมแล้ว ซึ่งสามารถทำตามขั้นตอนดังต่อไปนี้
ดาว์นโหลดไฟล์ Container ที่ต้องการใช้งานของ Tensorflow-gpu เวอร์ชั่น 2.17.0
Code Block |
---|
apptainer pull original_pytorchtensorflow-gpu.sif docker://nvcr.io/nvidia/pytorch:24.05-py3tensorflow/tensorflow:2.17.0-gpu |
สร้าง Sandbox จากไฟล์ Container ที่ต้องการใช้งานของ Tensorflow-gpu เวอร์ชั่น 2.17.0
Code Block |
---|
apptainer build --sandbox pytorchtensorflow_sandbox original_pytorchtensorflow-gpu.sif |
เข้าไปใน Sandbox เพื่อติดตั้ง Packages อื่นๆ เพิ่มเติมเพื่อติดตั้งโปรแกรม OpenCV
Code Block |
---|
apptainer shell --writable pytorchtensorflow_sandbox |
ตรวจสอบ packages ที่มีอยู่ด้วยคำสั่ง
pip list
และติดตั้ง Packages อื่นๆ เพิ่มเติมด้วยคำสั่งpip install package_name
...
ติดตั้งโปรแกรม OpenCV ด้วยคำสั่งต่อไปนี้
Code Block |
---|
apt-get -y update apt-get -y install libgl-dev pip install --upgrade pip pip install package_name |
...
opencv-python |
เมื่อติดตั้งโปรแกรม OpenCV เสร็จเรียบร้อยแล้ว ให้ใช้คำสั่ง
exit
เพื่อออกจาก Sandbox
...
สร้างไฟล์ Container จาก Sandbox ที่ติดตั้ง Packages อื่นๆ เพิ่มเติมแล้วที่ติดตั้งโปรแกรม OpenCV เรียบร้อยแล้ว
Code Block |
---|
apptainer build modified_pytorchtensorflow-gpu.sif pytorchtensorflow_sandbox |
การสร้างไฟล์ Container จากไฟล์ Definition
...
Code Block |
---|
Bootstrap: docker From: tensorflow/tensorflow:2.217.10-gpu %post apt-get -y update apt-get -y install libgl-dev pip install --upgrade pip pip install opencv-python |
สร้างไฟล์ Container จากไฟล์ addOpenCV.def
Code Block |
---|
singularityapptainer build TFtensorflow-gpu_OpenCV.sif addOpenCV.def |