Tôi đang viết một tập lệnh bash với ý định lưu trữ nó trên một cụm máy tính. Tôi muốn tập lệnh tạo môi trường chung cư cho bất kỳ người dùng nào thực thi nó để mọi người trong nhóm của chúng tôi có thể nhanh chóng thiết lập cùng một môi trường làm việc.
Tôi nhận ra rằng điều này hơi quá mức cần thiết đối với số lượng lệnh cần thiết, nhưng tôi muốn thực hành một số lệnh bash. Đây là kịch bản của tôi cho đến nay:
#!/bin/bash
# Tải Anaconda
tải mô-đun Anaconda/4.2.0
#Tạo môi trường
conda tạo -n ADNI
# Tải môi trường
nguồn kích hoạt ADNI
#Cài đặt phần mềm xử lý ảnh
pip cài đặt med2image
echo 'Môi trường làm việc có tên ADNI đã được tạo.'
echo 'Hãy chạy `source activate ADNI` để hoạt động trong đó.'
Tập lệnh này đã tạo thành công môi trường. Tuy nhiên, sau khi tải môi trường sau khi chạy tập lệnh, tôi chạy danh sách chung cư
để xem gói nào được tải trong đó và nhận được kết quả đầu ra sau:
(ADNI) MLG-BH0039:ADNI_DeepLearning danh sách conda johnca$
# gói trong môi trường tại /Users/johnca/miniconda3/envs/ADNI:
#
(ADNI) MLG-BH0039:ADNI_DeepLearning johnca$
Điều này mang lại cho tôi ấn tượng rằng gói không được tải trong môi trường. Có đúng không? Nếu vậy, làm cách nào tôi có thể thay đổi tập lệnh để các gói cần thiết được cài đặt thành công vào môi trường đã chỉ định.
Cảm ơn!
Tôi đã cố gắng tìm ra cách tốt hơn để tự động hóa quy trình này bằng cách tạo tệp môi trường.yml chứa tất cả các gói cần thiết. Điều này cũng có thể bao gồm các gói pip. Tập tin của tôi trông như thế này:
Tên: ADNI
kênh:
- phía nam
-mặc định
phụ thuộc:
- ca-certificates=2017.08.26=h1d4fec5_0
- chứng chỉ=2017.11.5=py36hf29ccca_0
- cffi=1.11.2=py36h2825082_0
- freetype=2.8=hab7d2ae_1
- intel-openmp=2018.0.0=hc7b2577_8
- jpeg=9b=h024ee3a_2
- libffi=3.2.1=hd88cf55_4
- libgcc=7.2.0=h69d50b8_2
- libgcc-ng=7.2.0=h7cc24e2_2
- libgfortran-ng=7.2.0=h9f7466a_2
- libpng=1.6.32=hbd3595f_4
- libstdcxx-ng=7.2.0=h7a57d05_2
- libtiff=4.0.9=h28f6b97_0
- mkl=2018.0.1=h19d6760_4
- numpy=1.13.3=py36ha12f23b_0
-olefile=0,44=py36h79f9f78_0
- openssl=1.0.2n=hb7f436b_0
- gối=4.2.1=py36h9119f52_0
- pip=9.0.1=py36h6c6f9ce_4
- pycparser=2.18=py36hf9f622e_1
-python=3.6.0=0
- dòng đọc=6.2=2
- scipy=1.0.0=py36hbf646e7_0
- setuptools=36.5.0=py36he42e2e1_0
- sáu=1.11.0=py36h372c433_1
-sqlite=3.13.0=0
-tk=8.5.18=0
- bánh xe=0,30,0=py36hfd4bba0_1
- xz=5.2.3=h55aa19d_2
- zlib=1.2.11=ha838bed_2
- pytorch=0.2.0=py36hf0d2509_4cu75
- torchvision=0.1.9=py36h7584368_1
-pip:
- người đi xe đạp==0.10.0
Sau đó tôi có thể tự động tạo môi trường bằng cách tham chiếu tệp này như sau:
#!/bin/bash
# Tải Anaconda
tải mô-đun Anaconda/4.2.0
#Tạo môi trường
conda env tạo -f adni_env.yml
tiếng vang ''
echo 'Môi trường làm việc có tên ADNI đã được tạo hoặc cập nhật.'
echo 'Nếu làm việc trên máy chủ cadillac, vui lòng `tải mô-đun Anaconda/4.2.0`.'
echo 'Sau đó chạy `source activate ADNI` để hoạt động trong môi trường.'
tiếng vang ''
Tôi hy vọng điều này sẽ giúp ích cho những ai có thể gặp phải vấn đề tương tự trong tương lai.
Tôi là một lập trình viên xuất sắc, rất giỏi!