Поиск по сайту:

Как установить Visual Studio Code — Server IDE на Ubuntu 18.04 LTS


Это руководство существует для этих версий ОС

  • Ubuntu 20.04 (Focal Fossa)
  • Ubuntu 18.04 (Bionic Beaver)

На этой странице

  1. Шаг 1. Добавьте пользователя и загрузите двоичный файл Code-Server
  2. Шаг 2. Настройка Code-Server в качестве службы Systemd
  3. Шаг 3. Создание SSL Letsencrypt
  4. Шаг 4. Настройте Nginx в качестве обратного прокси-сервера
  5. Шаг 5. Тестирование
  6. Справочник

Код-сервер — это код Visual Studio (VS), который можно запускать удаленно на сервере и который доступен через веб-браузер. Это позволяет вам создавать и иметь согласованную среду разработки, к которой можно получить доступ в любое время и в любом месте.

В этом руководстве мы покажем вам, как установить сервер кода с Nginx в качестве обратного прокси-сервера и SSL Letsencrypt на последней версии сервера Ubuntu 18.04.

Предпосылки

Для этого руководства мы установим сервер кода на сервер Ubuntu 18.04 с 3 ГБ ОЗУ, 25 ГБ свободного места на диске и 2 ЦП.

Что мы будем делать:

  • Добавить пользователя и загрузить двоичный файл Code-server
  • Настройка Code-server как службы Systemd
  • Создать SSL Letsencrypt
  • Настройка Nginx в качестве обратного прокси-сервера для Code-server
  • Тестирование

Шаг 1. Добавьте пользователя и загрузите двоичный файл Code-Server.

Сначала мы добавим нового пользователя и загрузим двоичный файл code-server с GitHub.

Добавьте новый код пользователя с помощью приведенной ниже команды.

useradd -m -s /bin/bash code
passwd code

Теперь войдите в систему как пользователь кода и загрузите двоичный файл сервера кода.

su - code
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

Извлеките код-сервер и переименуйте каталог в bin.

tar -xf code-server2.1692-vsc1.39.2-linux-x86_64.tar.gz
mv code-server2.1692-vsc1.39.2-linux-x86_64/ bin/

Теперь сделайте код-сервер в виде исполняемого бинарного файла.

chmod +x ~/bin/code-server

И создайте новый каталог данных для хранения пользовательских данных.

mkdir -p ~/data

Теперь вы создали новый код пользователя и загрузили двоичный код сервера кодов в домашний каталог кода пользователя.

Шаг 2. Настройте Code-Server как службу Systemd

На этом шаге мы настроим код-сервер для работы в качестве системной службы.

Служба сервера кодов будет работать под кодом пользователя, с портом по умолчанию 8080 и включенной аутентификацией по паролю.

Перейдите в каталог /etc/systemd/system и создайте новый служебный файл code-server.service с помощью редактора vim.

cd /etc/systemd/system/
vim code-server.service

Измените параметр Environment для пароля на свой собственный и вставьте в него конфигурацию.

[Unit]
Description=code-server
After=nginx.service

[Service]
User=code
WorkingDirectory=/home/code
Environment=PASSWORD=hakasevscodeserv
ExecStart=/home/code/bin/code-server --host 127.0.0.1 --user-data-dir /home/code/data --auth password
Restart=always

[Install]
WantedBy=multi-user.target

Сохранить и закрыть.

Теперь перезагрузите системный менеджер.

systemctl daemon-reload

После этого запустите службу code-server и добавьте ее в загрузку системы с помощью следующей команды.

systemctl start code-server
systemctl enable code-server

Теперь проверьте службу кодового сервера.

netstat -plntu
systemctl status code-server

И служба кодового сервера запущена и работает на порту 8080 по умолчанию.

В результате вы настроили код-сервер для работы в качестве системной службы.

Шаг 3 — Сгенерируйте SSL Letsencrypt

На этом этапе мы создадим SSL letsencrypt, используя инструмент certbot для защиты сервера кодов.

Установите инструмент certbot с помощью приведенной ниже команды apt.

sudo apt install certbot -y

После завершения установки сгенерируйте SSL letsencrypt с помощью приведенной ниже команды certbot.

certbot certonly --standalone --agree-tos -m  -d vscode.hakase-labs.io

После завершения ваши сертификаты будут расположены в каталоге /etc/letsencrypt/live/vscode.hakase-labs.io/.

ls -lah /etc/letsencrypt/live/vscode.hakase-labs.io/

Теперь вы сгенерировали SSL Letsencrypt для защиты установки сервера кодов с помощью инструмента certbot.

Шаг 4. Настройте Nginx в качестве обратного прокси.

На этом этапе мы установим веб-сервер Nginx и настроим его в качестве обратного прокси-сервера для кода-сервера с включенным SSL поверх него.

Установите пакет Nginx с помощью приведенной ниже команды apt.

sudo apt install nginx -y

После завершения установки перейдите в каталог /etc/nginx/sites-available и создайте новый код-сервер конфигурации виртуального хоста.

cd /etc/nginx/sites-available/
vim code-server

Теперь измените доменное имя и путь SSL на свои собственные и вставьте в него конфигурацию.

server {
listen 80;
server_name vscode.hakase-labs.io;
# enforce https
return 301 https://$server_name:443$request_uri;
}

server {
listen 443 ssl http2;
server_name vscode.hakase-labs.io;

ssl_certificate /etc/letsencrypt/live/vscode.hakase-labs.io/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/vscode.hakase-labs.io/privkey.pem;

location / {
proxy_pass http://127.0.0.1:8080/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
}
}

Сохранить и закрыть.

Теперь активируйте виртуальный хост code-server, протестируйте конфигурацию nginx и убедитесь в отсутствии ошибок.

ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/
nginx -t

После этого перезапустите службу nginx и добавьте ее в загрузку системы.

systemctl restart nginx
systemctl enable nginx

Теперь служба Nginx запущена и работает как обратный прокси-сервер для кода-сервера. Проверьте это с помощью приведенной ниже команды.

netstat -plntu
systemctl status nginx

И вы получите результат, как показано ниже.

Служба Nginx запущена и работает на сервере Ubuntu 18.04 с включенными портами HTTP и HTTPS.

Шаг 5 - Тестирование

Откройте веб-браузер и введите URL-адрес установки вашего кодового сервера.

https://vscode.hakase-labs.io/

Войдите в систему с вашим паролем, который вы настроили в служебном файле сервера кодов.

Как только пароль будет правильным, вы получите редактор кода VS в своем веб-браузере, как показано ниже.

В результате вы установили код-сервер на сервер Ubuntu 18.04 с Nginx в качестве обратного прокси-сервера и защитили установку код-сервера с помощью SSL Letsencrypt.

Ссылка

  • https://github.com/cdr/code-server