docker和k8s-coredns內(nèi)部域名解析方式
問題
當(dāng)我在k8s集群中訪問私有代碼服務(wù)的時(shí)候域名無法解析;
報(bào)錯(cuò)如下:
Could not resolve host: git.XXX
在docker環(huán)境內(nèi)部,當(dāng)使用CURL來訪問局域網(wǎng)內(nèi)的另外一臺(tái)服務(wù)器的時(shí)候會(huì)出現(xiàn)域名;
類似的錯(cuò)誤如下:
cURL error 6: Could not resolve host
Couldnt resolve host。 The given remote host was not resolved
解決思路
1、針對(duì)docker
原因分析:
- Docker容器無法解析局域網(wǎng)內(nèi)的域名,就算本地主機(jī)的hosts配置了域名映射也是不行的
- Docker環(huán)境不同于wamp或者Xampp,對(duì)于局域網(wǎng)內(nèi)的域名解析,Docker需要到docker內(nèi)部配置hosts文件
解決步驟:
進(jìn)入docker容器后,在docker文件中,配置域名解析;
- 1: docker exec -it my_web /bin/bash
- 2: vi /etc/hosts
- 3:添加域名解析規(guī)則
2、針對(duì)k8s
我們可以通過在 CoreDNS 中添加自定義域名解析來解決這個(gè)問題(如果你的域名是外網(wǎng)可以正常解析的就不會(huì)出現(xiàn)這個(gè)問題了):
kubectl edit cm coredns -n kube-system
通過上面命令修改增加host配置,修改后 Esc :wq! 保存退出
修改完成后,稍等片刻,CoreDNS 就會(huì)自動(dòng)熱加載,我們就可以在集群內(nèi)訪問我們自定義的域名了
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker-compose使用volumes注意項(xiàng)介紹
這篇文章主要介紹了docker-compose使用volumes注意項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03Docker安裝配置MySQL的實(shí)現(xiàn)步驟
MySQL 是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在 WEB 應(yīng)用方面 MySQL 是最好的 RDBMS(Relational Database Management System:關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。在本教程中,會(huì)帶大家正確安裝配置MySQL在Docker2021-11-11Docker上傳鏡像至私有倉(cāng)庫(kù)的方法示例
這篇文章主要介紹了Docker上傳鏡像至私有倉(cāng)庫(kù)的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01Ubuntu24.04LTS在線安裝Docker引擎的詳細(xì)過程
本文介紹了在Ubuntu 24.04 LTS系統(tǒng)上安裝Docker引擎的步驟,包括卸載舊版本、設(shè)置Docker APT倉(cāng)庫(kù)、安裝最新版或指定版本的Docker,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-11-11Docker容器host與none網(wǎng)絡(luò)的使用
本文主要介紹了Docker容器host與none網(wǎng)絡(luò)的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧<BR>2022-06-06Docker 容器全部停止的幾種方法實(shí)現(xiàn)
我們需要停止所有的容器時(shí),可以使用一些命令來實(shí)現(xiàn),本文主要介紹了Docker 容器全部停止的幾種方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08Docker安裝MySQL并使用Navicat連接的使用示例
在Docker里運(yùn)行MySQL的方式還是很方便的,本文主要介紹了Docker安裝MySQL并使用Navicat連接的使用示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10docker-compose集成Jenkins部署,打包,發(fā)布方式
在Docker環(huán)境中安裝配置Jenkins,需掛載JDK、Maven等至容器指定路徑,設(shè)置國(guó)內(nèi)鏡像提升下載速度,并添加插件與憑據(jù)完成環(huán)境配置2024-10-10Gitlab-runner+Docker實(shí)現(xiàn)自動(dòng)部署SpringBoot項(xiàng)目
這篇文章主要介紹了Gitlab-runner+Docker自動(dòng)部署SpringBoot項(xiàng)目,我們的主要流程就是通過Gitlab管理代碼,然后利用Gitlab自帶的Gitlab?CI/CD功能與GitlabRunner進(jìn)行注冊(cè)綁定,需要的朋友可以參考下2022-04-04