如何阅读/理解docker-compose.yml以及;标准开放:真实tty:真实;组件是什么?
学习处理这些问题的课程;实际的细节与课程无关,但我通常有兴趣尝试去理解一些事情 我有一个docker-compose.yml文件,我可以“调用”或“启动”。该文件包含以下信息:如何阅读/理解docker-compose.yml以及;标准开放:真实tty:真实;组件是什么?,docker-compose,yaml,Docker Compose,Yaml,学习处理这些问题的课程;实际的细节与课程无关,但我通常有兴趣尝试去理解一些事情 我有一个docker-compose.yml文件,我可以“调用”或“启动”。该文件包含以下信息: services: redis: image: redis:latest expose: - "6379" sample0395: image: sample0395/base:latest stdin_open: true tty: true exp
services:
redis:
image: redis:latest
expose:
- "6379"
sample0395:
image: sample0395/base:latest
stdin_open: true
tty: true
expose:
- "8888"
ports:
- "8888:8888"
据我所知,仅基于如下所示的层次结构:
- redis和sample0395是“服务”
- redis:latest和sample0395/base:latest是图像名称:标记组合
- expose和ports:列出端口(不确定两者之间的区别或区别的意义)
- 我不知道stdin_open或tty做什么,似乎也无法通过谷歌获得理解
tty
和stdinu open
分别类似于docker run
命令的-t
和-i
参数
当您需要处理Docker容器外部的项目时,可以使用stdin\u open
当需要处理Docker容器内的项目时,可以使用tty
要测试这一点,请尝试使用tty
或stdin\u open
运行docker compose up
,但不能同时使用这两种方法,您会发现使用stdin\u open
您不会登录到集装箱码头,而使用tty
则相反
至于您关于
expose
和ports
之间差异的问题,可以找到答案。tty
和stdinu open
分别类似于-t
和-i
docker run命令的参数
当您需要处理Docker容器外部的项目时,可以使用stdin\u open
当需要处理Docker容器内的项目时,可以使用tty
要测试这一点,请尝试使用tty
或stdin\u open
运行docker compose up
,但不能同时使用这两种方法,您会发现使用stdin\u open
您不会登录到集装箱码头,而使用tty
则相反
关于暴露
和端口
之间的区别,可以找到答案