Pergunta

Eu gostaria de criar uma VM no Virtual PC 2007 para uso como um ambiente de desenvolvimento/caixa de areia para um aplicativo ASP.NET existente no Visual Studio 2005/SQL Server 2005 (e VSS para controle de origem).

Estou pensando que preciso criar uma cópia 'base' do ambiente (com o sistema operacional, Visual Studio e SQL Server) e depois copiar para uma versão 'trabalho' em que faço o desenvolvimento real. Eu seria Compartilhando esta VM com um ou dois outros desenvolvedores que estariam trabalhando em diferentes partes do aplicativo.

isso é uma boa ideia? Qual é a melhor maneira de colocar meus bancos de dados de aplicativo/saída da VM e as mudanças que faço no VSS? É apenas uma cópia do local do host para o compartilhamento da VM e novamente? Como faço para manter tudo sincronizado?

Obrigado!

Foi útil?

Solução

Não é uma má ideia, se você acha que é necessário.

Faço algo semelhante quando preciso desenvolver um aplicativo Windows, porque é bom ter um ambiente limpo. Dessa forma, não adiciono acidentalmente uma referência a algo que não está necessariamente incluído na estrutura .NET. Isso me obriga a instalar quaisquer componentes de terceiros enquanto estou desenvolvendo e documentando. Dessa forma, posso antecipar pré -requisitos e garantir que os documentasse antes de carregar o software no PC de um usuário e me perguntar por que ele não funciona.

Apenas verifique se o PC em que está hospedado pode lidar com a carga adicional. Meu principal PC dev é um processador de núcleo duplo com 4 GB de RAM. Devoto 2 GB a qualquer PC virtual que pretendo usar como ambiente de desenvolvimento, para não atingir muito um problema de desempenho.

Quanto a manter tudo sincronizado, você deseja usar algum tipo de controle de origem (como deve mesmo em um ambiente normal). (Gosto do SVN com o Tortoise SVN como meu cliente de escolha, mas há muitas alternativas.) Basta tratar os PCs virtuais como se fossem PCs normais. Verifique se eles podem acessar a rede, para que todos possam acessar seu repositório de código -fonte.

Outras dicas

Eu sugeriria seriamente as seguintes coisas:

  1. Use uma solução "servidor", em vez de uma solução de desktop. Isso é muito mais razoável se você deseja compartilhar o ambiente da VM com outros desenvolvedores.
  2. Use os produtos da VMware em vez dos da Microsoft.

A partir desses dois pontos, você deve usar o VMware ESX Server e os produtos relacionados. Se você não deseja / não pode investir dinheiro nele, há uma versão gratuita deste produto: http://www.vmware.com/go/getesxi/, mas eu nunca usei.

Se você optar por usar a versão corporativa do servidor ESX ou a versão gratuita, sugiro que você coloque o departamento de TI da sua organização de TI.

Você pode usar o recurso Snapshot (ou o que é chamado) - que Chagnes para o "sistema" é salvo em um arquivo delta, para que você possa facilmente reverter para um estado anterior do PC virtual. Tem alguma penalidade de desempenho. Dessa forma, você não precisa manter a base e o trabalho de cópias.

Eu uso PCs virtuais para todo o meu desenvolvimento do Windows. A empresa em que trabalho tem produtos herdados na FoxPro e produtos atuais no .NET, então eu tenho 2 ambientes configurados: 1 - Windows XP com FoxPro e VSS - posso acessar o VSS diretamente a partir desta imagem e o código nunca entra em outras máquinas em meus Rede (eu trabalho remotamente) 2 - Windows 7 com o VS2008 e todos os bits e peças associados necessários para desenvolver nosso software .NET (incluindo TFS). Esta é a máquina que eu uso todos os dias - eu tenho um PC de desktop de carne, então eu sou capaz de dar o VPC 4 GB de RAM e corre tão rápido quanto um PC 'normal'.

Eu tenho meus VPCs em execução no VirtualBox e são tão bons quanto as outras ofertas. Uma resposta anterior mencionou o VMware ESX, que é um excelente produto para implantação em larga escala, mas se você deseja uma solução de servidor, o VMware Server é gratuito e é uma boa plataforma de virtualização.

Se você está procurando maneiras de experimentar alterações e ainda deseja usar o VPC, os discos de desfazer são excelentes - você acende a máquina, retira o conteúdo do seu coração e, quando você desligar, pode optar por salvar ou descartar a sessão inteira.

Para mim, os PCs virtuais são uma excelente maneira de configurar / desmontar os ambientes de desenvolvimento rapidamente e eu lutaria para voltar a usar uma única máquina para todo o meu trabalho.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top