Code-server je kód Visual Studio (VS), který lze spouštět vzdáleně na serveru a který je přístupný prostřednictvím webového prohlížeče. Umožňuje vám vytvářet a mít konzistentní vývojové prostředí, ke kterému lze přistupovat kdykoli a odkudkoli.
V tomto tutoriálu vám ukážeme, jak nainstalovat kódový server s Nginx jako reverzní proxy a SSL Letsencrypt na nejnovější server Ubuntu 18.04.
Předpoklady
Pro tuto příručku nainstalujeme Code-server na server Ubuntu 18.04 s 3 GB RAM, 25 GB volného místa na disku a 2 CPU.
Co uděláme:
- Přidat uživatele a stáhnout binární kódový server
- Nastavit kódový server jako službu Systemd
- Vygenerujte SSL Letsencrypt
- Nastavte Nginx jako reverzní proxy pro kódový server
- Testování
Krok 1 – Přidání uživatele a stažení binárního kódu serveru
Nejprve přidáme nového uživatele a stáhneme binární soubor code-server z GitHubu.
Přidejte nový uživatelský 'kód' pomocí příkazu níže.
useradd -m -s /bin/bash code
passwd code
Nyní se přihlaste jako 'code' user a stáhněte si binární soubor code-server.
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
Rozbalte kódový server a přejmenujte adresář na '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/
Nyní vytvořte kódový server jako spustitelný binární soubor.
chmod +x ~/bin/code-server
A vytvořte nový datový adresář pro uložení uživatelských dat.
mkdir -p ~/data
Nyní jste vytvořili nový uživatelský 'kód' a stáhli binární kód-server do domovského adresáře uživatelského 'kódu'.
Krok 2 – Nastavení kódového serveru jako služby Systemd
V tomto kroku nastavíme kódový server, aby běžel jako systémová služba.
Služba kódového serveru poběží pod uživatelským 'kódem', s výchozím portem '8080' a povoleným ověřováním heslem.
Přejděte do adresáře '/etc/systemd/system' a vytvořte nový soubor služby 'code-server.service' pomocí editoru vim.
cd /etc/systemd/system/
vim code-server.service
Změňte možnost 'Prostředí' pro heslo za své vlastní a vložte do něj konfiguraci.
[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
Uložit a zavřít.
Nyní znovu načtěte správce systému.
systemctl daemon-reload
Poté spusťte službu kódového serveru a přidejte ji do spouštění systému pomocí následujícího příkazu.
systemctl start code-server
systemctl enable code-server
Nyní zkontrolujte službu kódového serveru.
netstat -plntu
systemctl status code-server
A služba kódového serveru je spuštěna a běží na výchozím portu '8080'.
V důsledku toho jste nastavili kódový server tak, aby běžel jako systémová služba.
Krok 3 – Vygenerování SSL Letsencrypt
V tomto kroku vygenerujeme SSL letsencrypt pomocí nástroje certbot pro zabezpečení kódového serveru.
Nainstalujte nástroj certbot pomocí příkazu apt níže.
sudo apt install certbot -y
Po dokončení instalace vygenerujte SSL letsencrypt pomocí příkazu certbot níže.
certbot certonly --standalone --agree-tos -m [email protected] -d vscode.hakase-labs.io
Po dokončení budou vaše certifikáty umístěny v adresáři '/etc/letsencrypt/live/vscode.hakase-labs.io/'.
ls -lah /etc/letsencrypt/live/vscode.hakase-labs.io/
Nyní jste vygenerovali SSL Letsencrypt pro zabezpečení instalace kódového serveru pomocí nástroje certbot.
Krok 4 – Nastavení Nginx jako reverzního proxy
V tomto kroku nainstalujeme webový server Nginx a nastavíme jej jako reverzní proxy pro kódový server s povoleným SSL.
Nainstalujte balíček Nginx pomocí příkazu apt níže.
sudo apt install nginx -y
Po dokončení instalace přejděte do adresáře '/etc/nginx/sites-available' a vytvořte novou konfiguraci virtuálního hostitele 'code-server'.
cd /etc/nginx/sites-available/
vim code-server
Nyní změňte název domény a cestu SSL za vlastní a vložte do něj konfiguraci.
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;
}
}
Uložit a zavřít.
Nyní aktivujte virtuální hostitel 'code-server', otestujte konfiguraci nginx a ujistěte se, že nedochází k chybě.
ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/
nginx -t
Poté restartujte službu nginx a přidejte ji do spouštění systému.
systemctl restart nginx
systemctl enable nginx
Nyní je služba Nginx spuštěna a běží jako reverzní proxy pro kódový server. Zkontrolujte to pomocí příkazu níže.
netstat -plntu
systemctl status nginx
A dostanete výsledek, jak je uvedeno níže.
Služba Nginx je spuštěna a spuštěna na serveru Ubuntu 18.04 s povolenými porty HTTP a HTTPS.
Krok 5 – Testování
Otevřete webový prohlížeč a zadejte adresu URL vaší instalace kódového serveru.
https://vscode.hakase-labs.io/
Přihlaste se pomocí svého hesla, které jste nakonfigurovali v souboru služby kódového serveru.
Jakmile je heslo správné, dostanete do svého webového prohlížeče editor kódu VS, jak je uvedeno níže.
V důsledku toho jste nainstalovali kódový server na server Ubuntu 18.04 s Nginx jako reverzní proxy a zabezpečení instalace kódového serveru pomocí SSL Letsencrypt.