🌌
Wormhole Docs Brasil
  • Bem-vindo!
  • Materiais
    • Build
      • Começer a Buildar
        • Redes Suportadas
        • Testnet Faucets
        • Demos
      • Construindo Aplicações Frontend
        • Wormhole SDK
          • Wormhole TypeScript SDK
          • Data Layouts
          • Construção de Protocolos e Payloads
        • Queries
          • Overview
          • Usando Queries
          • F.A.Q.
        • Conexão
          • Overview
          • Routes
          • Features
          • Configuração
          • v1 Migration
          • F.A.Q.
      • Construindo Integrações de contratos
        • Wormhole Relayer
        • Core Contracts
        • CCTP
        • Transferências de Tokens Nativos
          • Processos de Deployment
        • Comandos NTT CLI
        • Configuração de NTT
          • Limitação de Taxas
          • Controle de Acesso
        • Managers e Transceivers
        • F.A.Q. Wormhole NTT
      • MultiGov
        • Deployment
        • Upgrades Contracts
        • F.A.Q. Tecnicas
      • Ambiente de Desenvolvimento
      • F.A.Q sobre Integrações de Contratos
      • Toolkit
        • Wormholescan
        • Wormhole CLI
        • Wormhole SDK
          • TypeScript SDK
          • Data Layouts
          • Construindo Protocolos e Payloads
        • Solidity SDK
        • Tilt
        • Toolkit F.A.Q.
      • Referências
    • Infraestrutura
      • Run a Relayer
      • Run a Spy
    • Tutoriais
      • Tutorial de Conexão
      • Tutorial de Contratos Cross-Chain
        • Criação de Contratos de Mensagens Cross-Chain
        • Criação de contratos de transferência de tokens Cross-Chain
      • Tutoriais de Transferências de Tokens Nativos (NTT - Native Token Transfers)
        • Crie Tokens Multichain
      • Tutorial MultiGov
        • Proposta Cross-Chain treasury management
      • Tutoriais do Wormhole SDK
        • Transferir USDC via CCTP
        • Transferir Tokens via a Token Bridge
    • Learn
      • Fundamentos
        • Introdução
        • Segurança
        • Overview de Arquitetura
        • Glossário
      • Componentes de Infraestrutura
        • Core Contracts
        • VAAs (Verified Action Approvals)
        • Guardians
        • Spy
        • Relayers
      • Messaging
        • Token Bridge
        • Circle's CCTP Bridge
        • Transferencias de Token Nativos
          • Overview
          • Arquitetura
          • Modelos de Deploy
          • Security
      • Multigov
        • MultiGov: Governança Cross-Chain com Wormhole
        • MultiGov Architecture
        • FAQs
    • Links úteis
Powered by GitBook
On this page
  1. Materiais
  2. Build
  3. Toolkit

Tilt

PreviousSolidity SDKNextToolkit F.A.Q.

Last updated 4 months ago

é uma ferramenta que faz parte do ecossistema oficial do Docker, projetada para facilitar a configuração de um ambiente Kubernetes para desenvolvimento.

Nota

O Tilt é frequentemente referido como "Devnet" no ecossistema Wormhole, portanto, qualquer informação rotulada como "Devnet" também se aplica ao Tilt.

No contexto do Wormhole, "Tilt" refere-se ao ambiente de desenvolvimento utilizado pelo . Esse ambiente disponibiliza imagens Docker para todas as ferramentas necessárias para construir em várias blockchains, incluindo:

  • Todas as blockchains e ecossistemas suportados pelo Wormhole

  • Um nó Guardian

  • Relayers

  • Bancos de dados, Redis

  • Front-ends utilitários

O ambiente Tilt é projetado para fornecer uma pilha de desenvolvimento cross-chain completa logo após a instalação.

Tilt é adequado para você?

O Tilt é uma boa opção para desenvolvedores que precisam de um ambiente de desenvolvimento local e têm acesso a uma máquina que pode suportar a execução dele. Também é uma excelente opção para desenvolvedores que querem estabelecer uma suíte de testes CI.

Prós

  • Suporte pronto para uso para os muitos componentes necessários para desenvolver em espaços de blockchain heterogêneos

  • Ambiente de desenvolvimento consistente, onde os contratos são implantados de maneira determinística, com tudo já interligado

  • Capacidade de habilitar ou desabilitar facilmente os componentes conforme necessário

  • Atualizações regulares à medida que novos componentes se juntam ao ecossistema Wormhole

Instalação do Tilt

Instruções para MacOS

Você precisará ter o homebrew instalado no seu sistema. Você pode instalá-lo com:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Instalar Go:

brew install go

Instalar Docker:

brew install docker

Instalar o Tilt:

brew install tilt

Instruções para Linux

Instalar Go

Você pode instalar o Go com o seguinte comando:

wget https://go.dev/dl/go1.18.1.linux-amd64.tar.gz &&
rm -r /usr/local/go && tar -C /usr/local -xzf go1.18.1.linux-amd64.tar.gz

Instalar Docker Desktop

Se você estiver usando Linux com um gerenciador de janelas, é altamente recomendado que você instale o Docker Desktop, pois ele vem com Kubernetes integrado e você não precisará baixar o Minikube. É recomendado alocar ao Docker pelo menos 4 CPUs e 16GB de RAM. Além disso, verifique se o Docker está configurado como usuário não-root. Você pode consultar essa lista de métodos de instalação do Docker.

Se você estiver usando o Docker Desktop, pode ativar o Kubernetes indo em Configurações > Kubernetes e marcando a opção para habilitar o Kubernetes.

Minikube

minikube start --driver=docker --kubernetes-version=v1.23.3 --cpus=4 --memory=14G --disk-size=10G --namespace=wormhole

Se você reiniciar sua VM, precisará rodar o comando minikube start novamente antes de levantar o Tilt.

Instalar Tilt

Você pode instalar o Tilt com o seguinte comando:

curl -fsSL https://raw.githubusercontent.com/tilt-dev/tilt/master/scripts/install.sh | bash

Instruções Experimentais para Linux

Este é um script experimental de instalação com um único comando.

Aviso

Isso é recomendado apenas se você estiver rodando Linux sem interface gráfica e não puder usar o Docker Desktop, pois você pode habilitar o Kubernetes a partir do Docker.

curl $URL | sh install_linux.sh &&
cd wormhole/ && 
./tilt.sh

Se você tiver todos os pré-requisitos instalados, clone o repositório Wormhole Core e inicie o Tilt:

git clone --branch main https://github.com/wormhole-foundation/wormhole.git &&
cd wormhole &&
tilt up

Instruções para Máquinas Virtuais

Se você estiver rodando o Tilt em uma VM, precisará passar alguns parâmetros extras para permitir que o Tilt ouça o tráfego de endereços externos:

tilt up --host=0.0.0.0 -- --webHost=0.0.0.0

Agora você pode acessar a interface do Tilt em vm_external_ip:10350. Se o IP externo da VM não funcionar, verifique as configurações de firewall e portas para garantir que a VM permita tráfego de entrada. Certifique-se de verificar o Tiltfile, que contém boa parte da configuração e argumentos para o ambiente de desenvolvimento. É relativamente simples habilitar e desabilitar componentes. Por exemplo, você pode habilitar blockchains definindo-os como true na inicialização. Note o uso do separador -- entre as flags do comando Tilt e as flags que você deseja passar para configurar a instalação.

tilt up -- --algorand --solana

Usando o Tilt

Desligando o Tilt

Para desligar o Tilt, execute o comando tilt down com as mesmas flags de rede fornecidas no comando tilt up.

tilt down -- --solana --algorand

FAQ

Onde estão Fantom, Celo, Polygon e outras cadeias EVM?

O ambiente de desenvolvimento de contratos inteligentes é efetivamente o mesmo para todas as cadeias que suportam EVM. Para mudanças nos custos de gás e tempos de transação, considere testar a lógica dos contratos no Devnet e, em seguida, usar ambientes de Testnet para obter respostas específicas da cadeia.

O Solana está demorando demais?

Devido à arquitetura do Solana, a construção do pod Solana geralmente leva de 25 a 40 minutos. Considere aumentar o número de núcleos de CPU atribuídos ao Devnet para uma construção mais rápida.

O Deploy do Programa Solana não está funcionando?

Como posso redefinir o estado de um Pod?

Se você quiser iterar rapidamente e não deseja trazer o Tilt para baixo e subir novamente, pode redefinir o estado de um pod clicando no botão de atualização ao lado do nome do pod na interface do Tilt.

Contratos e Contas

O ambiente Devnet implanta a camada principal e o Token Bridge para cada cadeia nos mesmos endereços todas as vezes. Ele também fornece fundos para carteiras específicas.

Portas Padrão

Serviço
Porta

Guardian REST

7071

Porta gRPC do Guardian

7070

RPC do Eth0

8545

RPC do Eth1

8546

RPC do Solana

8899

O Tilt funciona melhor em um ambiente estilo UNIX. Para rodar o ambiente Tilt, certifique-se de que você tenha o Tilt e o instalados.

Após a instalação, vá nas configurações do Docker e ative o Kubernetes.

Como alternativa ao Docker Desktop com Kubernetes, você pode instalar o . Você pode configurar o Minikube da seguinte forma:

Este script experimental de configuração deve instalar as dependências para você no Linux e configurar tudo corretamente. Se não funcionar como esperado, consulte as etapas de acima.

O Tilt pode ser tratado como um ambiente externo ou Devnet que você pode facilmente subir e derrubar. Se você seguiu a configuração padrão, todos os seus recursos estarão vinculados a várias portas no localhost. Para ver todos os endpoints hospedados no seu ambiente Tilt, consulte o dashboard do Tilt, localizado em .

Todos os endereços de contratos implantados podem ser encontrados na seção Devnet da cadeia sendo utilizada nas páginas de Informações úteis sobre carteiras financiadas e chaves privadas também podem ser encontradas no arquivo Devnet.md da documentação.

O Kubernetes atualmente não permite encaminhamento de porta para portas UDP (I), o que é usado para o comando solana program deploy. Em vez disso, é recomendado usar o . Isso não apenas realiza a implantação dos programas via RPC comum (eliminando a necessidade de portas UDP), mas também é muito mais rápido do que o solana program deploy.

Tilt
repositório Wormhole Core
Go
Configure também o Docker para ter 4 CPUs e cerca de 16GB de RAM.
Minikube
instalação padrão do Linux
http://localhost:10350/overview
Ambientes.
ssue no GitHub
Solana Deployer