Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

บทความนี้อธิบายการสร้างไฟล์ Container โดยใช้โปรแกรม Apptainer หัวข้อต่อไปนี้ให้ข้อมูลสรุปเนื้อหาของบทความ เพื่อให้ผู้อ่านสามารถระบุส่วนที่ต้องการอ่านได้อย่างรวดเร็ว

การสร้างไฟล์ Container แบบใช้คำสั่ง build --sandbox

การสร้างไฟล์ container โดยใช้โปรแกรม Apptainer มีด้วยกันหลายวิธี แต่วิธีที่ง่ายและได้รับความนิยมคือการสร้างไฟล์ container แบบ build --sandbox เพื่อให้สามารถเข้าใจได้ง่ายมากขึ้น ในที่นี้จะยกตัวอย่างการดาว์นโหลดไฟล์ container ของ pytorch และนำมาติดตั้ง package เพิ่มเติม ด้วย build --sandbox จากนั้นแปลงกลับไปเป็นไฟล์ container ซึ่งสามารถทำตามขั้นตอนดังต่อไปนี้

  1. ดาว์นโหลดไฟล์ Container ที่ต้องการใช้งาน

 apptainer pull original_pytorch.sif docker://nvcr.io/nvidia/pytorch:24.05-py3
  1. สร้าง Sandbox จากไฟล์ Container ที่ต้องการใช้งาน

apptainer build --sandbox pytorch_sandbox original_pytorch.sif
  1. เข้าไปใน Sandbox เพื่อติดตั้ง Packages อื่นๆ เพิ่มเติม

apptainer shell --writable pytorch_sandbox
  1. ตรวจสอบ packages ที่มีอยู่ด้วยคำสั่ง pip list และติดตั้ง Packages อื่นๆ เพิ่มเติมด้วยคำสั่ง pip install package_name

pip list
pip install package_name
  1. หากติดตั้ง Packages ต่างเสร็จเรียบร้อยแล้ว ให้ใช้คำสั่ง exit เพื่อออกจาก Sandbox

exit
  1. สร้างไฟล์ Container จาก Sandbox ที่ติดตั้ง Packages อื่นๆ เพิ่มเติมแล้ว

apptainer build modified_pytorch.sif pytorch_sandbox

การสร้างไฟล์ Container จากไฟล์ Definition

นอกจากการสร้างไฟล์ Container แบบ build --sandbox แล้ว ยังสามารถสร้างไฟล์ Container จากไฟล์ Definition ได้ด้วย ในที่นี้จะยกตัวอย่างการติดตั้งโปรแกรม OpenCV เพิ่มใน Tensorflow 2.2.1-gpu image จาก Docker hub โดยใช้ไฟล์ Definition ซึ่งสามารถทำตามขั้นตอนดังต่อไปนี้

  1. สร้างไฟล์ Definition (addOpenCV.def)

Bootstrap: docker
From: tensorflow/tensorflow:2.2.1-gpu

%post
    apt-get -y update
    apt-get -y install libgl-dev
    pip install --upgrade pip
    pip install opencv-python
  1. สร้างไฟล์ Container จากไฟล์ addOpenCV.def

singularity build TF_OpenCV.sif addOpenCV.def
  • No labels