加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

nginx – Docker:是否可以在没有卷的情况下在2个容器之间共享

发布时间:2020-12-13 21:37:39 所属栏目:Nginx 来源:网络整理
导读:我有2个容器:web和nginx.当我构建Web容器时,在容器内生成前端的静态资源. 现在,我想在不使用主机上的卷的情况下在web和nginx之间共享这些资产.否则,我将不得不在主机端构建这些静态资产,然后将其作为卷包含到Web容器中并与nginx容器共享.从构建系统的角度来

我有2个容器:web和nginx.当我构建Web容器时,在容器内生成前端的静态资源.

现在,我想在不使用主机上的卷的情况下在web和nginx之间共享这些资产.否则,我将不得不在主机端构建这些静态资产,然后将其作为卷包含到Web容器中并与nginx容器共享.从构建系统的角度来看,这是不可取的.

有没有办法在Web容器中构建静态资产,然后与nginx共享它们?

最佳答案

Otherwise,I’ll have to build those static assets on the host side and then include as a volume into the web container and share it with nginx container.

这句话似乎不正确.

如果静态资产是作为构建过程的一部分生成的,那么只需在运行时在该目录的顶部安装一个卷. Docker将负责将基础内容复制到卷中,之后您可以使用–volumes-from在nginx容器中访问它.

例如,如果我从我的Web容器的Dockerfile开始:

FROM alpine

RUN apk add --update darkhttpd
COPY assets /assets
CMD ["darkhttpd","/assets"]

我现在有一个包含我的静态资产的目录/资产.如果我
将此图像运行为:

docker run -v /assets --name web web

然后/资产将(a)成为一个卷,(b)包含的内容
/ assets目录.

现在你可以启动一个nginx容器并与它共享这些数据:

docker run --volumes-from web nginx

nginx容器将有一个包含您的./ assets目录
静态资产.

我把一个小例子here放在一起.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读