ในที่นี้เราจะใช้ NGINX Proxy ในการจัดการ Proxy ให้เรา โดยมีวิธีการติดตั้งดังนี้
- สร้าง docker network
-
สร้างไฟล์ docker-compose.yml โดยใช้ไฟล์ตั้งต้นจาก https://github.com/jwilder/nginx-proxy/blob/master/docker-compose.yml
- เพิ่ม code ข้างล่าง ใน docker-compose.yml ของ nginx-proxy
- รัน nginx-proxy ด้วยคำสั่งดังนี้
docker network create nginx-proxy
networks: default: external: name: nginx-proxy
docker-compose up -d
สมมติว่า เราต้องการรัน docker wordpress ที่เป็นเว็บใหม่บนเครื่อง server เรามีวิธีการดังนี้
- สร้างไฟล์ docker-compose.yml ตาม https://docs.docker.com/compose/wordpress/
- เพิ่ม VIRTUAL_HOST ที่เป็น Domain ของเว็บที่ใช้เรียกเข้ามา และ VIRTUAL_PORT ที่เป็น Port ที่สั่ง expose ออกมา ในส่วนของ Environment ของ service wordpress ใน docker-compose.yml ดังนี้
VIRTUAL_HOST: example.com VIRTUAL_PORT: 80
- เพิ่มการตั้งค่า docker network ใน docker-compose.yml ดังนี้
- รัน wordpress ด้วยคำสั่งดังนี้
networks: default: external: name: nginx-proxyหลังจากแก้ไขตาม 2 ข้อข้างต้นแล้ว จะได้ docker-compose.yml ดังนี้
version: '3.3' services: db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: somewordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: depends_on: - db image: wordpress:latest ports: - "8000:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress VIRTUAL_HOST: example.com VIRTUAL_PORT: 80 volumes: db_data: {} networks: default: external: name: nginx-proxy
docker-compose up -d
หมายเหตุ ในกรณีนี้เราต้องตั้งค่า DNS ของ domain ของเว็บเราให้ชี้มาที่เครื่อง server แล้ว
No comments:
Post a Comment