GNU/Linux >> Znalost Linux >  >> Rocky Linux

Jak nainstalovat Visual Studio Code Cloud IDE na Rocky Linux 8

Visual Studio Code se stalo jedním z nejoblíbenějších IDE pro kódování. Má integrovanou podporu Git a Docker, debugger kódu, automatické dokončování kódu, schopnost pracovat se vzdálenými soubory a podporuje různé pluginy.

Vzhledem k tomu, že se vše přesouvá do cloudu, přístup k IDE dle vašeho výběru odkudkoli je perfektní pro moderní vývoj. Cloud IDE umožňuje spolupráci mezi vývojáři v reálném čase, čímž zvyšuje produktivitu. coder-server je aplikace, která vám umožňuje spouštět Visual Studio Code ze vzdáleného serveru a zpřístupňuje jej prostřednictvím libovolného prohlížeče.

Tento tutoriál vás naučí, jak nainstalovat Visual Studio Code IDE pomocí aplikace kódového serveru na vašem serveru Rocky Linux 8. Budete jej také vystavovat prostřednictvím veřejné domény spolu s podporou SSL.

Předpoklady

  1. Server se systémem Rocky Linux s alespoň 2 GB paměti RAM a 2 jádry CPU.

  2. Uživatel bez oprávnění root s právy sudo.

  3. Registrovaná doména a odkazující na server.

  4. Nginx nainstalovaný na vašem serveru.

  5. Ujistěte se, že je vše aktualizováno.

    $ sudo dnf update
    

Krok 1 – Konfigurace brány firewall

Prvním krokem je konfigurace firewallu. Rocky Linux je dodáván s firewallem Firewalld.

Zkontrolujte, zda je spuštěna brána firewall.

$ sudo firewall-cmd --state

Následující výstup dokazuje, že firewall běží.

running

Zkontrolujte aktuální povolené služby/porty.

$ sudo firewall-cmd --permanent --list-services

Měl by ukazovat následující výstup.

dhcpv6-client mdns ssh

Otevřete port 8080 pro kódový server.

$ sudo firewall-cmd --permanent --add-port=8080/tcp

Povolit porty HTTP a HTTPS.

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https

Znovu zkontrolujte stav brány firewall.

$ sudo firewall-cmd --permanent --list-all

Měli byste vidět podobný výstup.

public
  target: default
  icmp-block-inversion: no
  interfaces:
  sources:
  services: cockpit dhcpv6-client http https ssh
  ports: 8080/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

Chcete-li změny povolit, znovu načtěte bránu firewall.

$ sudo systemctl reload firewalld

Krok 2 – Instalace kódového serveru

code-server je dodáván s instalačním skriptem, který dokáže detekovat verzi Linuxu a nainstalovat příslušnou binárku pro váš server. Můžete otestovat instalační skript a zkontrolovat, zda bude nebo nebude na vašem serveru fungovat.

Spusťte následující příkaz pro provedení suché instalace.

$ curl -fsSL https://code-server.dev/install.sh | sh -s -- --dry-run
Rocky Linux 8.4 (Green Obsidian)
Installing v3.12.0 of the amd64 rpm package from GitHub.

+ mkdir -p ~/.cache/code-server
+ curl -#fL -o ~/.cache/code-server/code-server-3.12.0-amd64.rpm.incomplete -C - https://github.com/cdr/code-server/releases/download/v3.12.0/code-server-3.12.0-amd64.rpm
+ mv ~/.cache/code-server/code-server-3.12.0-amd64.rpm.incomplete ~/.cache/code-server/code-server-3.12.0-amd64.rpm
+ sudo rpm -i ~/.cache/code-server/code-server-3.12.0-amd64.rpm

rpm package has been installed.

To have systemd start code-server now and restart on boot:
  sudo systemctl enable --now [email protected]$USER
Or, if you don't want/need a background service you can run:
  code-server

Po úspěšném suchém běhu spusťte nastavení.

$ curl -fsSL https://code-server.dev/install.sh | sh

Instalační skript může vyžadovat vaše heslo sudo.

Povolte službu kódového serveru.

$ sudo systemctl enable [email protected]$USER

Pokud chcete aktualizovat svou instanci kódového serveru, opakujte proces instalace. code-server zachová vaše soubory a nastavení.

Krok 3 – Konfigurace kódového serveru

code-server ukládá svůj konfigurační soubor na ~/.config/code-server/config.yaml . Otevřete jej pro úpravy.

$ sudo nano ~/.config/code-server/config.yaml

Zde jsou výchozí nastavení nastavená během instalace.

bind-addr: 127.0.0.1:8080
auth: password
password: a4768b3439e5e93b5d62489b
cert: false

Výchozí konfigurační soubor umožňuje následující chování:

  • Poslouchejte na portu IP 8080 se zpětnou smyčkou
  • Umožňuje autorizaci hesla pomocí náhodně vygenerovaného hesla
  • Nepoužívá TLS

Heslo můžete změnit změnou jeho hodnoty v souboru.

Pokud chcete uložit hašovanou verzi hesla, musíte nejprve nainstalovat npm. Po instalaci spusťte následující příkaz pro nastavení hashovaného hesla.

$ echo -n "thisismypassword" | npx argon2-cli -e
$argon2i$v=19$m=4096,t=3,p=1$wst5qhbgk2lu1ih4dmuxvg$ls1alrvdiwtvzhwnzcm1dugg+5dto3dt1d5v9xtlws4

Hašovanou hodnotu získáte na svém terminálu. Zkopírujte jej a vložte do konfiguračního souboru.

auth: password
hashed-password: "$argon2i$v=19$m=4096,t=3,p=1$wST5QhBgk2lu1ih4DMuxvg$LS1alrVdIWtvZHwnzCM1DUGg+5DTO3Dt1d5v9XtLws4"

Nezapomeňte zabalit hashované heslo do uvozovek. Pokud chcete telemetrii zakázat, přidejte do souboru následující řádek.

disable-telemetry: false

V souboru můžete definovat další možnosti. Chcete-li zkontrolovat všechny další možnosti, které můžete přidat, použijte následující příkaz k zobrazení všech příznaků.

$ code-server --help

Uložte soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni po dokončení.

Krok 4 – Instalace protokolu SSL

Pro instalaci SSL certifikátu pomocí Let's Encrypt si musíme stáhnout nástroj Certbot. Nejprve však musíme nainstalovat úložiště EPEL.

Spuštěním následujících příkazů nainstalujte Certbot.

$ sudo dnf install epel-release
$ sudo dnf install certbot

Vygenerujte certifikát SSL.

$ sudo certbot certonly --standalone --agree-tos --preferred-challenges http -d code-server.example.com -m [email protected]

Výše uvedený příkaz stáhne certifikát do /etc/letsencrypt/live/code-server.example.com adresář na vašem serveru. Nezapomeňte nahradit [email protected] s vaším skutečným e-mailem.

Vytvořte skupinu Diffie-Hellman certifikát.

$ sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

Vytvořte adresář webroot s výzvou pro automatické obnovení Let's Encrypt.

$ sudo mkdir -p /var/lib/letsencrypt

Vytvořte úlohu Cron pro obnovení SSL. Poběží každý den, aby se zkontroloval certifikát a v případě potřeby se obnoví. Nejprve vytvořte soubor /etc/cron.daily/certbot-renew a otevřete jej pro úpravy.

$ sudo nano /etc/cron.daily/certbot-renew

Vložte následující kód.

#!/bin/sh
certbot renew --cert-name example.com --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl reload nginx"

Uložte soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni.

Změňte oprávnění k souboru úlohy, aby byl spustitelný.

$ sudo chmod +x /etc/cron.daily/certbot-renew

Krok 5 – Instalace a konfigurace Nginx

Vytvořte a otevřete /etc/yum.repos.d/nginx.repo soubor pro vytvoření oficiálního úložiště Nginx.

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

Uložte soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni.

Nainstalujte server Nginx.

$ sudo dnf install nginx

Povolte službu Nginx.

$ sudo systemctl enable nginx

Vytvořte konfigurační soubor pro kódový server v /etc/nginx/conf.d adresář.

$ sudo nano /etc/nginx/conf.d/code-server.conf

Vložte do něj následující kód.

server {
    	listen 80; listen [::]:80;
	    server_name code-server.example.com;
    	return 301 https://$host$request_uri;
}

server {
        server_name code-server.example.com;

        listen 443 ssl http2;
        listen [::]:443 ssl http2;

        access_log /var/log/nginx/code-server.access.log;
        error_log /var/log/nginx/code-server.error.log;

        ssl_certificate /etc/letsencrypt/live/code-server.example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/code-server.example.com/privkey.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/code-server.example.com/chain.pem;
        ssl_session_timeout 1d;
        ssl_session_cache shared:MozSSL:10m;
        ssl_session_tickets off;

        ssl_protocols TLSv1.2 TLSv1.3;
        ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;

        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_dhparam /etc/ssl/certs/dhparam.pem;
 
	   location / {
	       proxy_pass http://localhost:8080/;
	       proxy_set_header Host $host;
	       proxy_set_header Upgrade $http_upgrade;
	       proxy_set_header Connection upgrade;
	       proxy_set_header Accept-Encoding gzip;
	   }
}

Uložte soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni.

Ověřte konfigurační soubor.

$ sudo nginx -t

Pokud se zobrazí následující chyba, budete muset upravit soubor /etc/nginx/nginx.conf přidat/upravit velikost proměnné server_names_hash_bucket_size .

nginx: [emerg] could not build the server_names_hash, you should increase server_names_hash_bucket_size

Otevřete soubor /etc/nginx/nginx.conf pro úpravy.

$ sudo nano /etc/nginx/nginx.conf

Přidejte následující řádek před řádek include /etc/nginx/conf.d/*.conf; .

server_names_hash_bucket_size  64;

Uložte soubor stisknutím Ctrl + X a zadáním Y po výzvě. Znovu ověřte Nginx.

Spusťte server Nginx.

$ sudo systemctl start nginx

Krok 6 – Použití kódového serveru

Spusťte doménu https://code-server.example.com ve vašem prohlížeči a zadejte heslo pro ověření vaší instalace kódového serveru. Zadejte heslo z konfiguračního souboru.

code-server se zeptá na nastavení kódu VS při prvním spuštění.

Vyberte barevné schéma, projděte zbývající části a klikněte na Označit jako hotové až skončí.

Závěr

Nyní máte na serveru Rocky Linux nainstalovanou instanci Visual Studio Code. Ve srovnání s oficiálním kodexem VS existují určitá upozornění. Dostupná rozšíření nejsou oficiální rozšíření, ale nabízená z neoficiálního úložiště kódového serveru. Chcete-li nainstalovat oficiální rozšíření, můžete se podívat na jejich oficiální dokumenty. Bude to vyžadovat určité úsilí. Pokud máte nějaké dotazy, napište je do komentářů níže.


Rocky Linux
  1. Jak nainstalovat MariaDB 10.6 na Rocky Linux 8

  2. Jak nainstalovat Docker na Rocky Linux 8

  3. Jak nainstalovat MariaDB na Rocky Linux 8

  1. Jak nainstalovat Cockpit na Rocky Linux 8

  2. Jak nainstalovat GitLab na Rocky Linux 8

  3. Jak nainstalovat kód Visual Studio na Fedora 36 Linux

  1. Jak nainstalovat kód Visual Studio na Rocky Linux 8 a CentOS 8

  2. Jak nainstalovat FreeIPA na Rocky Linux 8

  3. Jak nainstalovat kód Visual Studio na Rocky Linux 8