ปรับใช้แอพพลิเคชัน Meteor บน Ubuntu

บทความนี้จะแนะนำคุณเกี่ยวกับการปรับใช้แอพ Meteor ของคุณไปยัง Vultr VPS ที่ใช้ Ubuntu 14.04 มันอาจใช้งานกับดิสทริบิวชั่นลีนุกซ์อื่น ๆ ได้ด้วย (คุณต้องยอมรับความเสี่ยงเอง)

เพื่อนผู้แยบยลชื่อ Arunoda Susiripala ซึ่งค่อนข้างแอคทีฟในชุมชน Meteor ได้พัฒนาเครื่องมือการปรับใช้ที่เรียกว่า mupx (ย่อมาจาก "Meteor Up X") ซึ่งทำให้ติดตั้งแอปพลิเคชั่น Meteor ของคุณกับเซิร์ฟเวอร์ระยะไกลได้อย่างง่ายดาย Mupx เป็นตัวตายตัวแทนเพื่อ mup เราจะแนะนำคุณตลอดกระบวนการตั้งแต่ต้นจนจบ Mup ใช้การยกของหนักเป็นส่วนใหญ่โชคดีดังนั้นนี่จะเป็นเรื่องง่าย!

ขั้นตอนแรกของเราคือการติดตั้ง mupx คุณจะทำสิ่งนี้บนเวิร์กสเตชันการพัฒนาไม่ใช่เซิร์ฟเวอร์ VPS ของคุณ! ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Node.js แล้วและเรียกใช้:

$ npm install -g mupx

หลังจากการติดตั้งเสร็จสมบูรณ์ให้ไปที่โฟลเดอร์โครงการ Meteor ของคุณเช่น/projects/myAppและเรียกใช้คำสั่งต่อไปนี้:

$ mkdir .deploy
$ cd $_
$ mupx init

สำหรับผู้ที่ไม่คุ้นเคยกับ$_ไวยากรณ์มันเป็นทางลัดสำหรับอาร์กิวเมนต์สุดท้ายที่ใช้ในคำสั่ง ดังนั้นในกรณีนี้ทำตามคำสั่งcd $_cd .deploy

คุณจะเห็นผลลัพธ์ต่อไปนี้:

Meteor Up: Production Quality Meteor Deployments
------------------------------------------------
Configuration file : mup.json
Settings file      : settings.json

Empty Project Initialized!

กระบวนการเริ่มต้นสร้างสองไฟล์และmup.json settings.jsonเราจะปล่อยไฟล์หลังไว้คนเดียวในตอนนี้ mup.jsonไปข้างหน้าและเปิดขึ้น ในขณะที่เขียนบทความนี้ค่าเริ่มต้นmup.jsonจะเป็นดังนี้:

{
  // Server authentication info
  "servers": [
    {
      "host": "hostname",
      "username": "root",
      "password": "password",
      // or pem file (ssh based authentication)
      // WARNING: Keys protected by a passphrase are not supported
      //"pem": "~/.ssh/id_rsa"
      // Also, for non-standard ssh port use this
      //"sshOptions": { "port" : 49154 },
      // server specific environment variables
      "env": {}
    }
  ],

  // Install MongoDB on the server. Does not destroy the local MongoDB on future setups
  "setupMongo": true,

  // Application name (no spaces).
  "appName": "meteor",

  // Location of app (local directory). This can reference '~' as the users home directory.
  // i.e., "app": "~/Meteor/my-app",
  // This is the same as the line below.
  "app": "/path/to/the/app",

  // Configure environment
  // ROOT_URL must be set to your correct domain (https or http)
  "env": {
    "PORT": 80,
    "ROOT_URL": "http://myapp.com"
  },

  // Meteor Up checks if the app comes online just after the deployment.
  // Before mup checks that, it will wait for the number of seconds configured below.
  "deployCheckWaitTime": 15,

  // show a progress bar while uploading. 
  // Make it false when you deploy using a CI box.
  "enableUploadProgressBar": true
}

เราจำเป็นต้องเปลี่ยนบางสิ่งเพื่อให้กระบวนการติดตั้งทำงานได้

ก่อนอื่นตรวจสอบให้แน่ใจว่าได้ตั้งค่าhostที่อยู่ IP VPS ของคุณแล้วเช่น:

"host": "123.123.123.123",

หากคุณต้องการใช้หมายเลขพอร์ตอื่นนอกเหนือจากค่าเริ่มต้น 22 คุณสามารถทำได้โดยใช้sshOptionsฟิลด์ตัวอย่างเช่น:

"host": "123.123.123.123",
"sshOptions": { "port": 9876 },

ตั้งusernameค่าเป็นผู้ใช้สิ่งที่คุณต้องการเป็นเจ้าของการติดตั้งแอพ Meteor ของคุณ ฉันแนะนำให้ลบบรรทัดรหัสผ่านและใช้คีย์ SSH แทนเพื่อความปลอดภัย ยกเลิกหมายเหตุบรรทัดด้วยpemค่าและตรวจสอบให้แน่ใจว่าชี้ไปที่รหัสลับ SSH ของคุณที่สอดคล้องกับรหัสสาธารณะ SSH ที่คุณติดตั้งใน VPS (ใน/root/.ssh/authorized_keys) ตรวจสอบให้แน่ใจว่าเพิ่มเครื่องหมายจุลภาคหลังบรรทัดรหัสผ่าน! หากคีย์ SSH ของคุณมีข้อความรหัสผ่านติดอยู่ให้ลบpemบรรทัดทั้งหมดและตรวจสอบให้แน่ใจว่าคีย์ส่วนตัว SSH ของคุณถูกแคชในเอเจนต์ ssh (เช่นบน Mac ssh-add <path to ssh private key>)

ปล่อยให้setupMongoตั้งเป็นค่าเริ่มต้น

เปลี่ยนappNameเป็นชื่อแอพ Meteor ของคุณ ในกรณีของเรา:

"appName": "myApp",

... และตั้งค่าตำแหน่งของแอพเช่นกันโดยสัมพันธ์กับโฟลเดอร์การปรับใช้นี้:

"app": "..",

สุดท้ายให้ตั้งค่าเป็นROOT_URLURL ที่กำหนดสำหรับแอปของคุณ ตั้งค่าหมายเลขพอร์ตอย่างชัดเจนเป็นพอร์ต HTTP มาตรฐาน

// Configure environment
"env": {
  "ROOT_URL": "http://myapp.com",
  "PORT": 80
},

แค่นั้นแหละ! บันทึกmup.jsonไฟล์จากนั้นเรียกใช้:

$ mupx setup

ณ จุดนี้ mupx จะ ssh ลงใน VPS ของคุณติดตั้ง Docker ตั้งค่าสภาพแวดล้อมและดึงภาพ Docker ที่เหมาะสม ตอนนี้ปรับใช้แอพของคุณ:

$ mupx deploy

ตอนนี้ถ้าคุณไปที่http://123.123.123.123แอปของคุณจะแสดงเมื่อหน้าโหลด

รองรับมัลติคอร์

หาก VPS ของคุณมีหลายคอร์แอพ Meteor ของคุณสามารถใช้ประโยชน์ได้ เราจะต้องทำการปรับแต่งอย่างรวดเร็ว

ก่อนอื่นคุณจะต้องติดตั้งแพ็คเกจคลัสเตอร์ ไปที่โฟลเดอร์ของแอพ Meteor ของคุณ (ในตัวอย่างนี้/projects/myApp) และพิมพ์:

$ meteor add meteorhacks:cluster

ตอนนี้แก้ไขmup.jsonไฟล์ของคุณและแก้ไขส่วนตัวแปรสภาพแวดล้อมดังนี้:

// Configure environment
"env": {
  "ROOT_URL": "http://myapp.com",
  "PORT": 80,
  "CLUSTER_WORKERS_COUNT": "auto"
},

เนื่องจากเราได้เพิ่มแพ็คเกจใหม่ให้แอปของคุณคุณจะต้องปรับใช้ใหม่

$ mupx setup && mupx deploy

หากคุณต้องการเปลี่ยนตัวแปรสภาพแวดล้อมของคุณmup.jsonโดยไม่ต้องปรับใช้แอปทั้งหมดเพียงแค่ใช้คำสั่งกำหนดค่าใหม่ สิ่งนี้มีประโยชน์เมื่อไม่มีการเปลี่ยนแปลงแอปพลิเคชัน

$ mupx reconfig

ขอแสดงความยินดีแอพ Meteor ของคุณเปิดใช้งานแล้ว! นอกจากนี้แอปของคุณจะเริ่มโดยอัตโนมัติเมื่อใดก็ตามที่ VPS ของคุณเริ่มต้นใหม่ จับตาดูบทความในอนาคตเกี่ยวกับการปรับใช้และการจัดการของ Meteor

ฝากความเห็น

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true