作者:没有你的日子1976_472 | 来源:互联网 | 2022-12-01 20:00
我正在尝试将我的弹性文件系统(EFS)安装在我的docker容器中,以便它可以与AWS批处理一起使用.这是我做的:
创建针对弹性容器服务(ECS)进行了优化的新AMI.我在这里遵循了这个指南,以确保它有ECS.我还将mount挂载到/etc/fstab
文件中,并在重启后验证我的EFS是否正在挂载(/ mnt/efs).
用我的新AMI测试了EC2实例并验证我可以拉出docker容器并通过它传递我的挂载点
docker run --volume /mnt/efs:/home/efs -it mycontainer:latest
以交互方式运行docker镜像会在efs中显示我的数据
使用我的新AMI 设置新的计算环境,该AMI在引导时安装EFS.
创建JOB定义文件:
{
"jobDefinitionName": "MyJobDEF",
"jobDefinitionArn": "arn:aws:batch:us-west-2:#######:job-definition/Submit:8",
"revision": 8,
"status": "ACTIVE",
"type": "container",
"parameters": {},
"retryStrategy": {
"attempts": 1
},
"containerProperties": {
"image": "########.ecr.us-west-2.amazonaws.com/mycontainer",
"vcpus": 1,
"memory": 100,
"command": [
"ls",
"/home/efs",
],
"volumes": [
{
"host": {
"sourcePath": "/mnt/efs"
},
"name": "EFS"
}
],
"environment": [],
"mountPoints": [
{
"containerPath": "/home/efs",
"readOnly": false,
"sourceVolume": "EFS"
}
],
"ulimits": []
}
}
运行作业,查看日志
无论如何,虽然它没有说"没有找到文件/ home/efs",但它没有列出我填充的EFS中的任何内容,我将其作为装载空efs的容器.我究竟做错了什么?我的AMI没有在计算环境中安装EFS吗?