首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将容器网络放入kubernetes YAML文件

如何将容器网络放入kubernetes YAML文件
EN

Stack Overflow用户
提问于 2017-09-13 15:44:47
回答 1查看 519关注 0票数 1

在码头,我创建了网络。

代码语言:javascript
复制
docker network create hello-rails

然后,我有了mySQL,它连接到这个网络

代码语言:javascript
复制
docker run -p 3306 -d --network=hello-rails --network-alias=db -e MYSQL_ROOT_PASSWORD=password --name hello-rails-db mysql

此外,我还有rails服务器,它也依赖于这个网络。

代码语言:javascript
复制
docker run -it -p 3000:3000 --network=hello-rails -e MYSQL_USER=root -e MYSQL_PASSWORD=password -e MYSQL_HOST=db --name hello-rails benjamincaldwell/hello-docker-rails:latest

我想用YAML文件在kubernetes上为这两个容器编写部署。但我不知道,如何将网络放入containers文件中。你有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-13 16:09:23

在Kubernetes中,您可以通过创建两个服务来解决这个问题。

MySQL服务将如下所示:

代码语言:javascript
复制
kind: Service
apiVersion: v1
metadata:
  name: mysql
spec:
  selector:
    app: mysql
  ports:
  - port: 3306

在rails服务器中,您可以通过使用MySQL DNS名称或使用MYSQL_SERVICE_HOSTMYSQL_SERVICE_PORT环境变量来访问mysql服务。不需要像在Docker中那样链接容器或指定网络。

您的Rails服务将如下所示:

代码语言:javascript
复制
kind: Service
apiVersion: v1
metadata:
  name: rails
spec:
  type: LoadBalancer
  selector:
    app: rails
  ports:
  - port: 3000

请注意type: LoadBalancer,它指定此服务将发布到外部世界。根据运行Kubernetes的位置,公共IP地址将自动分配给该服务。

有关更多信息,请查看服务文件

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

https://stackoverflow.com/questions/46201793

复制
相关文章

相似问题

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