Se você deseja manter as requisições dentro da sua própria infraestrutura, pode executar uma instância privada com a imagem oficial no Docker Hub. Ela é multiplataforma, com suporte às arquiteturas amd64 e arm64.

Início rápido

A maneira mais rápida de começar:

docker run -d --init -p 8080:8080 lineofflight/frankfurter

Isso inicia o Frankfurter na porta 8080 com um banco de dados efêmero. Alguns endpoints podem retornar dados vazios até que a carga inicial seja concluída.

Produção

Para produção, monte um volume para persistir o banco de dados SQLite entre reinicializações do contêiner:

docker run -d --init -p 8080:8080 \
  -e DATABASE_URL="sqlite:///data/db.sqlite3" \
  -v ./data:/data \
  --pull always \
  lineofflight/frankfurter

Sem um volume montado, o banco de dados é efêmero e é reconstruído a cada reinicialização.

A flag --pull always garante que o Docker baixe a imagem mais recente a cada execução.

Chaves de API

Algumas fontes de dados exigem chaves de API. Todas são gratuitas e opcionais.

docker run -d --init -p 8080:8080 \
  -e DATABASE_URL="sqlite:///data/db.sqlite3" \
  -e BAM_API_KEY="your_key" \
  -e BANXICO_API_KEY="your_key" \
  -e BCCH_USER="your_email" \
  -e BCCH_PASS="your_password" \
  -e BOT_API_KEY="your_key" \
  -e FRED_API_KEY="your_key" \
  -e TCMB_API_KEY="your_key" \
  -v ./data:/data \
  --pull always \
  lineofflight/frankfurter
BAM_API_KEY
Dados do Bank Al-Maghrib. Registre-se em apihelpdesk.centralbankofmorocco.ma.
BANXICO_API_KEY
Dados do Banco de México. Registre-se em banxico.org.mx.
BCCH_USER e BCCH_PASS
Dados do Banco Central de Chile. Registre-se em bcentral.cl.
BOT_API_KEY
Dados do Bank of Thailand. Registre-se em gateway.api.bot.or.th.
FRED_API_KEY
Dados do Federal Reserve. Registre-se em fred.stlouisfed.org.
TCMB_API_KEY
Dados do Banco Central da Turquia. Registre-se em evds3.tcmb.gov.tr.