如何通过Terraform加载本地Bash脚本至AWS SageMaker Studio生命周期配置
从本地加载Bash脚本并配置到AWS SageMaker Studio生命周期配置
Terraform 实现方式
- 直接用Terraform内置函数完成读取+编码流程,无需额外工具。
示例配置代码:
resource "aws_sagemaker_studio_lifecycle_config" "example" { name = "your-lifecycle-config-name" studio_lifecycle_config_app_type = "JupyterServer" # 根据实际需求选择,如KernelGateway studio_lifecycle_config_content = base64encode(file("/absolute/path/to/your/script.sh")) }
file()函数:读取本地Bash脚本的原始文本内容base64encode()函数:自动将读取的内容转为符合要求的Base64编码格式
AWS CLI 实现方式
- 通过系统
base64命令对本地脚本编码,再传入CLI命令。
示例执行命令:
aws sagemaker create-studio-lifecycle-config \ --studio-lifecycle-config-name "your-lifecycle-config-name" \ --studio-lifecycle-config-app-type "JupyterServer" \ --studio-lifecycle-config-content "$(base64 /absolute/path/to/your/script.sh)"
base64 /path/to/script.sh:对本地脚本执行Base64编码$():将编码结果作为参数注入到CLI命令中
注意事项
- 脚本路径支持绝对路径或相对路径,相对路径以当前执行命令/配置的工作目录为基准
- 脚本需符合SageMaker生命周期配置规范,比如开头必须包含
#!/bin/bash声明
内容的提问来源于stack exchange,提问作者change198
相关产品推荐
相关产品推荐

