บทความนี้อธิบายการสร้างไฟล์ Container โดยใช้โปรแกรม Apptainer หัวข้อต่อไปนี้ให้ข้อมูลสรุปเนื้อหาของบทความ เพื่อให้ผู้อ่านสามารถระบุส่วนที่ต้องการอ่านได้อย่างรวดเร็ว
Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
การสร้างไฟล์ Container
...
ด้วยการสร้าง Sandbox directory
การสร้างไฟล์ container Container โดยใช้โปรแกรม Apptainer มีด้วยกันหลายวิธี แต่วิธีที่ง่ายและได้รับความนิยมคือการสร้างไฟล์ container แบบ build --sandbox
Container ด้วยการสร้าง Sandbox directory เพื่อให้สามารถเข้าใจได้ง่ายมากขึ้น ในที่นี้จะยกตัวอย่างการดาว์นโหลดไฟล์ container ของ pytorch และนำมาติดตั้ง package เพิ่มเติม ด้วย build --sandbox
จากนั้นแปลงกลับไปเป็นไฟล์ container ซึ่งสามารถทำตามขั้นตอนดังต่อไปนี้
ดาว์นโหลดไฟล์ container ที่ต้องการใช้งาน
...
Container ของ Tensorflow-gpu จากนั้นติดตั้งโปรแกรม OpenCV เพิ่มเติม ใน Sandbox directory ที่สร้างจากไฟล์ Container ของ 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-py3 |
...
tensorflow/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 อื่นๆ เพิ่มเติมSandbox เพื่อติดตั้งโปรแกรม 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
เพื่อออกจาก sandboxSandbox
Code Block |
---|
exit |
สร้างไฟล์ container จาก sandbox ที่ติดตั้ง packages อื่นๆ Container จาก Sandbox ที่มีการติดตั้งโปรแกรม OpenCV เพิ่มเติมแล้ว
Code Block |
---|
apptainer build modified_pytorchtensorflow-gpu.sif pytorch_sandboxtensorflow_sandbox |
การสร้างไฟล์ Container จากไฟล์ Definition
นอกจากการสร้างไฟล์ Container ด้วยการสร้าง Sandbox directory แล้ว ยังสามารถสร้างไฟล์ Container จากไฟล์ Definition ได้ด้วย ในที่นี้จะยกตัวอย่างการติดตั้งโปรแกรม OpenCV เพิ่มใน Tensorflow-gpu image เวอร์ชั่น 2.17.0 จาก Docker hub โดยใช้ไฟล์ Definition ซึ่งสามารถทำตามขั้นตอนดังต่อไปนี้
สร้างไฟล์ Definition (AddOpenCV.def)
Code Block |
---|
Bootstrap: docker
From: tensorflow/tensorflow:2.17.0-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 |
---|
apptainer build tensorflow-gpu_OpenCV.sif AddOpenCV.def |
คู่มืออื่นๆที่เกี่ยวข้อง
Filter by label (Content by label) | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|