首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解postgresql的简单dockerfile

理解postgresql的简单dockerfile
EN

Stack Overflow用户
提问于 2015-09-13 16:43:19
回答 1查看 112关注 0票数 1

我刚读了一个码头文件这里

基本上,Dockerfile如下所示:

代码语言:javascript
复制
FROM postgres:9.1
MAINTAINER Mike Dillon <mike@appropriate.io>

ENV POSTGIS_MAJOR 2.1
ENV POSTGIS_VERSION 2.1.7+dfsg-3~94.git954a8d0.pgdg80+1

RUN apt-get update \
      && apt-get install -y --no-install-recommends \
           postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR=$POSTGIS_VERSION \
           postgis=$POSTGIS_VERSION \
      && rm -rf /var/lib/apt/lists/*

RUN mkdir -p /docker-entrypoint-initdb.d
COPY ./initdb-postgis.sh /docker-entrypoint-initdb.d/postgis.sh

我想确保正确地解释了以下两个命令:

代码语言:javascript
复制
RUN mkdir -p /docker-entrypoint-initdb.d
COPY ./initdb-postgis.sh /docker-entrypoint-initdb.d/postgis.sh

RUN命令正在运行一个mkdir命令,这意味着当前目录将有一个名为:

代码语言:javascript
复制
/docker-entrypoint-initdb.d

在下一个命令(即复制命令)中,目录./initdb-postgis.sh的内容被复制到/docker-entrypoint-initdb.d/postgis.sh中,对吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-13 17:15:42

RUN cmd用于执行cmd命令,并将为您正在构建的映像创建并提交一个新层。因此,这些命令在正在构建的映像的上下文中运行。mkdir -p /docker-entrypoint-initdb.d将在图像根目录中创建一个新文件夹docker-entrypoint-initdb.dCOPY ./initdb-postgis.sh /docker-entrypoint-initdb.d/postgis.sh将文件initdb-postgis.sh (必须位于运行docker build command的同一级别上)复制到容器内的文件/docker-entrypoint-initdb.d/postgis.sh

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

https://stackoverflow.com/questions/32552037

复制
相关文章

相似问题

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