[英]Same phpmyadmin port for two docker containers
我想使用相同的 phpmyadmin 端口並僅為兩個不同的服務創建兩個不同的數據庫。 是否有可能? 我試過這個:
第一個服務的 docker-compose.yml
version: '3.8'
services:
accounting-software:
build:
context: .
dockerfile: Dockerfile
command: 'php artisan serve --host=0.0.0.0'
volumes:
- .:/app
ports:
- 8000:8000
depends_on:
- accounting_db
accounting_db:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: accounting_software
ports:
- "3308:3306"
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
restart: always
environment:
PMA_HOST: accounting_db
PMA_USER: root
PMA_PASSWORD: root
ports:
- "8080:80"
docker-compose.yml 用於第二個服務
version: '3.8'
services:
accounting-chat:
build:
context: .
dockerfile: Dockerfile
command: 'php artisan serve --host=0.0.0.0'
volumes:
- .:/app
ports:
- 8001:8000
depends_on:
- chat_db
chat_db:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: accounting_chat
ports:
- "3309:3306"
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
restart: always
environment:
PMA_HOST: chat_db
PMA_USER: root
PMA_PASSWORD: root
ports:
- "8080:80"
我收到以下錯誤:
來自守護進程的錯誤響應:驅動程序在端點 account-chat_phpmyadmin_1 上編程外部連接失敗(6bed4e2c149b0bf6ed3079f50984c4322cb4fce6c693c3b1c92e8f29229654a7):綁定:端口`080 已分配失敗。
讓我們看看兩個docker-compose
文件的最后docker-compose
行。 它們都有“8080:80”端口。 如果您需要運行兩個phpmyadmin
實例,您應該更改其中之一。 例如,將其中之一更改為“8081:80”,或者您可以運行一個實例。 由於您已更改聊天數據庫端口。
version: '3.8'
services:
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
restart: always
environment:
PMA_HOST: accounting_db
PMA_USER: root
PMA_PASSWORD: root
ports:
- "8080:80"
accounting-software:
build:
context: .
dockerfile: Dockerfile
command: 'php artisan serve --host=0.0.0.0'
volumes:
- .:/app
ports:
- 8000:8000
depends_on:
- accounting_db
accounting_db:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: accounting_software
ports:
- "3308:3306"
depends_on:
- phpmyadmin
accounting-chat:
build:
context: .
dockerfile: Dockerfile
command: 'php artisan serve --host=0.0.0.0'
volumes:
- .:/app
ports:
- 8001:8000
depends_on:
- chat_db
chat_db_2:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: accounting_chat
ports:
- "3309:3306"
depends_on:
- phpmyadmin
有關更多詳細信息,第一個端口是您的本地機器端口,第二個端口是用於容器。 由於您的機器上有一個唯一的可用端口,因此您不能在該端口上運行另一個實例,該端口上有一個服務。 它應該被殺死或更改為另一個端口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.