具有 Docker 个指向文件的卷的 Elastic beanstalk
Elastic beanstalk with Docker Volumes pointing to files
我有一个 Tomcat docker 容器,想用 Elasticbeanstalk 在上面部署我的 webapp。
使用普通 docker 我不会将我的 war 文件添加到容器中,而是通过 -v 标志引用它,例如:
docker run --rm -v data/myfile.war:/usr/local/tomcat/webapps/myFile.war
这让我可以直接引用我的 war 文件。我已将图像推送到我的 docker-hub 存储库。
在我的 Dockerrun.aws.json 中,我想对 war 文件进行引用。我知道可以选择执行以下操作:
"Volumes": [
{
"HostDirectory": "/data",
"ContainerDirectory": "/data"
}]
但这给我留下了一个问题,我的 war 文件在主机目录中的什么位置?!
我的工作流程是打包这些文件:
- Dockerrun.aws.json
- war 文件
并将它们上传到 aws。但我不知道在 ec2 实例上提取 zip 文件的位置。因此我不知道我应该如何引用这些卷。
基本上我想做这样的事情:
"Volumes": [
{
"HostDirectory": "?/myFile.war",
"ContainerDirectory": "/usr/local/tomcat/webapps/ROOT.war"
}]
那个?基本上是我不知道的部分
我正在使用网络 UI。我可以上传包含 Dockerrun.aws.json 和 war 文件的 zip 文件。但是我在 Dockerrun.aws.json 的 Volumes 部分声明了什么
我不知道 aws 在哪里提取我的 war 文件我想做类似的事情:
我在 aws 文档中找不到任何内容。有人有想法吗?
files:
"/data/myfile" :
mode: "000755"
owner: root
group: root
source: http://foo.bar/myfile
&
"Volumes": [
{
"HostDirectory": "/data/myfile",
"ContainerDirectory": "/data/myfile"
}]
您的文件应该在 /var/app/current/
中。您可以ssh到实例进行验证。
我有一个 Tomcat docker 容器,想用 Elasticbeanstalk 在上面部署我的 webapp。
使用普通 docker 我不会将我的 war 文件添加到容器中,而是通过 -v 标志引用它,例如:
docker run --rm -v data/myfile.war:/usr/local/tomcat/webapps/myFile.war
这让我可以直接引用我的 war 文件。我已将图像推送到我的 docker-hub 存储库。 在我的 Dockerrun.aws.json 中,我想对 war 文件进行引用。我知道可以选择执行以下操作:
"Volumes": [
{
"HostDirectory": "/data",
"ContainerDirectory": "/data"
}]
但这给我留下了一个问题,我的 war 文件在主机目录中的什么位置?! 我的工作流程是打包这些文件:
- Dockerrun.aws.json
- war 文件
并将它们上传到 aws。但我不知道在 ec2 实例上提取 zip 文件的位置。因此我不知道我应该如何引用这些卷。 基本上我想做这样的事情:
"Volumes": [
{
"HostDirectory": "?/myFile.war",
"ContainerDirectory": "/usr/local/tomcat/webapps/ROOT.war"
}]
那个?基本上是我不知道的部分
我正在使用网络 UI。我可以上传包含 Dockerrun.aws.json 和 war 文件的 zip 文件。但是我在 Dockerrun.aws.json 的 Volumes 部分声明了什么 我不知道 aws 在哪里提取我的 war 文件我想做类似的事情:
我在 aws 文档中找不到任何内容。有人有想法吗?
files:
"/data/myfile" :
mode: "000755"
owner: root
group: root
source: http://foo.bar/myfile
&
"Volumes": [
{
"HostDirectory": "/data/myfile",
"ContainerDirectory": "/data/myfile"
}]
您的文件应该在 /var/app/current/
中。您可以ssh到实例进行验证。