Thứ hai, 10/02/2020 | 00:00 GMT+7

Cách thiết lập Nền tảng Eclipse Theia Cloud IDE trên Ubuntu 18.04 [Khởi động nhanh]

Eclipse Theia là một IDE cloud có thể mở rộng chạy trên server từ xa và có thể truy cập được từ trình duyệt web. Về mặt trực quan, nó được thiết kế để trông và hoạt động tương tự như Microsoft Visual Studio Code . Điều tách biệt Eclipse Theia với phần mềm IDE cloud khác là khả năng mở rộng của nó; nó có thể được sửa đổi bằng cách sử dụng các tiện ích mở rộng tùy chỉnh, cho phép bạn tạo IDE cloud phù hợp với nhu cầu của bạn .

Trong hướng dẫn này, bạn sẽ triển khai Eclipse Theia tới server Ubuntu 18.04 của bạn bằng Docker Compose. Bạn sẽ hiển thị nó tại domain của bạn bằng cách sử dụng nginx-proxy và bảo mật nó bằng chứng chỉ Let's Encrypt TLS , chứng chỉ mà bạn sẽ cung cấp bằng một tiện ích bổ sung . Để có version chi tiết hơn của hướng dẫn này, vui lòng tham khảo Cách cài đặt Nền tảng Eclipse Theia Cloud IDE trên Ubuntu 18.04 .

Yêu cầu

Bước 1 - Triển khai nginx-proxy với Let's Encrypt

Tạo folder để lưu trữ tất cả dữ liệu cho Eclipse Theia:

  • mkdir ~/eclipse-theia

Điều hướng đến nó:

  • cd ~/eclipse-theia

Tạo nginx-proxy-compose.yaml để lưu trữ cấu hình Docker Compose cho nginx-proxy :

  • nano nginx-proxy-compose.yaml

Thêm các dòng sau:

~ / eclipse-theia / nginx-proxy-compos.yaml
version: '2'  services:   nginx-proxy:     restart: always     image: jwilder/nginx-proxy     ports:       - "80:80"       - "443:443"     volumes:       - "/etc/nginx/htpasswd:/etc/nginx/htpasswd"       - "/etc/nginx/vhost.d"       - "/usr/share/nginx/html"       - "/var/run/docker.sock:/tmp/docker.sock:ro"       - "/etc/nginx/certs"    letsencrypt-nginx-proxy-companion:     restart: always     image: jrcs/letsencrypt-nginx-proxy-companion     volumes:       - "/var/run/docker.sock:/var/run/docker.sock:ro"     volumes_from:       - "nginx-proxy" 

Ở đây, bạn đang xác định hai dịch vụ mà Docker Compose sẽ chạy, nginx-proxy và đồng hành Let's Encrypt của nó. Đối với proxy, bạn chỉ định jwilder/nginx-proxy làm hình ảnh, ánh xạ các cổng HTTP và HTTPS và xác định các dung lượng sẽ có thể truy cập được trong thời gian chạy.

Lưu và đóng file .

Triển khai cấu hình:

  • docker-compose -f nginx-proxy-compose.yaml up -d

Kết quả cuối cùng sẽ như thế này:

Output
Creating network "eclipse-theia_default" with the default driver Pulling nginx-proxy (jwilder/nginx-proxy:)... latest: Pulling from jwilder/nginx-proxy 8d691f585fa8: Pull complete 5b07f4e08ad0: Pull complete ... Digest: sha256:dfc0666b9747a6fc851f5fb9b03e65e957b34c95d9635b4b5d1d6b01104bde28 Status: Downloaded newer image for jwilder/nginx-proxy:latest Pulling letsencrypt-nginx-proxy-companion (jrcs/letsencrypt-nginx-proxy-companion:)... latest: Pulling from jrcs/letsencrypt-nginx-proxy-companion 89d9c30c1d48: Pull complete 668840c175f8: Pull complete ... Digest: sha256:a8d369d84079a923fdec8ce2f85827917a15022b0dae9be73e6a0db03be95b5a Status: Downloaded newer image for jrcs/letsencrypt-nginx-proxy-companion:latest Creating eclipse-theia_nginx-proxy_1 ... done Creating eclipse-theia_letsencrypt-nginx-proxy-companion_1 ... done

Bước 2 - Triển khai Dockerized Eclipse Theia

nginx-proxy cầu các tổ hợp đăng nhập nằm trong một file được đặt tên theo domain được tiếp xúc, ở định dạng htpasswd và được lưu trữ trong folder /etc/nginx/htpasswd trong containers .

Cài đặt htpasswd :

  • sudo apt install apache2-utils

Gói apache2-utils chứa tiện ích htpasswd .

Tạo folder /etc/nginx/htpasswd :

  • sudo mkdir -p /etc/nginx/htpasswd

Tạo một file để lưu trữ thông tin đăng nhập cho domain của bạn:

  • sudo touch /etc/nginx/htpasswd/theia.your-domain

Chạy lệnh sau với tổ hợp tên user và password :

  • sudo htpasswd /etc/nginx/htpasswd/theia.your-domain username

htpasswd sẽ thêm cặp tên user và password băm vào cuối file .

Tạo cấu hình để triển khai Eclipse Theia:

  • nano eclipse-theia-compose.yaml

Thêm các dòng sau:

~ / eclipse-theia / eclipse-theia-compos.yaml
version: '2.2'  services:   eclipse-theia:     restart: always     image: theiaide/theia:next     init: true     environment:       - VIRTUAL_HOST=theia.your-domain       - LETSENCRYPT_HOST=theia.your-domain 

Bạn xác định một dịch vụ duy nhất được gọi là eclipse-theia với restart được đặt thành alwaystheiaide/theia:next là containers images . Bạn cũng đặt init thành true . Sau đó, bạn chỉ định hai biến môi trường trong phần environment : VIRTUAL_HOSTLETSENCRYPT_HOST .

Lưu và đóng file .

Bây giờ triển khai Eclipse Theia bằng lệnh:

  • docker-compose -f eclipse-theia-compose.yaml up -d

Kết quả cuối cùng sẽ giống như sau:

Output
... Pulling eclipse-theia (theiaide/theia:next)... next: Pulling from theiaide/theia 63bc94deeb28: Pull complete 100db3e2539d: Pull complete ... Digest: sha256:c36dff04e250f1ac52d13f6d6e15ab3e9b8cad9ad68aba0208312e0788ecb109 Status: Downloaded newer image for theiaide/theia:next Creating eclipse-theia_eclipse-theia_1 ... done

Điều hướng đến domain bạn đang sử dụng cho Eclipse Theia. Trình duyệt của bạn sẽ hiển thị cho bạn dấu nhắc yêu cầu bạn đăng nhập. Bạn sẽ vào Eclipse Theia và xem GUI trình soạn thảo của nó. Bạn cũng sẽ thấy một ổ khóa cho biết rằng kết nối được bảo mật.

Eclipse Theia GUI

Kết luận

Đến đây bạn có Eclipse Theia, một IDE cloud đa năng, được cài đặt trên server Ubuntu 18.04 của bạn bằng Docker Compose và nginx-proxy . Bạn đã bảo mật nó bằng certificate Let's Encrypt TLS miễn phí và cài đặt version để yêu cầu thông tin đăng nhập từ user . Bạn có thể làm việc trên mã nguồn và tài liệu của bạn với nó riêng lẻ hoặc cộng tác với group của bạn. Bạn cũng có thể thử xây dựng version Eclipse Theia của riêng mình nếu bạn cần thêm chức năng. Để biết thêm thông tin về cách thực hiện điều đó, hãy truy cập tài liệu Theia .


Tags:

Các tin liên quan

Cách sử dụng Cron để tự động hóa công việc trên Ubuntu 18.04
2020-01-31
Cách cài đặt và sử dụng Radamsa để Fuzz kiểm tra các chương trình và dịch vụ mạng trên Ubuntu 18.04
2020-01-30
Cách cài đặt Tinc và thiết lập VPN cơ bản trên Ubuntu 18.04
2020-01-21
Cách thiết lập Nền tảng Eclipse Theia Cloud IDE trên Ubuntu 18.04
2020-01-06
Cách sử dụng Ansible để cài đặt và thiết lập WordPress với LAMP trên Ubuntu 18.04
2019-12-31
Cách cài đặt WordPress với OpenLiteSpeed trên Ubuntu 18.04
2019-12-18
Cách sử dụng Ansible để cài đặt và thiết lập LAMP trên Ubuntu 18.04
2019-12-17
Cách sử dụng Ansible để cài đặt và thiết lập LEMP trên Ubuntu 18.04
2019-12-05
Cách cài đặt và sử dụng TimescaleDB trên Ubuntu 18.04
2019-12-04
Cách lấy chứng chỉ Let's Encrypt bằng Ansible trên Ubuntu 18.04
2019-11-14