NCS - Documents
Go to Portal
  • NIPA Cloud Space Overview
    • Welcome to NIPA Cloud Space documentation
    • NCS User Account
      • Create NIPA Cloud Space Account
      • Loging in to Nipa Cloud Space
      • Reset NCS Password
      • Activating Two-Factor Authentication
      • Deactivating Two-Factor Authentication
    • Co-working Projects
      • Create Co-working Project
      • Manage Project Member
      • Exporting Resource List
    • Billing & Wallet
      • Topup a Project Wallet
      • Redeem Voucher
      • Insufficient Wallet Balance
  • COMPUTE
    • Compute Instance
      • What is OS Status?
      • Launching Compute Instance
      • Managing Instance
        • Stop
        • Start
        • Restart
        • Resize (Change Machine Type)
        • Take Snapshot
        • Auto Backup
        • Reset Linux "root" Password
        • Reset Windows "Administrator" Password
      • SSH to Linux Compute Instance
        • Converting Key Pair for PuTTy
        • Windows Client using Key Pair
        • Windows Client using Password
        • MacOS/Linux using Key Pairs
        • MacOS/Linux using Password
      • Remote Desktop to Windows Instance
      • Setting Docker Image Caching
      • Renaming Instance
      • Exporting Instance List
      • How to change Compute Instance hostname
      • How to install QEMU Guest Agent
      • How to fix update kernel for RHEL
      • How to Update Rocky Linux 9
      • How to Upgrade Rocky Linux to 9.4
      • How to change RDP port on Windows
    • Compute Image
      • Create Image From a Bootable Volume
      • Importing Your Own Image
      • Export Image
      • Share Image to Between Projects
      • Exporting Image List
    • Key Pair
      • Managing Key Pair(s)
      • Creating a New Key Pair
      • Importing an Existing Key Pair
    • Deployment Script
      • Managing Deployment Script
      • Create a Deployment Script
      • Clone a Deployment Script
      • Edit a Deployment Script
      • Delete a Deployment Script
  • STORAGE
    • Block Storage
      • Managing Volume(s)
        • Create From Blank
        • Create From an Image
        • Create From a Volume
        • Create From a Snapshot
        • Transferring a Volume
        • Accepting a Tranferred Volume
        • Renaming a Volume
        • How to Change Volume Type
      • Managing Snapshot(s)
        • Create a Snapshot
        • Renaming a Volume Snapshot
      • Exporting Volume and Volume Snapshot List
    • Object Storage (S3)
      • Migrate file S3 AWS to S3 NIPA
      • Create an Object Storage Bucket
      • Delete an Object Storage Bucket
      • Create an Object Storage Sub-User
      • Regenerate Sub-User's Access Key
      • Revoke Sub-User's Access Key
      • Create Bucket Policy
      • Bucket Versioning
      • Access S3 Bucket with Cyberduck
        • Upload Files to a Bucket
        • Share File via Public Link
      • Access S3 Bucket with s3cmd
        • Basic command
        • การ set ACL สำหรับการเปิดใช้งาน Objects แบบ public
        • การสร้าง Presigned URL สำหรับการใช้งานชั่วคราว
      • Mount S3 Bucket on instances with s3fs-fuse
      • Mount the S3 bucket on the Windows
      • Access S3 buckets With AWS S3 Client SDK
        • S3Client Configuration
        • Basic Command
        • Multipart Upload
      • Access S3 buckets with internal network for NCS instance
      • Delete Lifecycle Policies
      • Move Objects Lifecycle Script
      • Configure a static website using S3 Bucket
    • NIPA Drive
      • Purchasing a Drive
  • NETWORKING
    • Networking
      • Managing VPC Network(s)
        • Create a Network
        • DHCP Setting
        • Create Port
        • Create Router
      • Managing Security Group(s)
        • Create a New Security Group
        • Create Security Group Presets
      • Managing External IP(s)
        • Create an External IP
        • Exporting External IP List
      • NAT Gateway with Ubuntu (VM)
      • NAT and VPN Gateway on NCS with Pfsense-2.6.0
  • LOAD BALANCING
    • Load Balancer as a Service
      • Create Load Balancer
      • Using Network Load Balancing
      • Using Application Load Balancing
      • Renaming a Load Balancer
      • Exporting Load Balancer List
      • Monitoring Load Balancer Using Prometheus
    • SSL Certificate
      • Import SSL Certificate
  • DATABASE AS A SERVICE
    • SQL Database
      • Create SQL Database Instance
        • Create MySQL Database Instance
      • Manage SQL Database Instance
        • Reboot Database Service
        • Delete Database Instance
        • Online Extend Storage Size
        • Edit Allowed CIDR
      • Auto-Scaling SQL Database Storage
        • Enable Auto-Scaling
        • Disable Auto-Scaling
        • Edit Auto-Scaling
      • Manage SQL Database Root User
        • Enable Root User
        • Reset Root User Password
      • Manage SQL Database Schema
        • Create Database Schema
        • Delete Database Schema
      • Manage SQL Database User
        • Create Database User
        • Delete Database User
        • Reset Password
        • Edit Access
      • Manage SQL Database Backup
        • Create Backup
        • Create A New SQL Database Instance From Backup
        • Delete Backup
      • Manage SQL Database Logs
        • Enable Logs
        • Disable Logs
        • Refresh Logs
        • Load More Logs
      • Manage Monitoring User
        • Create Monitoring User
        • Delete Monitoring User
      • Monitor SQL Database with Percona Monitoring and Management (PMM)
  • SCHEDULING
    • Schedules
      • Create Schedule
    • Jobs
  • Public API
    • What is NCS Public API ?
      • Download NCS Project RC File
      • Getting Start with NCS Public API
        • Using OpenStack Client Tool
        • Using REST API
        • Terraform with Openstack
        • Auto-scaling OpenStack Instances with Senlin and Prometheus
          • Installation Prometheus
          • Installation Alertmanager
  • MIGRATION
    • Migrating Linux VM from vSphere to NCS
    • Migrating Windows VM from vSphere to NCS
  • Customer Support
    • Having Problem Before Access a Project
    • Having Problem In a Project
  • Tutorial
    • My First Website
    • Access MySQL Database With MySQL Workbench
    • Pritunl for VPN server
    • Install Rancher Server with Docker Quick Start
      • Create RKE2 Cluster via Rancher Dashboard
    • Install odoo18 with external database
    • How to use LBaaS for mysql Load Balancing
    • How to use Cloudflare with Nipa Cloud Space
  • Release Notes
    • v5.0.X (v5.0.0-now)
      • v5.0.0
      • v5.1.0
      • v5.2.0
      • v5.2.1
      • v5.2.2
      • v5.2.3
      • v5.2.4
      • v.5.3.0
      • v5.4.0
    • v4.19.X (v4.19.0-v4.19.3)
      • v4.19.0
      • v4.19.1
      • v4.19.2
      • v4.19.3
    • v4.18.X (v4.18.0-v4.18.2)
      • v4.18.0
      • v4.18.1
      • v4.18.2
    • v4.17.X (v4.17.0-v4.17.3)
      • v4.17.0
      • v4.17.0.1
      • v4.17.1
      • v4.17.2
      • v4.17.3
    • v4.16.X (v4.16.0-v4.16.5)
      • v4.16.0
      • v4.16.1
      • v4.16.2
      • v4.16.3
      • v4.16.4
      • v4.16.5
    • v4.15.X (v4.15.0-v4.15.9)
      • v4.15.0
      • v4.15.1
      • v4.15.2
      • v4.15.3
      • v4.15.4
      • v4.15.5
      • v4.15.6
      • v4.15.7
      • v4.15.8
      • v4.15.9
    • v.4.14.X (v4.14.0-v4.14.2)
      • v.4.14.0
      • v4.14.1
      • 4.14.2
Powered by GitBook
On this page
  • Prerequisite
  • Instructions
  • 1. เข้าสู่ Project
  • 2. สร้าง VPC network
  • 3. สร้าง default security group
  • 4. เริ่มสร้าง instance ที่จะมาเป็น web server
  • 5. SSH เข้าสู่ instance
  • 6. ติดตั้ง Nginx web server
  • 7. แก้ไข webpage

Was this helpful?

  1. Tutorial

My First Website

ทดลองสร้าง website อย่างง่าย ด้วย Nginx

PreviousHaving Problem In a ProjectNextAccess MySQL Database With MySQL Workbench

Last updated 1 year ago

Was this helpful?

Prerequisite

  • มียอดคงเหลือใน Project มากกว่า 0 บาท ()

Instructions

1. เข้าสู่ Project

log in และ กดเลือก project ที่ต้องการใช้งาน ที่มียอดเงินคงเหลือมากกว่า 0 บาท

ถ้าใน project มี VPC network และ security group สำหรับ SSH และ HTTP แล้ว ให้ข้ามไปที่ข้อ 4.

2. สร้าง VPC network

ไปที่หน้า VPC networks ภายใต้กลุ่ม network & security เพื่อสร้าง VPC network สำหรับ web server โดยกดที่ปุ่ม Create และเลือก Network

เมื่อหน้าต่าง Create Network แสดงแล้ว ให้ทำการตั้งชื่อ และกำหนด CIDR เช่น 192.168.0.0/24 และกด confirm เพื่อสร้าง VPC network

VPC network ที่สร้างเสร็จแล้ว จะแสดงในหน้า network list

3. สร้าง default security group

ในหน้า security group list ให้กดที่ปุ่ม create และเลือก default เพื่อสร้าง default security group ที่เป็นที่นิยม ดังนี้ เช่น SSH, Ping, HTTP หรือ HTTPS

เลือก confirm เพื่อสร้าง default security group ทั้งหมด

4. เริ่มสร้าง instance ที่จะมาเป็น web server

เข้าหน้า instances ภายใต้กลุ่ม instance เพื่อสร้าง instance ที่จะมาเป็น web server

ใน step แรก ให้เลือก Availability Zone ที่ต้องการ โดยในตัวอย่างจะเลือกที่ NCP-NON กำหนด quantity เป็น เพื่อ launch 1 instance และกำหนดชื่อของ instance

ใน step source ให้เลือก Public Image ที่เป็น image pure OS ที่ Nipa Cloud Space มีให้

โดยใน workshop นี้ เราจะเลือก OS Linux ยอดนิยมอย่าง Ubuntu 22.04

เราจะข้าม step Deployment Script ไป เพื่อเป็น step สำหรับแก้ไข script ในกรณีที่เลือก source เป็น Deployment Script

ใน step storages เราสามารถกำหนดได้ ว่าต้องการ storage ช้าหรือเร็ว จำนวน และขนาดเท่าไหร่ โดยใน workshop นี้ เราจะใช้ค่า volume size 9 และ performance type Standard_SSD ที่เป็นค่า default ของ image Ubuntu 22.04 โดย หาก volume size ไม่เพียงพอ ก็สามารถ extend เพิ่ม storage size ได้ภายหลังเช่นกัน

นอกจากนี้เรายังจะต้องเปิดใช้งาน attach external IP บน port ของ instance อีกด้วย เพื่อให้ web server ของเรา สามารถเข้าใช้งานได้ผ่าน internet

ใน step security จะเป็นการกำหนด security group โดยให้เลือก default security group ที่ชื่อว่า SSH เพื่อใช้ในการ access เข้าไปยัง server เพื่อติดตั้ง web server และ HTTP เพื่อให้ web server สามารถเข้าถึงได้ผ่าน protocol HTTP ของ browser

รวมถึงกำหนด password ในการ SSH access เข้าไปจัดการ server ด้วย

และใน step สุดท้าย launch summary จะเป็นการ review setting ต่างๆที่เรากำหนดไว้ ก่อนที่สั่ง launch โดยตรวจสอบว่า จะต้องเลือก image Ubuntu 22.04, มี external IP และมี security group อย่างน้อยคือ SSH และ HTTP

ถ้าทุกอย่างเป็นไปตามที่ต้องการ ให้กดที่ปุ่ม launch เพื่อเริ่มการ launch instance

หลังกดปุ่ม launch ระบบจะทำการสร้าง instance ให้ instance status กลายเป็น active และ OS status กลายเป็น ก่อนทำขั้นตอนถัดไป

5. SSH เข้าสู่ instance

เปิด program ที่จะใช้ในการ SSH เข้าสู่ instance โดยใน workshop นี้ จะใช้งาน Ternimal ที่มีอยู่แล้วบน MacOS

สำหรับ Windows ให้ติดตั้ง program PuTTY เพื่อใช้งานในการ SSH

บน Terminal ให้ใส่ command ด้านล่างนี้ เพื่อทำการ SSH โดยตัวเลขหลังเครื่องหมาย "@" ให้เป็น external IP ของ instance ที่พึ่งสร้าง

# ssh nc-user@[your external IP]

nc-user คือ user default ที่ระบบ NCS สร้างให้พร้อมกับการ authentication ที่กำหนดไว้ในขั้นตอนการ launch instance

หากใน PC ที่ใช้ มี public key อยู่ ระบบจะมีการถามว่า การ connect นี้ ไม่สามารถใช้งาน public key ที่ลงทะเบียนไว้ได้ ซึ่งใน workshop นี้ เราจะใช้งาน password กัน ดังนั้นให้ พิม "yes" และกดปุ่ม enter เพื่อดำเนินการต่อ

พิมรหัสผ่านและกด enter เพื่อดำเนินการต่อ

เมื่อ login สำเร็จ ระบบจะแสดงดังรูป

6. ติดตั้ง Nginx web server

ติดตั้ง service Nginx โดยทำตามขั้นตอนดังนี้

เปลี่ยนสิทธิเข้าใช้งานให้เป็น root เพื่อให้สามารถติดตั้ง service ต่างๆ ได้ โดยใช้ command ด้านล่าง

# sudo -i

จะเห็นว่าชื่อของ user เปลี่ยนไป

เมื่อได้สิทธิ root แล้ว ให้ทำการ update รายการของ service ที่มีให้ ติดตั้ง โดยใช้ command ด้านล่าง

# apt update

จากนั้นเราจะทำการทดสอบก่อนที่จะติดตั้ง web server โดยการเข้าถึง external IP ของ instance นี้ ผ่าน browser

จะเห็นว่าเราไม่สามารถเข้าใช้งาน website จาก IP ดังกล่าวได้ ดังนั้นเราจะมาติดตั้ง web server เพื่อให้ใช้งานได้ โดยเราจะใช้ Nginx ที่เป็น web server ที่เบา และได้รับความนิยมอย่างมาก โดยใช้ command ด้านล่าง

# apt install nginx

ระบบจะแสดงรายการของ package ที่เป็น dependency ของ Nginx ที่จะต้องติดตั้งไปด้วย ให้พิม Y และกดปุ่ม enter เพื่อดำเนินการต่อ

เมื่อติดตั้งเสร็จแล้ว ให้เราตรวจสอบว่า service Nginx ของเรา run หรือยังโดยใช้ command systemctl เพื่อ list รายการ service ทั้งหมด และต่อด้วย | grep nginx เพื่อค้นหา service nginx เท่านั้น

# systemctl | grep nginx

จะเห็นว่า service Nginx ของเรา active และ running อยู่ ทีนี้ให้กลับไปที่ browser และกรอก external IP ลงไปอีกครั้ง เพื่อตรวจสอบว่า web server ของเราทำงานหรือยัง

เมื่อ browser แสดงดังรูป ก็แสดงว่า web server ของเราทำงานได้แล้ว

7. แก้ไข webpage

เมื่อ website ของเรา ใช้งานได้แล้ว แต่ยังเป็นแค่หน้า default ของ Nginx อยู่ เราจะแก้ไขไฟล์นี้ได้โดยการไปที่ directory ของ file โดยใช้ command

# cd /var/www/html

และแสดงรายการของ file ใน directory นี้โดยใช้ command

# ls

เริ่มแก้ไข file โดยใช้ nano ด้วย command

# nano index.nginx-debian.html

ระบบจะแสดง nano text editer ขึ้นมา พร้อมเนื้อหาใน file ดังกล่าว ซึ่งเราจะสามารถแก้ไข file ให้เป็นอย่างไรก้ได้ตามต้องการ

จากนั้นให้กดปุ่ม control + x เพื่อออกจาก nano และกด Y เพื่อ save การเปลี่ยนแปลง และกด enter อีกครั้งเพื่อใช้ชื่อ file เดิม

จากนั้นให้กลับไปที่ browser ที่เปิด external IP ของ instance เอาไว้ แล้ว refresh เพื่อดูการเปลี่ยนแปลง

เมื่อเห็นการเปลี่ยนแปลงของ webpage ก็ถือเป็นอันเสร็จสิ้น website แรกบน Nipa Cloud Space ของคุณ

ไปที่หน้า security groups ภายใต้กลุ่ม network & security เพื่อสร้าง security group พื้นฐาน ที่จำเป็นในการ SSH และเปิดใช้งาน HTTP บน port ของ web server หากมีอยู่แล้วให้ข้ามไปที่

ใน step machine type เลือก machine type ชื่อ csa.large.v1 ซึ่งเป็น machine type ขนาดเล็ก โดยหลักแล้ว เมื่อเราจะ deploy service ต่างๆ เรามักจะเริ่มจากขนาดเล็ก เพื่อให้ประหยัดงบประมาณในการทดสอบ และเมื่อมั่นใจว่าใช้ได้แล้ว จึง ให้มีทรัพยากรเพียงกับกับการใช้งาน

ใน step networks เราสามารถกำหนด VPC network ที่ instance จะใช้งาน โดยระบบจะทำการเลือก VPC network ที่มีอยู่ หรือที่ให้

บน Linux การพิม password จะไม่แสดงเครื่องหมายแสดงหลักที่พิมไปแล้ว เช่น *** ให้กด enter ที่ keyboard ได้ทันทีที่พิม password เสร็จ

ทำการ resize
ขั้นตอนที่ 4.
สร้างไว้ใน ขั้นตอนที่ 2.
ขั้นตอนการเติมเงินเข้าสู่ Project
Create VPC Network Button
Create Network Windows
Created Network Detail
Create Default Security Groups Button
Create Security Group Modal
Security Group List
Launch Instance Button