Dockerにて別の2つのdocker-compose.yml にてネットワークを共有する

先に作ったmysqlをphpmyadminで見に行くとき

version: "3"

networks:
backend:
driver: bridge

volumes:
mysql-database:
driver: local

# Database
mysql:
image: mariadb/server:10.4
container_name: testdb_container
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: testdb
MYSQL_USER: testdb
MYSQL_PASSWORD: password
volumes:
- ./database:/var/lib/mysql
ports:
- 51306:3306
networks:
- backend

上記を起動

docker-compose up -d

ネットワーク一覧を確認

docker network ls

ここに表示されたネットワークを指定

version: "3"

networks:
# 以下1行目で他プロセスのネットワークを指定する
testdbname_backend:
external: true

services:
phpmyadmin:
image: phpmyadmin/phpmyadmin
environment:
- PMA_ARBITRARY=1
# ネットワーク指定に成功していればコンテナ名だけでいける
- PMA_HOSTS=testdb_container
- PMA_USER=testdb
- PMA_PASSWORD=password
restart: always
ports:
- "3000:80"
volumes:
- ./phpmyadmin/sessions:/sessions

# 他のプロセスのネットワークが立ち上がっていればこれでいける
networks:
- testdbname_backend