Hướng dẫn này nhằm mục đích thiết lập và chạy một nền tảng đầy đủ chức năng với MySQL Community Edition và phpMyAdmin hoạt động trên Docker. Sau đây là phần hướng dẫn cài đặt MySQL và phpMyAdmin trên Docker.
MySQL Community Edition là phiên bản có thể tải xuống miễn phí của cơ sở dữ liệu nguồn mở phổ biến nhất thế giới. Dựa theo giấy phép GPL và được hỗ trợ bởi một cộng đồng các nhà phát triển mã nguồn mở.
PhpMyAdmin là một công cụ phần mềm miễn phí viết bằng ngôn ngữ PHP nhằm cung cấp một giao diện để quản lý cơ sở dữ liệu MySQL hoặc MariaDB.
Docker là một nền tảng phần mềm được thiết kế để giúp tạo, triển khai và chạy các ứng dụng dễ dàng hơn.
Tài liệu tham khảo:
- Get Started with Docker
- https://hub.docker.com/_/mysql
- https://hub.docker.com/r/phpmyadmin/phpmyadmin/
1. Khởi tạo Docker Network
Đầu tiên cúng ta sẽ tạo một Docker Network với tên sql nhằm mục đích khởi chạy Docker Container MySQL và phpMyAdmin trong network này.
1 |
docker network create sql |
Tiếp sau chúng ta sẽ bắt đầu khởi tạo MySQL Container và phpMyAdmin Container.
2. Khởi tạo MySQL Container
Thực hiện lần lượt các lệnh sau đây sẽ khởi tạo MySQL Container trên Docker. Trước tiên, hãy tạo một thư mục dùng để lưu dữ liệu rồi sau đó chạy lệnh khởi tạo MySQL Container:
1 2 3 4 5 |
# Khởi tạo thư mục chứa dữ liệu mkdir -p /opt/mysql # Khởi tạo MySQL container docker run -d --name mysql --network sql -e MYSQL_ROOT_PASSWORD="12345" -v /opt/mysql:/var/lib/mysql -p 3306:3306 mysql:8.0.21 |
Trong đó:
- –name mysql: tên của container
- –network sql: đặt container này trong network tên sql
- -e MYSQL_ROOT_PASSWORD=123: thiết lập mật khẩu cho tài khoản root
- -v /opt/mysql:/var/lib/mysql : chia sẻ dữ liệu giữa hệ thống tập tin máy chủ và container
- -p 3306:3306: kết nối cổng container với cổng host
Sau khi khởi tạo MySQL Container trên Docker, chạy lệnh sau đây kiểm tra xem đã khởi tạo thành công chưa:
1 2 3 |
system@sv-db:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 419aa528502e mysql:8.0.21 "docker-entrypoint.s…" 36 minutes ago Up 36 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql |
3. Khởi tạo phpMyAdmin Container
Thực hiện lần lượt các lệnh sau đây sẽ khởi tạo phpMyAdmin Container trên Docker. Để phpMyAdmin có thể hoạt động chúng ta cần phải liên kết đến vùng chứa MySQL để phpMyAdmin có thể kết nối và truy cập cơ sở dữ liệu.
1 2 |
# Khởi tạo phpMyAdmin container docker run -d --name phpmyadmin --network sql -e PMA_HOST=sql -p 8080:80 phpmyadmin/phpmyadmin |
Trong đó:
- –name phpmyadmin: tên của container
- –network sql: đặt container này trong network tên sql
- -e PMA_HOST=sql: thiết lập địa chỉ IP hoặc network của MySQL
- -p 8080:80: kết nối cổng container với cổng host
Sau khi khởi tạo phpMyAdmin Container trên Docker, chạy lệnh sau đây kiểm tra xem đã khởi tạo thành công chưa:
1 2 3 4 |
system@sv-db:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 148f5409c04a phpmyadmin/phpmyadmin "/docker-entrypoint.…" 36 minutes ago Up 36 minutes 0.0.0.0:8080->80/tcp phpmyadmin 419aa528502e mysql:8.0.21 "docker-entrypoint.s…" 42 minutes ago Up 42 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql |
Sau khi hoàn thành cài đặt MySQL và phpMyAdmin trên Docker, chúng ta truy cập địa chỉ dạng http://my-ip:8080/ như sau:
Bạn đăng nhập với thông tin tài khoản mặc định là root và mật khẩu như đã tạo ở trên.
Lời kết: Như vậy nội dung bài viết này mình đã hướng dẫn cài đặt MySQL và phpMyAdmin trên Docker. Ngoải ra, các bạn có thể tham khảo thêm các bài viết khác trong chuyên mục MySQL hoặc Docker.
Tác giả: Truong Duong