首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Docker和EBS卷的EC2,初始化时将EBS卷挂载到容器内

使用Docker和EBS卷的EC2,初始化时将EBS卷挂载到容器内
EN

Stack Overflow用户
提问于 2014-11-20 22:05:56
回答 2查看 9.5K关注 0票数 7

我实际上试图用Docker实现一些东西,但我被卡住了,这是我的问题。

我的容器托管在EC2上,里面有我的web应用程序。我的webapp使用JCR存储库作为数据库,它基本上是一个存储在您想要的位置的文件。所以每次我的web应用程序启动时,如果存储库不存在,它就会创建它,否则它就会使用现有的。

我当前的docker文件看起来像这样:https://gist.github.com/agonist/7cab7358379e9dd6e812 ./chameleon.sh start启动我的webapp。在此应用程序中,我配置了存储库文件所在的位置。

现在,我创建了一个EBS卷,将其附加并挂载到我的EC2实例中。此卷将专用于存储存储库。因此,基本上在我的应用程序中,我将存储库路径配置为/mnt/repository/,其中存储库是包含由我的web应用程序创建的存储库文件的目录。但是我不知道如何在Dockefile中的./chameleon.sh start之前将这个卷挂载到我的容器中。正如我在研究过程中看到的那样

代码语言:javascript
复制
docker run -v /mnt/repository:/mnt/repository aws_beanstalk/current-app

不能从Dockefile中执行。

我还发现了一些关于数据容器的东西,这些容器与另一个容器共享一个卷,但如果我必须运行,仍然存在同样的问题

代码语言:javascript
复制
sudo docker run -d --volumes-from dbdata

在我的容器启动之后

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-21 00:50:12

简而言之:这不是一个答案,只是澄清一下Docker是如何工作的。

不是直接相关的,但您的Dockerfile可能如下所示:

代码语言:javascript
复制
FROM dockerfile/java:oracle-java8

# Expose the port 9000
EXPOSE 9000

# Volumes
VOLUME /root/wisdom/logs
VOLUME /root/wisdom/application

# Change workdir.
WORKDIR /root/wisdom

RUN touch /root/wisdom.log

# Add the wisdom distribution
ADD . /root/wisdom

# For easier handling, we dump the log, so `docker logs containerId` displays
# the log.
CMD ./chameleon.sh start && tail -F logs/wisdom.log

这样,添加之前的所有层都会被缓存。而在以前,如果您更改了目录中的任何内容,则会重新创建所有层。你应该在你的本地目录上使用chameleon.sh,而不是在运行时。ADD保留权限。stop不是必需的,因为当您启动容器时,您没有运行任何进程。

-v确实不能从Dockerfile文件中执行。这是预期的,因为Dockerfile意味着是可移植的。如果你把它绑定到你的本地机器上,你就会失去这个特性。

执行docker run -v /mnt/repository:/mnt/repository aws_beanstalk/current-app时,挂载是在执行命令之前完成的。您可以通过运行docker run -v /mnt/repository:/mnt/repository aws_beanstalk/current-app mount来检查这一点

当使用--volumes-from时,情况是一样的。在执行该命令之前,会先使用装载卷。

那么为什么它会失败呢?我不确定,这将是有趣的检查mount的结果,并与您的EBS做一些手动测试。我有一些挂载EBS卷的容器,它工作得很好。

票数 5
EN

Stack Overflow用户

发布于 2015-05-29 21:11:35

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27041545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档