GcallsCE Bản Dev - Ubuntu
🇻🇳 (vi)

Hướng dẫn này được viết cho Ubuntu 20.04 LTS (Focal Fossa)
I. Điều kiện tiên quyết
- Yêu cầu:- RAM 8GB trở lên
- CPU 6 Core trở lên
- Dung lượng 2GB trở lên
 
- Chuẩn bị: - Quyền truy cập vào source code Gcalls Plus Webphone của Gcalls
- nvm
- git
- node
- npm
- Visual Studio Code (Hoặc Code editor khác mà bạn thích, *)
- software-properties-common, apt-transport-https (cho Visual Studio Code)
- curl, wget
- pm2
- docker-compose
- docker
 
(*) Có thể không cần code editor hay IDE => thao tác 100% trên giao diện Ubuntu và Ubuntu Terminal hoặc chỉ Ubuntu Terminal
II. Đối tượng đọc:
- Customer Success Engineer (CSE)
- Contributor
Có liên quan tới:- Dev
- DevOps
 
III. Cài đặt phần mềm và tool cần thiết (bỏ qua bước này nếu đã cài mọi thứ trong danh sách chuẩn bị ở bước trên)
Thao tác qua Terminal của Ubuntu Trước tiên
```
sudo apt update
```
1. git
sudo apt install git-all
- Kiểm tra git: git --version
2. curl và wget
sudo apt update
- curlsudo apt install curl
- wgetsudo apt install software-properties-common apt-transport-https wget
3. nvm
Cài nvm bằng curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
Hoặc cài nvm bằng wget
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
Thêm vào bashrc
source ~/.bashrc
- Kiểm tra nvm: nvm -v
4. node và npm
Cài đặt node v16
nvm install v16
- Kiểm tra node và npm: node -v
 npm -v
5. VS Code (tùy chọn)
5.1 Cập nhật index package và cài dependencies cần thiết (software-properties-common apt-transport-https và wget):
sudo apt update
sudo apt install software-properties-common apt-transport-https wget
5.2 Nhập GPG key từ Microsoft:
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
5.3 Enable repository của VS Code:
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
5.4 Khi repo đã được enabled, tiến hành cài đặt VS Code:
sudo apt install code
- Kiểm tra VS Code:code -v
6. pm2
- Cài đặt pm2:npm install pm2@latest -g
- Kiểm tra pm2:pm2 --version
7. Docker
- Cập nhật package:sudo apt-get update
 sudo apt-get install
- Thêm keyring và sourcelist:sudo mkdir -p /etc/apt/keyrings
 cd /etc/apt/keyrings
 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
 echo \
 "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
 $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
 sudo apt-get update
- Cài đặt Docker:sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
- Kiểm tra Docker:docker -v
8. docker-compose
- Cài đặt dependency cần thiết (curl):sudo apt install curl
- Cài đặt docker-compose:sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- Cấp quyền executable cho docker-compose:sudo chmod +x /usr/local/bin/docker-compose
- Kiểm tra docker-compose:docker-compose -v
IV. Cài đặt source code
Có thể thao tác qua 1 trong các hướng sau:
- Terminal
- Giao diện và Terminal
- Giao diện, Terminal và VS Code Terminal
Hướng dẫn dưới đây sẽ thao tác qua Ubuntu Terminal và VS Code Terminal
Mở terminal (Crl+Alt+T)
1. Tải và thiết lập repo
    git init
- gcalls-community-version:
    git clone https://gitlab.com/gcalls/gcallsce
    cd gcallsce
    git submodule update --init --recursive
2. Cài đặt Gcalls Plus Webphone:
- Truy cập gcallsbash và khởi tạo các service:cd gcallsbash/gcalls-community-edition/nonDocker
 sh gcallsCE-install.sh
- Lần lượt cài đặt các service với lệnh npm installvà start lên bằngnpm starthoặc
- Chạy script cài đặt project- Cài đặt GcallsCE:cd gcallsbash/gcalls-community-edition/nonDocker
 sh gcallsCE-install.sh
 
- Cài đặt GcallsCE:
- Lần lượt các service của Gcalls Plus Webphone sẽ chạy sau khi được cài
- Lần sau khi cần khởi động Gcalls Plus Webphone, chạy script sau:sh gcallsCE-start.sh
- Kiểm tra Gcalls Plus Webphone- Kiểm tra tình trạng của các servicepm2 status
- Kiểm tra log của từng servicepm2 log <số thứ tự của service xem theo pm2 status>
 
- Kiểm tra tình trạng của các service
5. Cài đặt Keycloak (Quản lý tài khoản và xác thực) bản Docker và Logstash (Quản lý loggging)
- Tham khảo Hướng dẫn cài đặt Keycloak
6. Database
- Tham khảo Hướng dẫn cài đặt MongoDB
- Tham khảo Hướng dẫn cài đặt Postgres
V. Kết luận
- Để sử dụng Gcalls Webphone, truy cập vào localhost:4004 (frontend của Gcalls Plus Webphone) để sử dụng Gcalls Plus Webphone
- Truy cập localhost:8080 (frontend của Keycloak) để quản lý tài khoản/ credential ở các callcenter sử dụng tài khoản trong file docker-compose. Tham khảo Video hướng dẫn sử dụng Gcalls Plus Webphone