簡體   English   中英

使用cloud-init激活conda環境

[英]Activating conda environment with cloud-init

我們正在嘗試使用用戶數據(據我了解是基於cloud-init的)在AWS EC2實例上加載時運行批處理腳本。 由於代碼在conda環境中運行,因此我們試圖在運行Python / Pandas代碼之前將其激活。 我們注意到PATH變量的設置不正確。 (即使在制作映像之前已正確設置,並且在SSH進入實例后已為所有用戶正確設置)

我們已經嘗試過修改Shell腳本中的路徑,但是沒有任何殘留。 我們運行以下代碼:

#!/bin/bash
export=/opt/conda/bin:$PATH
which python
which conda
conda activate etl

在運行export=/opt/conda/bin之前和之后,我們檢查了$ PATH(沒有更改)。 which python返回錯誤的python,以及which conda返回未找到。

之前和之后的$ PATH是: /sbin:/usr/sbin:/bin:/usr/bin

經過數小時的工作,無論是否使用Miniconda AMI,所需的兩條關鍵線是:

#!/bin/bash
echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc #or the path to your conda.sh
source ~/.bashrc
conda activate <full path to environment>

由於某種原因,cloud-init會忽略所有其他嘗試修改路徑的嘗試

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM