>데이터 베이스 >MySQL 튜토리얼 >Docker의 다른 컨테이너에서 MySQL 컨테이너에 안전하게 연결하는 방법은 무엇입니까?

Docker의 다른 컨테이너에서 MySQL 컨테이너에 안전하게 연결하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-26 10:16:291075검색

How to Securely Connect to a MySQL Container from Another Container in Docker?

다른 컨테이너에서 MySQL 컨테이너에 액세스

도커화된 환경에서는 별도의 컨테이너에서 호스팅되는 데이터베이스에 연결하는 것이 어려울 수 있습니다. 데이터베이스 연결을 위해 컨테이너의 IP 주소를 사용하는 것은 간단해 보일 수 있지만 잠재적인 위험과 제한 사항이 있습니다.

다행히도 Docker는 사용자 정의 네트워크를 통해 더욱 강력한 솔루션을 제공합니다. 네트워크를 생성하고 여기에 MySQL과 클라이언트 컨테이너를 모두 연결하면 네트워크 간에 안정적이고 안전한 통신을 구축할 수 있습니다.

1단계: 네트워크 생성

실행 다음 명령을 사용하여 "my_network"라는 사용자 정의 네트워크를 생성합니다.

docker network create my_network

2단계: MySQL 컨테이너 시작

생성된 네트워크 내에서 MySQL 컨테이너를 시작합니다.

docker run -d --name mysql_container --network my_network my_mysql_image

3단계: 클라이언트 컨테이너 시작

마찬가지로 동일한 네트워크에서 클라이언트 컨테이너를 시작합니다.

docker run -d --name php_container --network my_network my_php_image

4단계: 데이터베이스 연결 스크립트

클라이언트 컨테이너 내에서 MySQL 컨테이너의 호스트 이름을 사용하여 데이터베이스 연결을 설정할 수 있습니다.

<code class="php">$mysqli = new mysqli("mysql_container", "mattia", "prova", "prova");</code>

사용자 사용의 이점 -정의된 네트워크

사용자 정의 네트워크를 활용하면 여러 가지 이점이 있습니다.

  • 호스트 이름 확인: 네트워크의 각 컨테이너는 컨테이너 이름을 사용하여 통신할 수 있습니다.
  • 네트워크 격리: 기본적으로 서로 다른 네트워크의 컨테이너는 격리되어 통신할 수 없습니다.
  • 보안: 사용자 정의 네트워크는 세분화된 보안을 허용합니다. 액세스 제어 및 격리를 통해 잠재적인 보안 취약점을 줄입니다.

위 내용은 Docker의 다른 컨테이너에서 MySQL 컨테이너에 안전하게 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.