我正在学习Kubernetes。我正在尝试将等效概念从Kubernetes映射到Docker。例如:我有以下docker-compose.yml
db:
container_name: db
image: postgres:latest
ports:
- "5432:5432"
environment:
POSTGRES_PASSWORD: 1234
app:
container_name: app
build: .
dockerfile: Dockerfile
ports:
- "3000:3000"
volumes:
- ".:/webapp"
env_file:
- ./.env.docker_compose
links:
- db
这个docker-compose.yml
有两个组件:db和app。有两种理解方式。我不知道哪一个是真的,哪一个是错的。
请告诉我哪一个是真的。 Deployment
和Service
的问题相同。我如何映射到docker概念。
由于
答案 0 :(得分:1)
一个pod是一个或多个容器的组,你的docker-compose默认会模仿一个pod。 (所以你的第二个解释)
但是使用docker swarm mode,您可以确保这两个容器位于他们自己的" pod" (作为一个容器的一组)constraints
使用dockerfile v3,您可以使用例如placement(也见于docker service create
)
version: '3'
services:
db:
image: postgres
deploy:
placement:
constraints:
- node.role == manager
- engine.labels.operatingsystem == ubuntu 14.04