Cách Export Images Docker để đẩy lên Server mới đối với Wordpress
Ví dụ cụ thể, bạn cần trích xuất 2 images trong file docker compose như sau:
version: '3.1'
services:
wordpress:
image: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: ${WORDPRESS_DB_HOST}
WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME}
volumes:
- wordpress:/var/www/html
db:
image: mysql:8.0
restart: always
environment:
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
MYSQL_RANDOM_ROOT_PASSWORD: ${MYSQL_RANDOM_ROOT_PASSWORD}
volumes:
- db:/var/lib/mysql
volumes:
wordpress:
db:
Như vậy bạn sẽ có 2 images cần trích xuất đó là wordpress và mysql:8.0 thành các tệp .tar để đẩy vào các môi trường mới.
Xác định tên images đang chạy
Lưu ý là hướng dẫn này sẽ có ích nếu bạn xây dựng một môi trường Wordpress bằng Docker từ đầu, sau đó bốc nó sang các hệ thống hạ tầng khác nhé, còn việc containerize 1 bản Wordpress từ local sẽ không nằm trong Scope của mục này
docker-compose ps
Export các thành phần Images ra dạng file .Tar
Một điểm hay của Docker đó là mỗi 1 Images sẽ là trạng thái của phần mềm (có thể coi như 1 ổ đĩa trong thời gian đó đí), ta đang thực hiện Export 2 đĩa đó để ghép lên môi trường khác chạy tiếp. Kết quả của 2 lệnh dưới đây sẽ đẩy ra 2 file .tar tại Directory mà ta chọn (Tôi hiện đang dùng Windows - thao tác với Linux cũng tương tự thôi)
docker save -o wordpress_image.tar wordpress
docker save -o mysql_image.tar mysql:8.0
Load lại Images trên môi trường mới
docker load -i wordpress_image.tar
docker load -i mysql_image.tar
Sau khi Load mới thì coi như trên dữ liệu của Docker đã có 2 Images và có tình trạng y hệt như lúc ta cóp từ bên máy chủ cũ sang, lúc này bạn chỉ cần đưa file docker-compose phía trên và bấm cho nó chạy là BOOM - Một web Wordpress đã được Deploy về cổng hoàn thiện trong chớp mắt
Ánh xạ cổng đó lên tên miền
Cái này thì tùy vào công nghệ và giải pháp anh em lựa chọn, Nam thì hay sử dụng Open lite speed vì ... quen, đây là hướng dẫn setup nhé