如何解决Dockerfile与Shell
我正在尝试创建一个安装了sqlite和postgreSQL的ubuntu映像。如果我正在做的是最佳做法,我会感到困惑。
我发现我可以构建一个非常简单的dockerfile,并通过shell(使用docker run -it [image_name]
)安装sqlite和postgresql。
所以我将有一个像这样的dockerfile
FROM ubuntu:18.04
ENV TZ=[time zone data]
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
并运行docker build some_container:1.0 .
,然后运行docker run -it some_container:1.0
,这将给我一个外壳,然后在外壳中运行诸如apt-get install postgres-12
之类的安装命令。
这是建立图像的正确方法吗?如果这是一个好方法,我会感到困惑,因为许多在线资料并不使用shell,而是使用dockerfile来指定要安装和运行的内容。
使用dockerfile相比通过shell编辑图像有什么好处?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。