การย้ายโปรเจกต์ในสภาพแวดล้อมเสมือนใน Python
บ่อยครั้งที่เกิดสถานการณ์ที่จำเป็นต้องย้าย โปรเจกต์ต้นฉบับไปยังโฟลเดอร์ใหม่ ตัวอย่างเช่น ไปยังเซิร์ฟเวอร์ใหม่ มาดูกันว่า สามารถทำได้อย่างไรด้วยสภาพแวดล้อม เสมือนใน Python
ก่อนอื่นสร้างโฟลเดอร์ใหม่ชื่อ new_project_ven
เพื่อย้ายโปรเจกต์จาก project_ven เข้าไป:
- /project_venv/
- ...
- /project1/
- main.py
- /new_project_venv/
ต่อมา คัดลอกแพ็กเกจทั้งหมดที่ติดตั้งไว้
จากสภาพแวดล้อมเสมือน project_ven
ทำได้ด้วยคำสั่งต่อไปนี้:
python -m pip freeze > req.txt
ทางด้านซ้ายของคำว่า freeze ใส่
เครื่องหมายวงเล็บปีกกาและชื่อไฟล์ที่จะ
เก็บข้อมูลเกี่ยวกับแพ็กเกจ ไฟล์ของเรา
ชื่อ req.txt แต่ชื่อไฟล์นี้
สามารถตั้งเป็นอะไรก็ได้ หลังจากรันคำสั่ง
ในโฟลเดอร์โปรเจกต์จะปรากฏไฟล์ใหม่:
- /project_venv/
- ...
- /project1/
- main.py
- req.txt
ต่อมา ต้องคัดลอกโฟลเดอร์ project1
ซึ่งตอนนี้มีไฟล์อยู่สองไฟล์: main.py
และ req.txt จากนั้นวางลงใน
โฟลเดอร์ new_project_venv:
- /project_venv/
- ...
- /project1/
- main.py
- req.txt
- /new_project_venv/
- /project1/
- main.py
- req.txt
- /project1/
ตอนนี้ออกจากสภาพแวดล้อมเสมือนปัจจุบัน:
deactivate
จากนั้นในคอนโซล ต้องเปลี่ยนไดเรกทอรีไปที่โฟลเดอร์
new_project_venv/project1 หลังจาก
นั้น ควรสร้างสภาพแวดล้อมเสมือนใหม่สำหรับโปรเจกต์ใหม่:
python -m venv ..
ต่อมา เปิดใช้งานสภาพแวดล้อมใหม่ของเรา:
..\Scripts\activate # สำหรับ Windows
source ../bin/activate # สำหรับ Linux
หลังจากนั้นในคอนโซล คุณจะเห็นชื่อของ สภาพแวดล้อมเสมือนใหม่:
(new_project_venv)
ตอนนี้ ต้องกู้คืนแพ็กเกจจากโปรเจกต์ต้นฉบับ ทำได้โดยใช้คำสั่งต่อไปนี้:
pip install -r req.txt
หลังจากติดตั้งไลบรารีสำเร็จ จะแสดง ข้อความต่อไปนี้:
Successfully installed numpy-1.26.4
ย้ายโปรเจกต์ที่คุณสร้างไว้ไปยัง สภาพแวดล้อมเสมือนใหม่
กู้คืนไลบรารีทั้งหมดจากโฟลเดอร์ต้นทางในโปรเจกต์ใหม่ ทดสอบการทำงานของไลบรารีที่ติดตั้งไว้