Deploy Automatizado via FTP com git-ftp
Aprenda como configurar um pipeline para deploy automatizado via FTP usando git-ftp no GitHub ou GitLab.

Configuração Inicial
Antes de começar, certifique-se de ter os seguintes requisitos:
- Git instalado no seu sistema local
- Credenciais FTP (usuário, senha, servidor e caminho do diretório) para o servidor FTP de destino
Instalação do git-ftp
Instale o git-ftp no seu sistema local. Use o gerenciador de pacotes apropriado para o seu sistema operacional:
# Exemplo para sistemas baseados em Debian/Ubuntu
sudo apt-get update
sudo apt-get install git-ftp
# Exemplo para sistemas baseados em Fedora
sudo dnf install git-ftp
# No Windows, use o Git Bash com o git-ftp instalado
Configuração do git-ftp
No diretório do seu projeto Git local, configure o git-ftp com suas credenciais FTP:
git ftp init -u usuario_ftp -p senha_ftp ftp://seu_servidor.com/caminho/para/o/diretorio
Substitua usuario_ftp
, senha_ftp
, seu_servidor.com
e caminho/para/o/diretorio
pelas suas credenciais e diretório de destino no servidor FTP.
Configuração do Pipeline (GitHub Actions)
No GitHub, crie um arquivo .github/workflows/deploy.yml
no seu repositório com o seguinte conteúdo:
name: Deploy via FTP
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install git-ftp
run: |
sudo apt-get update
sudo apt-get install git-ftp
- name: Deploy via git-ftp
run: |
git ftp push --auto-init --user ${{ secrets.FTP_USER }} --passwd ${{ secrets.FTP_PASSWORD }} ftp://seu_servidor.com/caminho/para/o/diretorio
env:
FTP_USER: ${{ secrets.FTP_USER }}
FTP_PASSWORD: ${{ secrets.FTP_PASSWORD }}
Configure as variáveis FTP_USER
e FTP_PASSWORD
como secrets no GitHub.
Configuração do Pipeline (GitLab CI/CD)
No GitLab, crie um arquivo .gitlab-ci.yml
no seu repositório com o seguinte conteúdo:
image: ubuntu:latest
stages:
- deploy
deploy:
stage: deploy
script:
- apt-get update && apt-get install -y git-ftp
- git ftp push --auto-init --user $FTP_USER --passwd $FTP_PASSWORD ftp://seu_servidor.com/caminho/para/o/diretorio
variables:
FTP_USER: "$FTP_USER"
FTP_PASSWORD: "$FTP_PASSWORD"
only:
- main
Configure as variáveis FTP_USER
e FTP_PASSWORD
no GitLab CI/CD.
Conclusão
Você configurou com sucesso um pipeline para deploy automatizado via FTP usando git-ftp no GitHub ou GitLab. Sempre teste seu pipeline para garantir que ele atenda aos requisitos de deploy e segurança da sua aplicação.
Qual é a sua reação?






