Cách thiết lập Nền tảng Cloud IDE server mã trên Ubuntu 18.04 [Quickstart]
server mã là Microsoft Visual Studio Code chạy trên server từ xa và có thể truy cập trực tiếp từ trình duyệt của bạn. Điều này nghĩa là bạn có thể sử dụng nhiều thiết bị khác nhau, chạy các hệ điều hành khác nhau và luôn có sẵn một môi trường phát triển nhất quán.Trong hướng dẫn này, bạn sẽ cài đặt nền tảng IDE cloud server mã trên máy tính Ubuntu 18.04 và hiển thị nó tại domain của bạn, được bảo mật bằng Let's Encrypt. Để 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 Cloud IDE server mã trên Ubuntu 18.04 .
Yêu cầu
Server chạy Ubuntu 18.04 với ít nhất 2GB RAM, quyền truy cập root và account sudo, không phải root. Bạn có thể cài đặt điều này theo Hướng dẫn Cài đặt Server Ban đầu cho Ubuntu 18.04 .
Nginx được cài đặt trên server của bạn. Để có hướng dẫn về cách thực hiện việc này, hãy hoàn thành các Bước từ 1 đến 4 của Cách cài đặt Nginx trên Ubuntu 18.04 .
Tên domain đã đăng ký đầy đủ cho server mã lưu trữ, được trỏ đến server của bạn. Hướng dẫn này sẽ sử dụng
code-server.your-domain
xuyên suốt. Bạn có thể mua domain trên Namecheap , nhận một domain miễn phí trên Freenom hoặc sử dụng công ty đăng ký domain mà bạn chọn.Cả hai bản ghi DNS sau được cài đặt cho server của bạn. Bạn có thể theo dõi phần giới thiệu này về DigitalOcean DNS để biết chi tiết về cách thêm chúng.
- Một bản ghi với
your-domain
của bạn trỏ đến địa chỉ IP công cộng của server của bạn. - Một bản ghi A với
www. your-domain
trỏ đến địa chỉ IP công cộng của server của bạn.
- Một bản ghi với
Bước 1 - Cài đặt server mã
Tạo folder để lưu trữ tất cả dữ liệu cho server mã:
- mkdir ~/code-server
Điều hướng đến nó:
- cd ~/code-server
Truy cập trang phát hành Github của server mã và chọn bản dựng Linux mới nhất. Download bằng cách sử dụng:
- wget https://github.com/cdr/code-server/releases/download/2.1692-vsc1.39.2/code-server2.1692-vsc1.39.2-linux-x86_64.tar.gz
Extract repository :
- tar -xzvf code-server2.1692-vsc1.39.2-linux-x86_64.tar.gz
Điều hướng đến folder chứa file thực thi server mã:
- cd code-server2.1692-vsc1.39.2-linux-x86_64
Để truy cập file thực thi server mã trên hệ thống của bạn, hãy sao chép nó bằng:
- sudo cp code-server /usr/local/bin
Tạo một folder cho server mã để lưu trữ dữ liệu user :
- sudo mkdir /var/lib/code-server
Tạo một dịch vụ systemd
, code-server.service
, trong folder /lib/systemd/system
:
- sudo nano /lib/systemd/system/code-server.service
Thêm các dòng sau:
[Unit] Description=code-server After=nginx.service [Service] Type=simple Environment=PASSWORD=your_password ExecStart=/usr/local/bin/code-server --host 127.0.0.1 --user-data-dir /var/lib/code-server --auth password Restart=always [Install] WantedBy=multi-user.target
--host 127.0.0.1
liên kết nó vớilocalhost
.-
--user-data-dir /var/lib/code-server
đặt folder dữ liệu user của nó. -
--auth password
chỉ định rằng nó sẽ xác thực khách truy cập bằng password .
Hãy nhớ thay thế your_password
bằng password mong muốn của bạn.
Lưu và đóng file .
Khởi động dịch vụ server mã:
- sudo systemctl start code-server
Kiểm tra xem nó đã khởi động đúng chưa:
- sudo systemctl status code-server
Bạn sẽ thấy kết quả tương tự như:
Output● code-server.service - code-server Loaded: loaded (/lib/systemd/system/code-server.service; disabled; vendor preset: enabled) Active: active (running) since Mon 2019-12-09 20:07:28 UTC; 4s ago Main PID: 5216 (code-server) Tasks: 23 (limit: 2362) CGroup: /system.slice/code-server.service ├─5216 /usr/local/bin/code-server --host 127.0.0.1 --user-data-dir /var/lib/code-server --auth password └─5240 /usr/local/bin/code-server --host 127.0.0.1 --user-data-dir /var/lib/code-server --auth password ...
Cho phép dịch vụ server mã tự động khởi động sau khi server khởi động lại:
- sudo systemctl enable code-server
Bước 2 - Hiển thị server mã
Đến đây bạn sẽ cấu hình Nginx làm Reverse Proxy cho server mã.
Tạo code-server.conf
để lưu trữ cấu hình để hiển thị server mã tại domain của bạn:
- sudo nano /etc/nginx/sites-available/code-server.conf
Thêm các dòng sau để cài đặt khối server của bạn với các lệnh cần thiết:
server { listen 80; listen [::]:80; server_name code-server.your_domain; location / { proxy_pass http://localhost:8080/; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; proxy_set_header Accept-Encoding gzip; } }
Thay thế code-server.your_domain
bằng domain bạn muốn, sau đó lưu file .
Để làm cho cấu hình trang web này hoạt động, hãy tạo một softlink của nó:
- sudo ln -s /etc/nginx/sites-available/code-server.conf /etc/nginx/sites-enabled/code-server.conf
Kiểm tra tính hợp lệ của cấu hình:
- sudo nginx -t
Bạn sẽ thấy kết quả sau:
Outputnginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Để cấu hình có hiệu lực, hãy khởi động lại Nginx:
- sudo systemctl restart nginx
Bước 3 - Bảo mật domain của bạn
Bây giờ, bạn sẽ bảo mật domain của bạn bằng certificate Let's Encrypt TLS.
Thêm repository Certbot vào server của bạn:
- sudo add-apt-repository ppa:certbot/certbot
Cài đặt Certbot và plugin Nginx của nó:
- sudo apt install python-certbot-nginx
Cấu hình ufw
để chấp nhận truy cập được mã hóa:
- sudo ufw allow https
Đầu ra sẽ là:
OutputRule added Rule added (v6)
Reload nó để cấu hình có hiệu lực:
- sudo ufw reload
Đầu ra sẽ hiển thị:
OutputFirewall reloaded
Điều hướng đến domain server mã của bạn.
Nhập password server mã của bạn. Bạn sẽ thấy giao diện hiển thị tại domain của bạn .
Để bảo mật, hãy cài đặt certificate Let's Encrypt TLS bằng Certbot.
Yêu cầu certificate cho domain của bạn với:
- sudo certbot --nginx -d code-server.your_domain
Cung cấp địa chỉ email cho các thông báo khẩn cấp, chấp nhận Điều khoản dịch vụ của EFF và quyết định có chuyển hướng tất cả truy cập HTTP sang HTTPS hay không.
Đầu ra sẽ tương tự như sau:
OutputIMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/code-server.your_domain/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/code-server.your_domain/privkey.pem Your cert will expire on ... To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" ...
Certbot đã tạo thành công certificate TLS và áp dụng chúng vào cấu hình Nginx cho domain của bạn.
Kết luận
Đến đây bạn có server mã, một IDE cloud đa năng, được cài đặt trên server Ubuntu 18.04 của bạn, được hiển thị tại domain của bạn và được bảo mật bằng certificate Let's Encrypt. Để biết thêm thông tin, hãy xem tài liệu Visual Studio Code để biết thêm các tính năng và hướng dẫn chi tiết về các thành phần khác của server mã.
Các tin liên quan
Cách thiết lập server lưu trữ đối tượng bằng Minio trên Ubuntu 18.042019-12-13
Cách xây dựng server GraphQL trong Node.js bằng GraphQL-yoga và MongoDB
2019-12-12
Cách thiết lập server GraphQL trong Node.js với server Apollo và Sequelize
2019-12-12
Cách sử dụng Ansible để tự động thiết lập server ban đầu trên Ubuntu 18.04
2019-11-27
Cách sử dụng Ansible để tự động thiết lập server ban đầu trên Ubuntu 18.04
2019-11-27
Cách sử dụng Ansible để tự động thiết lập server ban đầu trên Ubuntu 18.04
2019-11-27
Sử dụng Sự kiện do server gửi trong Node.js để tạo ứng dụng thời gian thực
2019-11-18
Cách thiết lập front-end server PageKite trên Debian 9
2019-10-25
Cách thiết lập server trang kết thúc phía trước PageKite trên Debian 9
2019-10-25
Cách cài đặt Linux, Apache, MariaDB, PHP (LAMP) trên Debian 10
2019-07-15