首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在docker容器中运行K3S服务器,并在另一个docker容器中连接K3S代理

在docker容器中运行K3S服务器,并在另一个docker容器中连接K3S代理
EN

Stack Overflow用户
提问于 2021-07-19 22:40:11
回答 1查看 418关注 0票数 0

我知道k3d可以通过k3d cluster create myname --token MYTOKEN --agents 1神奇地做到这一点,但我正在试图弄清楚如何“手动”完成最简单的版本。我想创建一个类似如下的服务器:

代码语言:javascript
复制
 docker run -e K3S_TOKEN=MYTOKEN rancher/k3s:latest server

并连接一个代理,如下所示:

代码语言:javascript
复制
 docker run -e K3S_TOKEN=MYTOKEN -e K3S_URL=https://localhost:6443 rancher/k3s:latest agent

有人知道这里需要转发哪些端口吗?我该如何设置它?我尝试过的几乎所有情况下,代理都会抱怨端口6444已在使用中,即使我使用任何--no-deploy servicelb --disable-agent --no-deploy traefik组合尽可能多地禁用服务器也是如此

请随意禁用除了服务器和代理之外的所有内容,我正在尝试让这件事变得非常简单,但目前只是碰壁而已。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-19 23:50:50

容器必须“看到”彼此。Docker默认隔离网络,因此代理容器中的"localhost“就是代理容器本身。

可能的解决方案:使用--net=host运行两个容器而不进行网络隔离,使用--port将服务器的API端口映射到主机,并在代理容器中使用主机IP或使用docker-compose。

这里描述了一个docker-compose的工作示例:https://www.trion.de/news/2019/08/28/kubernetes-in-docker-mit-k3s.html

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

https://stackoverflow.com/questions/68442393

复制
相关文章

相似问题

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