การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 4 - การเขียนคำสั่ง Gitlab CI บนไฟล์ .gitlab-ci.yml !!!

การทำ CI ใน Gitlab CI นั้น จำเป็นต้องสร้างไฟล์ .gitlab-ci.yml ไว้ในโฟลเดอร์ของโปรเจ็คซะก่อน ซึ่งทุกครั้งที่เรา push ไฟล์ขึ้นมา gitlab จะมาอ่านไฟล์ .gitlab-ci.yml นี้เพื่อสั่งให้ Gitlab CI ทำงานตามคำสั่งที่กำหนดไว้ในไฟล์ .gitlab-ci.yml ทุกครั้ง

Gitlab Runner คืออะไร
Gitlab Runner คือ Server ของ Gitlab ที่ไว้ทำงานพวก Pipeline ทั้งหมด โดยมันจะทำการ Run jobs และส่งค่ากลับมาที่ Gitlab

ซึ่งการใช้งาน Pipeline หากครบ 2,000 นาทีต่อเดือนแล้ว ตัว CI/CD ของเราก็จะไม่สามารถใช้งานได้ โดยใน Pipeline เราจะขึ้นเป็น Stuck หากอยากใช้งานต่อต้องสมัครแบบ Silver ซึ่งเขาคิดอยู่ที่ 19$ ต่อคน และเราจะได้ 10,000 นาทีต่อเดือนมา

การกำหนด Jobs ใน
Gitlab CI คืออะไร
Jobs คือ องค์ประกอบพื้นฐานในการเขียนคำสั่ง Giblat CI ใช้กำหนดว่าใน Pipeline จะมีการสั่ง Runner ให้ทำงานอะไรบ้าง โดยในไฟล์ .gitlab-ci.yml จะมีกี่ Jobs ก็ได้ไม่จำกัด และเราสามารถตั้งชื่อ Jobs ได้เอง ยกเว้นคำว่า image, services, stages, types, before_script, after_script, variables, cache, include ใช้ตั้งชื่อ Jobs ไม่ได้

ภายใต้ Jobs เราจะต้องกำหนด jobs parameters (เช่น stage,
script, image, ...) เพื่อบอกให้ Runner ทราบว่าต้องทำงานอะไร และอย่างไรบ้าง เช่น

job 0:
  stage: .pre
  script: make something useful before build stage

job 1:
  stage: build
  script: make build dependencies

job 2:
  stage: build
  script: make build artifacts

การกำหนด Default Parameters ให้
Jobs
เนื่องจาก parameters ก็คือคำสั่งการทำงานภายใน jobs ดังนั้นการกำหนด global parameters จึงเป็นการกำหนดคำสั่งการทำงานให้กับทุกๆ jobs เช่น

default:
  image: ruby:2.5

rspec:
  script: bundle exec rspec

rspec 2.6:
  image: ruby:2.6
  script: bundle exec rspec

jobs ชื่อ rspec จะเรียกใช้ image ruby:2.5 โดยอัตโนมัติ เพราะใน jobs ไม่ได้กำหนด
parameters ค่า image ไว้ Runner จึงไปเรียกใช้ parameters ค่า image จาก default

jobs ชื่อ rspec 2.6 จะเรียกใช้
image ruby:2.6 เพราะใน jobs ได้กำหนด parameters ค่า image ไว้เป็น ruby:2.6 อยู่แล้ว

การกำหนด Default Variables ให้ Jobs
เป็นการกำหนด global variables ให้กับทุกๆ jobs เช่น


default:
  image: 'ruby:2.4'
  before_script:
    - echo Hello World

variables:
  DOMAIN: example.com
  WEBHOOK_URL: https://my-webhook.example.com

rubocop:
  inherit:
    default: false
    variables: false
  script: bundle exec rubocop

rspec:
  inherit:
    default: [image]
    variables: [WEBHOOK_URL]
  script: bundle exec rspec

jobs ชื่อ rubocop จะไม่ทำการ inherit ทั้ง global parameters และ global variables มาใช้เลย ในขณะที่ jobs ชื่อ rspec จะทำการ inherit แค่ตัว global parameters image และ global variables WEBHOOK_URL มาใช้เท่านั้น

การกำหนด Stages ให้ Jobs
เป็นการกำหนด
step การทำงานให้กับ jobs ใน pipeline เพื่อบอก Runner ว่าต้องทำ jobs ไหนให้เสร็จก่อน เสร็จแล้วต้องไปทำ jobs ไหนต่อบ้าง แต่ถ้าเราไม่กำหนด Stages ทุกๆ jobs จะถูกสั่งให้ทำงานพร้อมกัน

stages:
  - build
  - test
  - deploy

job 1:
  stage: build
  script: make build dependencies

job 2:
  stage: build
  script: make build artifacts

job 3:
  stage: test
  script: make test

job 4:
  stage: deploy
  script: make deploy

Runner จะสั่งทำ jobs ตามค่า
stages ที่เรากำหนด คือ build ไป test ไป deploy โดย
- 1. เริ่มทำ
jobs ที่มีค่า stage เป็น build (job 1 และ job 2) ก่อน
- 2. เมื่อทำ
build เสร็จไม่มี error จึงจะไปทำ jobs ที่มีค่า stage เป็น test (job 3)
- 3.
เมื่อทำ test เสร็จไม่มี error จึงจะไปทำ jobs ที่มีค่า stage เป็น deploy (job 4)

Jobs Parameters (คำสั่งการทำงานภายใน jobs) มีอะไรบ้าง
- script :
ใช้ระบุ คำสั่ง shell script ให้ Runner ทำงาน
- image :
ใช้ระบุ Docker Image ที่จะใช้งาน
- services :
ใช้ระบุ Services ใน Docker Image ที่จะใช้งาน
- before_script :
ใช้ระบุคำสั่งที่จะให้ทำงาน ก่อนทำ jobs นี้
- after_script
: ใช้ระบุคำสั่งที่จะให้ทำงาน หลังทำ jobs นี้เสร็จ
- stages :
ใช้ระบุว่าใน pipeline จะต้องทำ stages อะไรบ้าง
- stage
: ใช้ระบุว่า jobs นี้จะถูกทำใน stages ไหน
- only : ใช้จำกัดให้ jobs ทำกับ git แค่กับส่วน branches หรือ tags ที่กำหนดเท่านั้น
- except
: ใช้จำกัดให้ jobs ไม่ต้องทำกับ git ในส่วน branches หรือ tags ที่กำหนด
- rules :
ใช้กำหนดเงื่อนไขการทำงานของ jobs
- tags : ใช้เจาะจง Runner ที่จะใช้ run project
- allow_failure : ใช้กำหนดว่า jobs นี้ สามารถปล่อยให้เกิด fail ได้ โดยไม่กระทบการทำงาน
- when :
ใช้กำหนดว่า jobs นี้ จะถูกสั่งทำงานเมื่อไร เช่น เมื่อเกิด fail ให้ jobs นี้ทำงานทันที
- environment : ใช้กำหนดชื่อ
environment ที่จะให้ Runner ทำการ deploy
- cache : ใช้กำหนดชื่อไฟล์ หรือโฟลเดอร์ที่จะถูกทำ
cache ในระหว่างที่ jobs ทำงาน
- artifacts :
ใช้กำหนดชื่อไฟล์ หรือโฟลเดอร์ที่จะถูกแนบไปเก็บไว้บน Gitlab หลังจาก jobs นี้ทำงานเสร็จ
- dependencies : ใช้ระบุให้ jobs หนึ่งไปใช้ค่า
artifacts ที่กำหนดจากอีก jobs หนึ่งได้
- retry : ใช้กำหนดจำนวนครั้งที่ Runner จะพยายามทำ
jobs นี้ซ้ำ หาก jobs นี้เกิด fail
- timeout : ใช้กำหนดค่า
timeout ให้กับ jobs
- parallel : ใช้กำหนดจำนวน script คำสั่งย่อยๆ ใน jobs ที่จะให้ Runner สามารถทำงานแบบขนานกันไปได้
- trigger : ใช้กำหนดว่าใน jobs นี้
จะมีการไปเรียกอีก pipeline หนึ่งในอีกที่หนึ่งขึ้นมาทำงานด้วย
- include :
ใช้กำหนดให้ Pipeline นี้ Runner ทำงานตามไฟล์ YAML จากภายนอกที่เรา include เข้ามาด้วย
- extends : ใช้กำหนดให้
jobs หนึ่งสามารถเสือบทอดคุณสมบัติ ของอีก jobs หนึ่งได้
- pages : เป็น
jobs พิเศษ ใช้ส่ัง upload ไฟล์บน Gitlab
- variables : ใช้กำหนดตัวแปรให้ jobs
- interruptible : ใช้กำหนดว่าแต่ละ jobs ใน Pipeline จะมี jobs ไหนบ้างที่จะถูกยกเลิกการทำงาน หรือไม่ถูกยกเลิกการทำงาน เมื่อเกิดการ
interrupt จากการสั่ง run Pipeline ใหม่
- resource_group : ใช้จำกัด
jobs ไม่ให้ทำงานแบบขนานไปพร้อมๆ กัน เพื่อลด load ของ Runner

ตัวอย่างไฟล์ ไฟล์ .gitlab-ci.yml

image: node:latest

cache:
  key: node_modules
  paths:
    - node_modules

stages:
  - install
  - build
  - deploy

install:
  stage: install
  only:
    - master
  script:
    - yarn install
  artifacts:
    paths:
      - node_modules

build:
  stage: build
  only:
    - master
  script:
    - yarn run build
  dependencies:
    - install
  artifacts:
    paths:
      - build

deploy:
  stage: deploy
  only:
    - master
  script:
    - yarn global add firebase-tools --cache-folder node_modules
    - firebase deploy -m "Pipeline $CI_PIPELINE_ID, build $CI_BUILD_ID" --non-interactive --token $FIREBASE_DEPLOY_KEY --project $FIREBASE_PROJECT
  dependencies:
    - install
    - build

ปฏิวัติงานรับทําเว็บไซต์ ฉีกทุกข้อจำกัด ไอเดียเฉียบล้ำนำสมัย ดีไซน์ก้าวกระโดด เพราะดีไซน์บ่งบอกถึงตัวตน พร้อมให้บริการ ด้วยทีมงานมืออาชีพ รับทำเว็บไซต์ ร้านค้าออนไลน์ รับทำเว็บไซต์ มีเอกลักษณ์ไม่ซ้ำใคร ในราคาไม่แพง คุ้มค่า รับทำเว็บไซต์ ให้คุณเข้าถึงกลุ่มเป้าหมาย รองรับติดอันดับ GOOGLE

Iphone

วิสัยทัศน์พันธกิจ รับทำเว็บไซต์

“Professional Standard” คือคำที่ทีมงานใช้ในการสื่อสารและยึดมั่นในการทำงานร่วมกัน หลายปีที่ผ่านมาเราได้รับทั้งคำชื่นชมต่าง ๆ มากมายเกี่ยวกับผลิตภัณฑ์ ผลงานและงานบริการที่บริษัทฯ ได้เป็นผู้พัฒนาและ ส่งมอบงานคุณภาพให้กับลูกค้า ด้วยความมุ่งมั่นที่จะส่งมอบ “งานคุณภาพสูง เหนือความคาดหมาย” และ “ตรงต่อเวลา” ให้กับลูกค้า

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

ขั้นตอน รับทำเว็บไซต์

เราไม่ได้แค่ รับทำเว็บไซต์ ตาม Site Map ที่ลูกค้าต้องการ แต่นี่คือ ขั้นตอนและขบวนการทำงานเกี่ยวกับ WEB Development ของเราทั้งหมด
รับทำเว็บไซต์
1.

Requirement (เก็บข้อมูลสำหรับ รับทำเว็บไซต์)

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

2.

DESIGN (ออกแบบเว็บไซต์ มีเอกลักษณ์ไม่ซ้ำใคร)

รับทำเว็บไซต์ สร้างความน่าเชื่อถือและภาพลักษณ์ที่ดีให้กับธุรกิจ ซึ่งนำไปสู่การจดจำธุรกิจ ด้วยทีมงานคุณภาพ มีผลงาน ออกแบบเว็บ มาอย่างยาวนาน ทำให้คุณจะได้รับบริการ ที่ตรงใจคุณที่สุด กับดีไซน์ที่โดดเด่น เป็นเอกลักษณ์ไม่ซ้ำใคร รับทำเว็บไซต์ ตรงใจลูกค้ามากที่สุด เพื่อเพิ่มยอดขาย สร้างแบรนด์ให้เป็นที่รู้จัก

3.

HTML & CSS (รับทำเว็บไซต์ ด้วยเทคนิคสมัยใหม่)

สร้าง Prototype หน้าหลัก และหน้าย่อยต่างๆ ของเว็บไซต์ทั้งหมด รวมถึงหน้าจอที่จะแสดงบนมือถือหรือแท็บเล็ต ด้วยเทคโนโลยีสมัยใหม่ของการ รับทำเว็บไซต์ Web Responsive และ Web Parallax มาผสมผสานกัน เพื่อสร้างโอกาสทางการค้า และประสบความสำเร็จ ในสายงานธุรกิจของคุณ รับทำเว็บไซต์ ดีไซน์หรู คุณภาพดี

4.

CMS (รับทำเว็บไซต์ พร้อมออกแบบระบบหลังบ้าน)

พัฒนาระบบบริหารและจัดการหลังบ้าน สำหรับทีมทำงาน พร้อมเชื่อมต่อกับ Front Office ด้วยระบบจัดการข้อมูล รับทำเว็บไซต์ ใช้งานง่ายที่สุด ดีที่สุด ครบที่สุด ทรงพลังที่สุด เพื่อให้รองรับและตอบสนอง ต่อการใช้งานในธุรกิจของคุณ รับทำเว็บไซต์ สวยเด่นสะดุดตา โดยทีมงาน รับทำเว็บไซต์ มากประสบการณ์

5.

SEO (รับทำเว็บไซต์ รองรับติดอันดับ Google)

เป็นการปรับแต่งเว็บไซต์ ด้วยวิธีการต่างๆ เพื่อให้ติดอันดับในผลการค้นหา ของ Search Engine เช่น Google รับทำเว็บไซต์ ปรับแต่งโครงสร้าง และหน้าเว็บไซต์ให้รองรับกับ seo สามารถเจาะ หรือเข้าถึงกลุ่มเป้าหมายได้ตรง มีความแม่นยำ อีกทั้งยังมีประสิทธิภาพในการเข้าถึงลูกค้า ซึ่งจะมีผลต่อความก้าวหน้า ของธุรกิจโดยตรง

6.

SUPPORT (ให้คำปรึกษาหลังการ รับทำเว็บไซต์)

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

ลูกค้าบางส่วนของเรา รับทำเว็บไซต์

รับทำเว็บไซต์ มีคุณภาพเห็นผลจริง รับทำเว็บไซต์ สำหรับธุรกิจ SME รับทำเว็บไซต์ ใช้ต่อยอด ในเชิงธุรกิจ หรือเจ้าของกิจการมือใหม่ อีกระดับของ รับทำเว็บไซต์ เพื่อประโยชน์ในเชิงธุรกิจ รับทำเว็บไซต์ สวยโดดเด่น

ลูกค้า รับทำเว็บไซต์ ออกแบบเว็บไซต์ : สนามบินสมุย - บริษัท การบินกรุงเทพ จำกัด (มหาชน)

สนามบินสมุย - บริษัท การบินกรุงเทพ จำกัด (มหาชน)

samuiairport.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท คราวน์ เทค แอดวานซ์ จำกัด (มหาชน)

บริษัท คราวน์ เทค แอดวานซ์ จำกัด (มหาชน)

ajthai.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : สนามบินสุโขทัย - บริษัท การบินกรุงเทพ จำกัด (มหาชน)

สนามบินสุโขทัย - บริษัท การบินกรุงเทพ จำกัด (มหาชน)

sukhothaiairport.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท ลีดเดอะ เทรด โปรดักส์ จำกัด

บริษัท ลีดเดอะ เทรด โปรดักส์ จำกัด

leadertrade.net
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท ที เอส ฟลาวมิลล์ จำกัด (มหาชน)

บริษัท ที เอส ฟลาวมิลล์ จำกัด (มหาชน)

tmill.co.th
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท เอฟ ที เซลล์แอนด์เซอร์วิส จำกัด (โปรคลีน)

บริษัท เอฟ ที เซลล์แอนด์เซอร์วิส จำกัด (โปรคลีน)

procleanth.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท บิสเทค (ประเทศไทย) จำกัด

บริษัท บิสเทค (ประเทศไทย) จำกัด

bistecthai.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : ร้านอาหาร ไหมไทย

ร้านอาหาร ไหมไทย

maithaibenicia.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท ฟิลเตอร์วิชั่น จำกัด (มหาชน)

บริษัท ฟิลเตอร์วิชั่น จำกัด (มหาชน)

filtervision.co.th
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : สนามบินตราด - บริษัท การบินกรุงเทพ จำกัด (มหาชน)

สนามบินตราด - บริษัท การบินกรุงเทพ จำกัด (มหาชน)

tratairport.com
ลูกค้า รับทําเว็บไซต์ ออกแบบเว็บไซต์ : บริษัท ฟังก์ชั่น อินเตอร์เนชั่นแนล จำกัด

บริษัท ฟังก์ชั่น อินเตอร์เนชั่นแนล จำกัด

functioninter.com

สนใจใช้บริการ รับทำเว็บไซต์ กับบริษัท ซอฟท์เมลท์ จำกัด? ส่ง ข้อความ

ราคาแพ็คเกจ รับทำเว็บไซต์ รับออกแบบเว็บไซต์

ราคาแพ็คเกจ รับทำเว็บไซต์ รับออกแบบเว็บไซต์ ราคาแพ็คเกจ รับทำเว็บไซต์ รับออกแบบเว็บไซต์ ราคาแพ็คเกจ รับทำเว็บไซต์ รับออกแบบเว็บไซต์ ราคาแพ็คเกจ รับทำเว็บไซต์ รับออกแบบเว็บไซต์

ทำเว็บขายของ, ร้านค้าออนไลน์

เริ่มต้นธุรกิจออนไลน์เพื่อเตรียมต้อนรับ AEC กับเว็บไซต์ในยุคไทยแลนด์ 4.0 ในยุคของโลกดิจิทัลอย่างเต็มตัว ไม่ต้องลงทุนสูง อีกระดับการเป็นเจ้าของธุรกิจ SME ด้วยตัวคุณเอง ในราคาไม่แพง คุ้มค่า เพิ่มยอดขาย สร้างแบรนด์ให้เป็นที่รู้จัก ตรงใจธุรกิจของคุณ

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 9 - การติดตั้งใช้งาน Server บน Google Cloud Platform !!!...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 9 - การติดตั้งใช้งาน Server บน Google Cloud Platform !!!...

Google Cloud Platform คือ บริการ Cloud Services รูปแบบหนึ่งของ Google ที่มีผลิตภัณฑ์และบริ...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 8 - Kubernetes (คูเบอร์เนเตส หรือ K8s) กับการวางระบบ Server ที่ไม่มีวันล่ม !!!...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 8 - Kubernetes (คูเบอร์เนเตส หรือ K8s) กับการวางระบบ Server ที่ไม่มีวันล่ม !!!...

Kubernetes หรือ k8s เป็นซอฟต์แวร์ open source สำหรับใช้จัดการและควบคุม container ที่ทำงาน...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 7 - การเก็บ Docker Image บน Gitlab Container Registry !!!...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 7 - การเก็บ Docker Image บน Gitlab Container Registry !!!...

GitLab Container Registry คือ เป็น feature หนึ่งของทาง GitLab เอาไว้ใช้สำหรับเก็บ containe...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 6 - ขั้นตอนการติดตั้งใช้งาน Docker และ Docker Container !!!...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 6 - ขั้นตอนการติดตั้งใช้งาน Docker และ Docker Container !!!...

Docker นั้น เป็นที่รู้จักกันอย่างแพร่หลายในช่วงหลายปีที่ผ่านมานี้ เนื่องจากสามารถใช้งานได้...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 5 - Docker คืออะไร และมีข้อดีอย่างไรบ้าง !!!...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 5 - Docker คืออะไร และมีข้อดีอย่างไรบ้าง !!!...

เนื่องจากในการพัฒนา application สมัยก่อนทุก application จะใช้ environment เดียวกันซึ่งเป็น...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 4 - การเขียนคำสั่ง Gitlab CI บนไฟล์ .gitlab-ci.yml !!!...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 4 - การเขียนคำสั่ง Gitlab CI บนไฟล์ .gitlab-ci.yml !!!...

การทำ CI ใน Gitlab CI นั้น จำเป็นต้องสร้างไฟล์ .gitlab-ci.yml ไว้ในโฟลเดอร์ของโปรเจ็คซะก่อ...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 3 - การใช้งาน Firebase Hosting !!!

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 3 - การใช้งาน Firebase Hosting !!!

Firebase Hosting คือ ส่วนหนึ่งของบริการ Google Firebase สำหรับใช้ทำเป็น Web Hosting ที่ให้...

อ่านต่อ
การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 2 - การสร้าง Hybrid App ด้วย Ionic Framework...

การพัฒนา Project แบบ CI/CD ด้วย Gitlab ตอนที่ 2 - การสร้าง Hybrid App ด้วย Ionic Framework...

Ionic Framework คือ Framework ที่ช่วยให้พัฒนาแค่ครั้งเดียวแต่เราสามารถ Build ให้ออกมาใช้งา...

อ่านต่อ

รับทำเว็บไซต์

รับทำเว็บไซต์ มีเอกลักษณ์ไม่ซ้ำใคร รับทำเว็บไซต์ เพิ่มโอกาสในการขาย ให้ธุรกิจก้าวนำคู่แข่ง รองรับการแสดงผลทุกอุปกรณ์ มีเว็บไซต์สวยงามน่าเชื่อถือ ด้วยทีมงานคุณภาพ ผลงานกว่าพันผลงาน รับทำเว็บไซต์ ตรงใจธุรกิจของคุณ และช่วยเพิ่มโอกาสที่ดีกว่าให้ธุรกิจคุณ

รับทำเว็บไซต์ ทุกพื้นที่ ทั่วกรุงเทพฯ รับทำเว็บไซต์ รามคำแหง มีนบุรี บางกะปิ รับทำเว็บไซต์ ทวีวัฒนา ดอนเมือง สายไหม รับทำเว็บไซต์ บางขุนเทียน คลองสามวา ประเวศ รับทำเว็บไซต์ สะพานใหม่ สุขุมวิท เกษตร รับทำเว็บไซต์ รามอินทรา วังทองหลาง บางเขน รับทำเว็บไซต์ ลาดพร้าว คลองจั่น นวมินทร์ รับทำเว็บไซต์ สุขุมวิท ห้วยขวาง คลองเตย รับทำเว็บไซต์ พญาไท สาทร ดินแดง ทำเว็บไซต์ ปทุมวัน ราชเทวี รับทำเว็บไซต์ บึงกุ่ม บางนา ภาษีเจริญ ยานนาวา รับทำเว็บไซต์ จตุจักร ตลิ่งชัน สะพานสูง สวนหลวง

ติดต่อ รับทำเว็บไซต์

บริษัท ซอฟท์เมลท์ จำกัด :
1294 ห้อง 3 (เอ) ชั้น 3 ถนนสุทธิสาร วินิจฉัย ซอยอุดมสุข แขวงห้วยขวาง เขตห้วยขวาง กรุงเทพฯ 10310
Phone : 086-394-0954
Email : sales@softmelt.com
Line ID : softmelt

กรุณากรอกข้อมูล และหัวข้อ ที่ท่านสนใจทำเว็บไซต์ ทางทีมงานจะติดต่อกลับภายใน 24 ชั่วโมง