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é