亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Docker容器連接外部Mysql的幾種方案

 更新時(shí)間:2023年06月27日 11:52:57   作者:liyinchi1988  
這篇文章主要給大家介紹了關(guān)于Docker容器連接外部Mysql的幾種方案,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

前言

在Linux Centos上面部署Docker容器,并且將原來(lái)的項(xiàng)目服務(wù)放到docker的某個(gè)鏡像中,啟動(dòng)服務(wù)號(hào)發(fā)現(xiàn)無(wú)法連接到容器所在宿主機(jī)的mysql數(shù)據(jù)庫(kù),但是現(xiàn)在項(xiàng)目服務(wù)需要連接mysql數(shù)據(jù)庫(kù)。

例如:SQLalchemy

# 初始化數(shù)據(jù)庫(kù)連接: TODO 參數(shù)化
engine = create_engine(
    f'mysql+mysqlconnector://{DB_USERNAME}:{DB_PASSWORD}@{DB_HOST}:{DB_PORT}/{DB_NAME}')
# 創(chuàng)建DBSession類(lèi)型:
DBSession = sessionmaker(bind=engine)
# 創(chuàng)建session對(duì)象:
session = DBSession()

但是在容器中項(xiàng)目localhost默認(rèn)的是docker容器這個(gè)虛擬主機(jī)的ip,而我在docker該鏡像容器中上面并沒(méi)有安裝mysql服務(wù),

方案一:

使用宿主機(jī)的ip地址,docker有自己的ip,宿主機(jī)所在的Centos服務(wù)器也有自己的ip,如果把項(xiàng)目訪問(wèn)IP改為宿主機(jī)的ip。

輸入ifconfig

替換上面的項(xiàng)目中訪問(wèn)mysql的地址即 localhost 替換好了之后啟動(dòng)容器。這是土辦法,但遇到ip變動(dòng)的window就不太可行。

方案二:

在docker配置文件yml中設(shè)置參數(shù)command

docker-compose.yml
version: '3'
services:
  mysql:
    restart: always
    image: mysql:5.7
    container_name: mysql
    command: --default-authentication-plugin=mysql_native_password #解決外部無(wú)法訪問(wèn)
    volumes:
      - ./mydir:/mydir
      - ./datadir:/var/lib/mysql
      - ./conf/my.cnf:/etc/my.cnf
      #      數(shù)據(jù)庫(kù)還原目錄 可將需要還原的sql文件放在這里
      - /docker/mysql/source:/docker-entrypoint-initdb.d
    environment:
      - MYSQL_ROOT_PASSWORD=password
      - TZ=Asia/Shanghai
    ports:
      - 3306:3306

方案三:

如果mysql是非docker容器化部署,可以進(jìn)行掛載外部mysql

docker run -p 3306:3306 --name mysql \
-v /usr/local/docker/mysql/conf:/etc/mysql \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

配置my.cnf信息

[mysqld]
  # 服務(wù)端字符集
  character-set-server=utf8
  collation_server = utf8_general_ci
  [client]
  # 客戶端字符集
  default-character-set=utf8

另有網(wǎng)友提供

找到my.cnf配置文件
注釋掉 bind-address = 127.0.0.1,
重啟mysql

總結(jié)

到此這篇關(guān)于Docker容器連接外部Mysql的幾種方案的文章就介紹到這了,更多相關(guān)Docker容器連接外部Mysql內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何在docker中運(yùn)行springboot項(xiàng)目過(guò)程圖解

    如何在docker中運(yùn)行springboot項(xiàng)目過(guò)程圖解

    這篇文章主要介紹了如何在docker中運(yùn)行springboot項(xiàng)目過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 在windows下的安裝Docker的教程

    在windows下的安裝Docker的教程

    這篇文章主要介紹了在windows下的安裝Docker的教程,注意只能是64的系統(tǒng),需要的朋友可以參考下
    2015-12-12
  • Docker使用數(shù)據(jù)容器的具體示例

    Docker使用數(shù)據(jù)容器的具體示例

    本文主要介紹了Docker使用數(shù)據(jù)容器的具體示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 詳解Docker中安裝配置Oracle數(shù)據(jù)庫(kù)

    詳解Docker中安裝配置Oracle數(shù)據(jù)庫(kù)

    本篇文章主要介紹了詳解Docker中安裝配置Oracle數(shù)據(jù)庫(kù),具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-04-04
  • docker自建GitLab倉(cāng)庫(kù)的實(shí)現(xiàn)

    docker自建GitLab倉(cāng)庫(kù)的實(shí)現(xiàn)

    Harbor是一個(gè)用于存儲(chǔ)和分發(fā)Docker鏡像的企業(yè)級(jí)Registry服務(wù)器,本文主要介紹了docker自建GitLab倉(cāng)庫(kù)的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-07-07
  • docker容器無(wú)法訪問(wèn)宿主機(jī)端口的解決

    docker容器無(wú)法訪問(wèn)宿主機(jī)端口的解決

    這篇文章主要介紹了docker容器無(wú)法訪問(wèn)宿主機(jī)端口的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • 解決docker啟動(dòng)容器錯(cuò)誤:docker:Error response from daemon:OCI runtime create failed

    解決docker啟動(dòng)容器錯(cuò)誤:docker:Error response from dae

    這篇文章主要介紹了解決docker啟動(dòng)容器錯(cuò)誤:docker:Error response from daemon:OCI runtime create failed問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Docker.v19安裝和配置Docker Compose編排工具的方法

    Docker.v19安裝和配置Docker Compose編排工具的方法

    這篇文章主要介紹了安裝Docker.v19和配置Docker Compose編排工具的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • 詳解Docker 容器使用 cgroups 限制資源使用

    詳解Docker 容器使用 cgroups 限制資源使用

    本篇文章主要介紹了Docker 容器使用 cgroups 限制資源使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-01-01
  • 使用Docker容器在Linux上部署MySQL方式

    使用Docker容器在Linux上部署MySQL方式

    本文詳細(xì)介紹了如何在Linux上使用Docker部署MySQL服務(wù)器,包括下載鏡像、啟動(dòng)容器、連接到服務(wù)器、停止和刪除容器,以及升級(jí)服務(wù)器的步驟
    2025-02-02

最新評(píng)論