Written by , Updated on July 3, 2020

Docker-compose is an useful utility for managing multi-container docker applications. In our previous tutorial, I had discussed about the keep persistent data of MySQL docker containers using Docker volumes. Once you launched a MySQL container can be connect via terminal directly. But the phpMyAdmin lovers may need the web interface for managing databases.

In this tutorial, you will learn to launch MySQL Docker containers along with phpMyAdmin docker container using docker-compose command.

Prerequisites

This guide assumes that you have already done the followings:

  1. You have installed Docker service on your System
  2. Also, have configured docker-compose utility on your system

How to Create MySQL with phpMyAdmin Docker Container

phpMyAdmin is an most popular web application for managing MySQL database servers. In this tutorial, we just use an example of Docker container for MySQL and phpMyAdmin.

So first create a docker-compose.yml file on your system with the following content.

docker-compose.yml:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

version: ‘3’

services:

  db:

    image: mysql:5.7

    container_name: db

    environment:

      MYSQL_ROOT_PASSWORD: my_secret_password

      MYSQL_DATABASE: app_db

      MYSQL_USER: db_user

      MYSQL_PASSWORD: db_user_pass

    ports:

       “6033:3306”

    volumes:

       dbdata:/var/lib/mysql

  phpmyadmin:

    image: phpmyadmin/phpmyadmin

    container_name: pma

    links:

       db

    environment:

      PMA_HOST: db

      PMA_PORT: 3306

      PMA_ARBITRARY: 1

    restart: always

    ports:

       8081:80

volumes:

  dbdata:

Save you file and close it.

Next, run the following command to create Docker containers using the docker-compose.yml configuration file.

docker-compose up -d

The above command will launch two Docker containers, one for MySQL database server and one for phpMyAdmin. Also a data volume will be created, which is attached with MySQL container to make data persistent.

Now, access the phpMyAdmin using the web browser. I am running this example on my local machine. So used host as localhost with port 8081 defined in docker compose configuration. You need to change localhost with your server ip address to access it remotely.

http://localhost:8081

Docker-compose for MySQL with phpMyAdmin Docker docker-compose General Articles mysql phpMyAdmin

Conclusion

In this tutorial, you have learned to launch a MySQL docker container with a phpMyAdmin. Which help help you to manage databases on MySQL docker container.