Solução da comunidade

Instalar o code-server no CasaOS com o BigBearCasaOS: imagem atual, espaço de trabalho persistente, PUID/PGID e segurança Web

A November 2023 Community post pointing to a BigBearCasaOS tutorial for browser-based VS Code. The forum body does not preserve the installation configuration. BigBearCasaOS still maintains code-server today using the LinuxServer.io image, so the current package and upstream documentation are the durable sources.

A publicação no fórum de 2023 é essencialmente uma referência para um tutorial externo do BigBearCasaOS, não um registo completo da instalação. A boa notícia é que o pacote subjacente continua a ser mantido: o BigBearCasaOS continua a disponibilizar o code-server utilizando a imagem do LinuxServer.io.

Uma implementação atual deve dar prioridade à configuração persistente/área de trabalho, à identidade correta de utilizador/grupo para as pastas de projetos montadas e à autenticação. O code-server permite aceder, através de um navegador, a uma shell e a um editor dos seus ficheiros, pelo que expô-lo casualmente na Internet pública representa um risco muito maior do que expor um painel multimédia apenas de leitura.

O BigBearCasaOS continua a manter o code-server

O pacote atual do BigBear mapeia a configuração persistente e as pastas de projetos, além de expor a WebUI do code-server do LinuxServer através de uma porta do anfitrião.

Consulte o pacote atual do code-server do BigBear.

Torne o /config persistente

A imagem atual do code-server do LinuxServer armazena a configuração relevante em /config. Mantenha esse diretório no AppData do CasaOS ou noutra localização de armazenamento persistente, para que as definições do utilizador, a configuração de SSH, as extensões e o estado da área de trabalho sobrevivam à recriação do contentor.

Mapeie deliberadamente a pasta de projetos real

O BigBear também expõe um volume de projetos. Se o código-fonte já estiver numa partilha NAS ou num disco de armazenamento, mapeie apenas a árvore de pastas de que o code-server realmente necessita, em vez de lhe conceder acesso de escrita amplo a todo o NAS.

Utilize o PUID e o PGID reais

A imagem atual do LinuxServer suporta PUID e PGID, para que os ficheiros criados através do editor no navegador correspondam ao modelo de propriedade do anfitrião.

Execute id username num anfitrião Linux normal com CasaOS para identificar o utilizador/grupo, em vez de presumir que 1000 está sempre correto.

Configure a autenticação antes da utilização normal

O LinuxServer suporta PASSWORD ou HASHED_PASSWORD. Se nenhum dos dois estiver definido, a WebUI pode ser executada sem autenticação.

Consulte as orientações atuais para o contentor code-server.

Considere o SUDO_PASSWORD uma funcionalidade opcional poderosa

A imagem pode disponibilizar o sudo dentro do contentor quando configurada para tal. Não o ative apenas porque um tutorial antigo apresenta esse campo. Um contentor de desenvolvimento acessível através de um navegador e com sudo é mais sensível do que um editor normal sem privilégios.

Prefira LAN, VPN ou um proxy inverso reforçado

Se o code-server tiver de ser acedido remotamente, utilize uma VPN/overlay autenticada ou um proxy inverso HTTPS cuidadosamente configurado. Proteja as chaves SSH, as credenciais do Git, os terminais e o código-fonte armazenado na área de trabalho.

Atualize recriando o contentor, não modificando internamente a imagem

O LinuxServer recomenda obter a imagem mais recente e recriar o contentor com o mesmo mapeamento persistente de /config. Desta forma, o contentor permanece descartável, enquanto o estado do utilizador continua fora dele.

Perguntas frequentes sobre o code-server no CasaOS

A publicação no fórum de 2023 é, por si só, um guia de instalação completo e atual?

Não. É uma referência para um tutorial externo do BigBear.

O BigBearCasaOS continua a manter o code-server?

Sim. O catálogo atual do BigBear continua a incluir o pacote code-server do LinuxServer.

Qual é o caminho persistente mais importante?

/config, além de qualquer pasta de projetos/área de trabalho separada que mapeie intencionalmente para o contentor.