Thursday, March 28Trang thông tin giải pháp website và công nghệ
Shadow

Chuyển Nhà Website WordPress Lên Docker

Có rất nhiều hướng design một ecosystem với docker, ở đây mình sẽ sử dụng docker swarm, traefik, phpmyadmin, mysql và wordpress image để thực hiện, bạn có thể google để tìm hiểu thêm

Bước 1: Cài docker swarm và traefik revert proxy

Đầu tiên các bạn cài docker và docker swarm theo hướng dẫn tại đây. Khi đã có docker swarm chạy dưới dạng service, bạn đã sẵn sàng cho bước tiếp theo.

docker wordpress
Hình này để minh họa cho stack thôi

Bước 2: Chuẩn bị stack compose cho website

Ở phần trước mình đã tạo hai network cho docker gọi là backend và proxy, hôm nay mình sẽ sử dụng hai network này để làm việc với stack.

Chúng ta sẽ tạo stack với tên filewordpress.yml

version: “3.3”

services:
  wordpress:
    image: wordpress
    restart: always
    container_name: wp
    environment:
      WORDPRESS_DB_HOST: $Địa_Chỉ_Host_MYSQL
      WORDPRESS_DB_USER: $DB_USER
      WORDPRESS_DB_PASSWORD:  $DB_PASSWORD
      WORDPRESS_DB_NAME: wordpress
    volumes:
      – ./wordpress/wp-include:/var/www/html/wp-include
    networks:
      – proxy
      – backend
    deploy:
      labels:
        – “traefik.enable=true”
        – “traefik.http.routers.wordpress.rule=Host(`yourdomain.com`)”
        – “traefik.http.routers.wordpress.entrypoints=web”
        – “traefik.http.services.wordpress.loadbalancer.server.port=80” # it seems you always need to give traefik a port so it ‘notices’ the service
        – “traefik.http.routers.wordpress-secured.rule=Host(`yourdomain.com`)”
        – “traefik.http.routers.wordpress-secured.entrypoints=web-secured”
        – “traefik.http.routers.wordpress-secured.tls.certresolver=mytlschallenge”
networks:
  backend:
  proxy:
    external: true

Bước 3: Dump dữ liệu từ website của bạn

Đầu tiên các bạn vào website hiện tại dump dữ liệu mysql về dữ liệu mới và import vào mysql stack website mà mình đã hướng dẫn ở bài trước

Tiếp theo các bạn tạo database với tên là wordpress tạo user với user name và mật khẩu như trên file stack tạo ở bước 2

Bước 4: Kiểm tra và chạy stack

Sau khi hoàn thành các bước trên, các bạn vào server và chạy câu lệnh sau

docker stack deploy -c wordpress.yml wordpress

Tất cả đã xong, bây giờ chờ khoảng 2 phút và truy cập vào website như bình thường nhé bạn, đừng quên trỏ domain về server mới nhé

Leave a Reply

Your email address will not be published. Required fields are marked *