欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Docker中如何配置網(wǎng)絡(luò)并訪問互聯(lián)網(wǎng)

 更新時間:2024年01月09日 15:37:27   作者:醉一心  
這篇文章主要介紹了在Docker中如何配置網(wǎng)絡(luò)并訪問互聯(lián)網(wǎng)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Docker是一個流行的容器化平臺,可以幫助用戶輕松地創(chuàng)建、部署和運(yùn)行應(yīng)用程序。

在使用Docker時,網(wǎng)絡(luò)配置是一個很重要的問題。

本文將介紹如何在Docker中配置網(wǎng)絡(luò),并訪問互聯(lián)網(wǎng)。

一、配置Docker鏡像源

在Docker中,鏡像源是一個重要的組成部分,因?yàn)樗梢宰屇焖俚叵螺d和安裝Docker鏡像。

以下是如何配置Docker鏡像源的步驟:

1.執(zhí)行以下命令,查看是否在 docker.service 文件中配置過鏡像地址。

systemctl cat docker | grep '\-\-registry\-mirror'

如果該命令有輸出,那么請執(zhí)行 $ systemctl cat docker 查看 ExecStart= 出現(xiàn)的位置,修改對應(yīng)的文件內(nèi)容去掉 --registry-mirror 參數(shù)及其值,并按接下來的步驟進(jìn)行配置。

2.如果以上命令沒有任何輸出,那么就可以在 /etc/docker/daemon.json 中寫入如下內(nèi)容(如果文件不存在請新建該文件):

{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}

注意,一定要保證該文件符合 json 規(guī)范,否則 Docker 將不能啟動。

之后重新啟動服務(wù)。

sudo systemctl daemon-reloadsudo systemctl restart docker

二、配置Docker容器網(wǎng)絡(luò)

以下是如何配置Docker容器網(wǎng)絡(luò)的步驟:

首先,使用docker pull命令拉取CentOS鏡像。

docker pull centos

然后,使用docker run命令啟動CentOS容器,并進(jìn)入容器的命令行界面。

docker run -it centos /bin/bash

接下來,使用vi命令編輯/etc/resolv.conf文件,并將nameserver行更改為您想要使用的DNS服務(wù)器的IP地址。

vi /etc/resolv.conf
nameserver 114.114.114.114
nameserver 114.114.115.115

保存并關(guān)閉文件,然后退出編輯器。

重新啟動網(wǎng)絡(luò)服務(wù)以使更改生效。

bashCopy code
systemctl restart network

如果出現(xiàn)了下述問題:

[root@18f25a9f1bf3 ~]# systemctl restart network
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down

您需要通過此命令啟動您的容器以啟用 systemd。

docker run -d --privileged 鏡像名稱 /usr/sbin/init

其中,--privileged選項(xiàng)允許容器中的進(jìn)程擁有訪問主機(jī)的所有權(quán)限,鏡像名稱 為要啟動的鏡像名稱。

執(zhí)行完該命令后,會啟動一個新容器,并進(jìn)入容器的命令行界面。

此時可以使用管理員權(quán)限執(zhí)行命令。

-d是后臺運(yùn)行。

可以使用docker exec命令進(jìn)入正在運(yùn)行的容器并以root用戶身份運(yùn)行shell:

docker exec -u 0 -it <container-id> /bin/bash

其中,-u 0表示以root用戶身份進(jìn)入容器,-it表示交互式進(jìn)入容器的終端。

三、解決Docker容器網(wǎng)絡(luò)訪問問題

Docker容器訪問互聯(lián)網(wǎng),一直通過--net=host參數(shù)間接實(shí)現(xiàn)。

該方式存在弊端,因?yàn)樵撃J浇肈ocker容器的網(wǎng)絡(luò)隔離。

容器共享宿主機(jī)的網(wǎng)絡(luò)命名空間,直接暴露在公共網(wǎng)絡(luò)中,即容器和宿主機(jī)具有相同的IP地址。

而使用橋接網(wǎng)絡(luò)模式,可以避免這種問題,并且更加安全。

方法一:啟用宿主機(jī)路由

啟用命令:

宿主機(jī)的IP路由轉(zhuǎn)發(fā)功能一定要打開,否則所創(chuàng)建的容器無法聯(lián)網(wǎng)!容器run后運(yùn)行下面命令也有效。墻裂推薦。

echo 1 > /proc/sys/net/ipv4/ip_forward

啟用命令后,可以通過docker run命令加上--net=host參數(shù)使用Docker容器。

docker run --privileged -tid -p 8000:8000 -p 8088:8088 -p 8042:8042 -p 50070:50070 --net=host 鏡像名稱

注意:

在使用--net=host參數(shù)時,Docker容器將使用宿主機(jī)的網(wǎng)絡(luò)命名空間,容器中的進(jìn)程直接暴露在公共網(wǎng)絡(luò)中,具有相同的IP地址,因此有安全風(fēng)險(xiǎn)。

方法二:使用自定義網(wǎng)絡(luò)

Docker中的自定義網(wǎng)絡(luò),提供了一種更安全的方式來管理容器間的通信,即使沒有--net=host參數(shù),也可以使容器聯(lián)網(wǎng)。

自定義網(wǎng)絡(luò)是一種Docker內(nèi)置的網(wǎng)絡(luò)驅(qū)動程序,可以創(chuàng)建一個本地或遠(yuǎn)程的虛擬網(wǎng)絡(luò),讓容器可以使用虛擬網(wǎng)絡(luò)中的IP地址進(jìn)行通信。

以下是使用自定義網(wǎng)絡(luò)的方法。

創(chuàng)建自定義網(wǎng)絡(luò)

docker network create my_network

啟動容器,使用--network參數(shù)指定要使用的網(wǎng)絡(luò)。

docker run --name container1 --network=my_network -tid busybox
docker run --name container2 --network=my_network -tid busybox

查看網(wǎng)絡(luò)連接情況

docker network inspect my_network

以上命令將顯示虛擬網(wǎng)絡(luò)的詳細(xì)信息,包括網(wǎng)絡(luò)的名稱、驅(qū)動程序、子網(wǎng)等。

總結(jié)

通過以上兩種方法可以解決Docker容器網(wǎng)絡(luò)訪問問題。

這些僅為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker下Tomcat容器中使用Mysql的方法

    Docker下Tomcat容器中使用Mysql的方法

    這篇文章主要介紹了Docker下Tomcat容器中使用Mysql的方法,需要的朋友可以參考下
    2018-07-07
  • docker部署nginx訪問宿主機(jī)服務(wù)并使用緩存的操作方法

    docker部署nginx訪問宿主機(jī)服務(wù)并使用緩存的操作方法

    這篇文章主要介紹了docker部署nginx訪問宿主機(jī)服務(wù)并使用緩存的操作方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2024-04-04
  • Vue.js中的watch屬性詳解

    Vue.js中的watch屬性詳解

    在Vue.js中,watch屬性是一種非常重要的屬性,它可以監(jiān)聽Vue實(shí)例中指定的數(shù)據(jù)變化,并在數(shù)據(jù)發(fā)生變化時執(zhí)行相應(yīng)的操作,本文將對 Vue.js中的watch屬性進(jìn)行詳細(xì)的介紹,并附上相關(guān)的代碼示例,需要的朋友可以參考下
    2023-06-06
  • docker overlay實(shí)現(xiàn)跨主機(jī)的容器互通的方法

    docker overlay實(shí)現(xiàn)跨主機(jī)的容器互通的方法

    這篇文章主要介紹了docker overlay實(shí)現(xiàn)跨主機(jī)的容器互通,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • docker實(shí)踐之容器的導(dǎo)入與導(dǎo)出

    docker實(shí)踐之容器的導(dǎo)入與導(dǎo)出

    Docker技術(shù)為IT界帶來了巨大的改變,它使得云服務(wù)可以用來共享應(yīng)用和工作流程自動化,使得應(yīng)用可以用組件快速組合,消除了開發(fā)、品質(zhì)保證、產(chǎn)品環(huán)境間的摩擦。這篇文章我們將詳細(xì)的介紹docker容器的導(dǎo)入與導(dǎo)出,感興趣的朋友們下面來一起看看吧。
    2016-10-10
  • 詳解Docker Swarm 在持續(xù)集成測試中的應(yīng)用

    詳解Docker Swarm 在持續(xù)集成測試中的應(yīng)用

    本文主要介紹如何利用 Docker Swarm 集群功能和 Selenium Grid 腳本分發(fā)功能,來搭建一個可以動態(tài)擴(kuò)容的 Selenium 自動化腳本執(zhí)行環(huán)境,感興趣的小伙伴們可以參考一下
    2018-10-10
  • 基于Docker搭建ELK 日志系統(tǒng)的方法

    基于Docker搭建ELK 日志系統(tǒng)的方法

    Beats,它是一個輕量級的日志收集處理工具(Agent),占用資源少,適合于在各個服務(wù)器上搜集日志后傳輸給Logstash,官方也推薦此工具,本文重點(diǎn)給大家介紹Docker 搭建 ELK 日志系統(tǒng)的方法,感興趣的朋友一起看看吧
    2021-05-05
  • 在 Docker 中查看日志的方法

    在 Docker 中查看日志的方法

    文章介紹了如何在Docker中查看容器的日志,包括使用dockerlogs命令的基本方法、實(shí)時查看日志、查看特定時間范圍內(nèi)的日志以及配置日志驅(qū)動程序,還提到了通過docker-compose查看多個服務(wù)的日志,并討論了日志輪換和集成日志聚合工具的高級技巧,感興趣的朋友一起看看吧
    2025-03-03
  • 單機(jī)docker-compose部署minio過程

    單機(jī)docker-compose部署minio過程

    簡述通過Docker-Compose在單機(jī)上掛載多硬盤實(shí)現(xiàn)MinIO多副本部署的方法,包括配置docker-compose.yaml和nginx.conf等關(guān)鍵步驟,適合服務(wù)器資源有限的場景
    2024-10-10
  • Docker上部署mysql8主從復(fù)制的實(shí)現(xiàn)

    Docker上部署mysql8主從復(fù)制的實(shí)現(xiàn)

    本文主要介紹了Docker上部署mysql8主從復(fù)制的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08

最新評論