日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

在Docker中,我們可以通過(guò)選擇不同的網(wǎng)絡(luò)來(lái)為容器提供網(wǎng)絡(luò)連接。令人驚訝的是,即使我們從未明確設(shè)置過(guò)任何網(wǎng)絡(luò),Docker仍然會(huì)為容器分配默認(rèn)網(wǎng)絡(luò)。這個(gè)問(wèn)題困擾著許多開(kāi)發(fā)者,因?yàn)樗麄兛赡軙?huì)遇到一些與網(wǎng)絡(luò)配置相關(guān)的問(wèn)題。在本文中,我們將通過(guò)php小編柚子的幫助,詳細(xì)解釋為什么Docker容器會(huì)有默認(rèn)網(wǎng)絡(luò),以及如何在不同網(wǎng)絡(luò)之間進(jìn)行選擇。

問(wèn)題內(nèi)容

我在為 go 服務(wù)設(shè)置 docker 配置時(shí)遇到了麻煩。以下是我的設(shè)置概述

go_binary(
    name = "main_arm64",
    embed = [":server_lib"],
    goarch = "arm64",
    goos = "linux",
    visibility = ["http://visibility:public"],
)

container_image(
    name = "ww_server_image",
    base = "@go_image_static_arm64//image",
    entrypoint = ["/main_arm64"],
    files = [":main_arm64"],
    ports = [
        "8080",
        "3306",
    ],
)

登錄后復(fù)制

我有一個(gè)在 http://localhost:8080 上運(yùn)行的 graphql playgroud (http),盡管端口據(jù)稱已公開(kāi),但我無(wú)法訪問(wèn) playground ui。

我想做的是:

    能夠訪問(wèn) graphql playground 以及容器內(nèi)其他端口上運(yùn)行的任何其他 api
    能夠從我的 dockerized go 應(yīng)用向單獨(dú)的 mysql 容器發(fā)出請(qǐng)求(我不知道如何將它們與 rules_docker 放在同一網(wǎng)絡(luò)上)。
    docker exec -it ... /bin/bash 到我的 docker 容器中(這不起作用,因?yàn)槲窗惭b bash,但我不知道如何通過(guò)此 container_image 命令安裝 bash)
    錯(cuò)誤如下:
oci runtime exec failed: exec failed: unable to start container process: exec: "bash": executable file not found in $path: unknown

登錄后復(fù)制

如果我獲取生成的 docker 鏡像 id 并運(yùn)行 docker run -p 8080:8080 image_id,我可以訪問(wèn) graphql playground,但無(wú)法與 mysql 容器通信

如果我按如下方式更改網(wǎng)絡(luò): docker run --network=host -p 8080:8080 image_id dockerized go 應(yīng)用程序可以成功與 mysql 容器通信,但隨后 graphql playground 變得無(wú)法訪問(wèn)。僅當(dāng)我維護(hù) --network=bridge 時(shí),graphql 游樂(lè)場(chǎng)才可訪問(wèn)。我不確定為什么 mysql 也不使用 bridge ,因?yàn)槲以趩?dòng)它時(shí)從未指定網(wǎng)絡(luò)。這就是我獲得 mysql 容器的方式

docker run -p 3306:3306 --name my-db -e MYSQL_ROOT_PASSWORD=testing -d mysql:8.0.31

登錄后復(fù)制

解決方法

答案在這里:
無(wú)法使用 go 和 docker 連接到 mysql 服務(wù)器 – 撥號(hào) tcp 127.0.0.1:3306: connect: 連接被拒絕

事實(shí)證明我需要使用以下地址實(shí)際訪問(wèn) mysql,因?yàn)?mac 上的 docker 使用 linux vm:

docker.for.mac.localhost:3306

登錄后復(fù)制

分享到:
標(biāo)簽:overflow
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定