vps

A 1-post collection

Git Automatic Deployment

ผมเพิ่งให้ความสนใจกับการ deploy ไม่นานมานี้ เนื่องจากเร่ิมรู้สึกว่าน่าจะมีวิธีดีกว่าที่เราทำอยู่ แต่ก่อนที่ FTP ลาก ๆ วาง ๆ ว่าเจ๋งแล้ว ก็ได้รู้จักกับ Git ที่ก็แค่กด push แล้วก็ไปกด pull ที่เครื่อง server แต่ดูเหมือนว่าที่จริงมันก็มีวิธีที่ง่ายกว่านี้ ก็จริงที่ว่าทำไมเราต้องไปกด pull เองที่ server ด้วยหล่ะ ? ทำไมเราไม่ให้มัน pull ให้เราเอง หรือไม่ เราก็ push โดยตรงไปที่ server เครื่องนั้นเลย โดยไม่ต้องผ่านบริการ third-party เช่น github.com หรือ bitbucket

หลังจาก google อยู่ซักพักผมก็ได้คำตอบจากโพสของ DigitalOcean วิธีการที่เค้าเสนอคือทำให้ server เครื่องที่เราใช้เป็น remote repository ไปเลย หากเราต้องการ deploy ขึ้นไป ก็โยนไปที่นี่เลย ไฟล์ก็จะไปอยู่ในที่ ๆ เรากำหนดใน server เราเองอย่างง่ายดาย (เนื่องจากผมใช้บริการ VPS อยู่แล้ว)

หมายเหตุ ผมไม่ได้เข้าใจอย่างถ่องแท้ ก็แค่พิมพ์ ๆ ตามเค้าแล้วก็พยายามหาคำอธิบายเท่าที่ความรู้ตัวเองพึงจะอธิบายได้

เริ่มด้วยการเตรียม remote repository บน VPS

ที่จริงแล้วเราสามารถสร้าง remote repository ด้วยตัวเองได้ไม่ต้องพึ่ง github หรือ bitbucket แต่อย่างใด และวิธีการก็ไม่ได้ยากไปกว่าการสร้าง directory ใหม่เท่านั้นเอง แต่ไม่ได้แปลว่าเราจะโยน repository เก่าเราทิ้งไปนะ เราใช้ควบคู่กันไปได้

สมมติว่าผมต้องการสร้าง git repository ไว้ที่ /var/repo/phizaz-blog.git
เพื่อจะได้เรียกได้จาก ssh://[email protected]/var/repo/phizaz-blog.git และผมต้องการเก็บไฟล์ที่ push มาไว้ที่ var/www/html

สร้าง repository

  1. cd /var
  2. mkdir repo
    การเรียกอาจจะต้องพึ่ง sudo เนื่องจาก /var มักเป็น directory ของ root หากเป็นเช่นนั้นเรายังต้อง
อ่านต่อ »