Configuração do Projeto
Este guia ajudará você a configurar e executar o AirysChat no modo de desenvolvimento. Certifique-se de ter concluído a configuração do ambiente.
Clonar o repositório
# mude o local para o caminho onde você deseja que o airyschat seja instalado
cd ~
# clone o repositório e navegue para o diretório do airyschat
git clone https://github.com/airyschat/airyschat.git
cd airyschat
Instalar dependências Ruby & Javascript
Use o seguinte comando para executar bundle && pnpm install para instalar as dependências do Ruby e Javascript.
Isso instalará todas as dependências necessárias para a aplicação AirysChat.
Se você enfrentar problemas com a gem pg, por favor consulte os Erros Comuns
Configurar as variáveis de ambiente
Consulte environment-variables para ler sobre a configuração de variáveis de ambiente.
Configurar o servidor rails
# executar as migrações de banco de dados
make db
# iniciar o servidor
foreman start -f Procfile.dev
Se você tiver o overmind instalado, use make run para executar o servidor.
http://localhost:3000
user name: john@acme.inc
password: Password1!
Ao rodar o AirysChat em um ambiente de desenvolvimento, o widget de chat pode ser acessado no seguinte URL.
http://localhost:3000/widget_tests
Você também pode testar o método setUser usando
http://localhost:3000/widget_tests?setUser=true
Para usar esses URLs, primeiro você precisa compilar os assets. Execute:
bundle exec rails assets:precompile
Docker para desenvolvimento
Siga esta seção apenas se você estiver tentando configurar o AirysChat via docker. Caso contrário, pule isso.
Na primeira vez que você iniciar seu ambiente de desenvolvimento, execute os seguintes dois comandos:
# construir a imagem base primeiro
docker compose build base
# construir o servidor e o worker
docker compose build
# preparar o banco de dados
docker compose exec rails bundle exec rails db:airyschat_prepare
# docker compose up
Em seguida, navegue para http://localhost:3000
# Para parar seu ambiente use Control+C (no Mac) CTRL+C (no Win) ou
docker compose down
# iniciar os serviços
docker compose up
Quando você alterar o Dockerfile do serviço ou o conteúdo do diretório de build, execute stop e então build. (Por exemplo, após modificar o package.json ou Gemfile)
docker compose stop
docker compose build
O ambiente do docker-compose consiste em:
- airyschat server
- postgres
- redis
- webpacker-dev-server
Caso você encontre um problema de seeding (populando os dados) ou queira redefinir o banco de dados, você pode fazer isso usando o seguinte comando:
docker compose run --rm rails bundle exec rake db:reset
Este comando essencialmente executa os contêineres postgres e redis e, em seguida, executa o comando rake dentro do contêiner do servidor airyschat.
Primeiro, compile os assets. Execute:
docker compose exec rails bundle exec rails assets:precompile
Em seguida, use os URLs de #testing-chat-widget-in-your-local-environment
Executando Testes Cypress
Primeiro, compile os assets. Execute:
docker compose exec rails bundle exec rails assets:precompile
Executando Testes Cypress
Consulte a documentação para aprender como escrever especificações (specs) do cypress:
# no terminal tab1
overmind start -f Procfile.test
# no terminal tab2
pnpm cypress open --project ./test
Depurando Docker para produção
Você pode usar nossa imagem oficial do Docker de https://hub.docker.com/r/airyschat/airyschat
docker pull airyschat/airyschat
Você pode criar uma imagem por conta própria executando o seguinte comando no diretório raiz.
docker compose -f docker-compose.production.yaml build
Isso construirá a imagem que você pode implantar no Kubernetes (GCP, Openshift, AWS, Azure ou em qualquer lugar), Amazon ECS ou Docker Swarm. Você pode colocar uma tag nesta imagem e fazer o push para o registro do docker de sua escolha.
Lembre-se de disponibilizar as variáveis de ambiente necessárias durante a implantação.
Próximos Passos
Após concluir esta configuração:
- Verificar a Instalação: Acesse http://localhost:3000 e faça login com as credenciais fornecidas
- Explorar o Código: Comece a fazer alterações e veja-as refletidas no seu ambiente de desenvolvimento
- Executar Testes: Execute a suíte de testes para garantir que tudo funcione corretamente
- Verificar a Resolução de Problemas: Se você encontrar problemas, consulte Erros Comuns
Obtendo Ajuda
Se você encontrar problemas durante a configuração:
Seu ambiente de desenvolvimento do AirysChat está agora pronto para contribuição! 🚀