Linux 在哪里把东西放在docker集装箱里?
我已经使用dockerized应用程序有一段时间了,但我仍然无法确定是否有一种适当的方法来构造容器中的代码 几个不同的包使用几种方法:Linux 在哪里把东西放在docker集装箱里?,linux,docker,Linux,Docker,我已经使用dockerized应用程序有一段时间了,但我仍然无法确定是否有一种适当的方法来构造容器中的代码 几个不同的包使用几种方法: Postgres遵循更传统的方式,将数据存储在/var/lib/postgresql/data Redis不太关心unix目录结构,而是将持久性数据放入/data文件夹,但在配置方面,它遵循以下原则:/usr/local/etc/Redis/Redis.conf Node鼓励将应用程序数据放入/usr/src/app中,当使用Dock compose时,他们提
- Postgres遵循更传统的方式,将数据存储在
/var/lib/postgresql/data
- Redis不太关心unix目录结构,而是将持久性数据放入
文件夹,但在配置方面,它遵循以下原则:/data
/usr/local/etc/Redis/Redis.conf
- Node鼓励将应用程序数据放入
中,当使用Dock compose时,他们提到/usr/src/app
什么/home/Node/app
- PHP为CLI应用程序和web应用程序做了类似的事情,它们与通常的
/var/www/html
/
中,其他人则将其放入/usr/local/bin
我希望你能理解我的困惑
容器应该运行它们所代表的单个主进程,当这个进程停止时,它们就会死亡。像成熟的linux系统一样威胁它,并坚持推荐的结构化方式,这合理吗?如果是这样,我应该用
/bin
、/usr/bin
或/usr/local/bin
来编写shell脚本,还是用/var/lib/app
、/lib/app
来编写应用程序代码?或者真相在和/entrypoint.sh
脚本之间吗?在我的评论之前,我不是专家,但我已经使用Docker好几年了。我一直只是使用我正在使用的映像的指导原则,根据操作系统的风格可能会有所不同。我不知道Docker自己制定了什么样的通用指南,我通常也是这么做的。但我发现自己经常创建新的docker图像和Dockerzing(这是一个词吗?)许多应用程序,而且几乎每次我都会犹豫在哪里放置entrypoint脚本,在哪里放置应用程序代码等等。我经常需要回顾我在上一个项目中是如何做到这一点的,因为在我的脑海中没有既定的习惯或准则。在我的评论之前,我不是专家,但我已经使用Docker好几年了。我一直只是使用我正在使用的映像的指导原则,根据操作系统的风格可能会有所不同。我不知道Docker自己制定了什么样的通用指南,我通常也是这么做的。但我发现自己经常创建新的docker图像和Dockerzing(这是一个词吗?)许多应用程序,而且几乎每次我都会犹豫在哪里放置entrypoint脚本,在哪里放置应用程序代码等等。我经常需要回顾我在上一个项目中是如何做到这一点的,因为在我的脑海中没有既定的习惯或指导方针。