Agenda/Lista Telefônica com PHP, JavaScript e MariaDB/Mysql usando docker
10K+
Bem-vindo ao repositório da aplicação de lista telefônica desenvolvida para órgãos públicos. Esta ferramenta fornece uma interface intuitiva, responsiva e segura para gerenciar contatos e ramais internos.
Destaque da Versão 0.16:
A versão 0.16 foi otimizada para containers. O processo é "Zero-Touch": ao subir o container, o banco de dados é criado e populado automaticamente.
lista-telefonica e acesse a pasta criadamkdir lista-telefonica
cd lista-telefonica
docker-compose.yml e insira nele o conteudo abaixo:nano dcoker-compose.yml
Cole este conteudo, edite as variáveis DB_USERNAME, DB_PASSWORD, CF_SITE_KEY, CF_SECRET_KEY, NOME_ORGAO, RESTRITO_POR_IP, FAIXA_IP_PERMITIDA (as variáveis do banco dedados na seção APP e no db_agenda devem ser iguais) e salve o arquivo:
services:
app:
image: albiesek/lista-telefonica:latest
container_name: lista-telefonica
restart: always
ports:
- "8080:80"
environment:
# Dados de acesso ao banco de dados (devem ser os mesmos configurados na seção do banco mais abaixo.
- DB_SERVER=db_agenda
- DB_NAME=agenda
- DB_USERNAME=admin
- DB_PASSWORD=admin
# Chaves da configuração do captcha do Cloudflare Turnstile (pode ser configurado gratuitamente em: https://www.cloudflare.com/pt-br/application-services/products/turnstile/)
- CF_SITE_KEY=
- CF_SECRET_KEY=
# Configuração do nome do órgão
- NOME_ORGAO=PREFEITURA DA CIDADE TAL
# Configuração para restringir o acesso ao Painel Administrativo apenas para a rede interna (Intranet).
- RESTRITO_POR_IP=false
- FAIXA_IP_PERMITIDA=127.0.0.*
depends_on:
- db_agenda
networks:
- agenda_net
volumes:
- ./img:/var/www/html/img
db_agenda:
image: mysql:8.0
container_name: db_agenda
restart: always
environment:
# Dados de acesso ao banco de dados (devem ser os mesmos da seção APP, com excessão do root)
MYSQL_DATABASE: agenda
MYSQL_USER: admin
MYSQL_PASSWORD: admin
MYSQL_ROOT_PASSWORD: admin123
volumes:
- db_data:/var/lib/mysql
networks:
- agenda_net
networks:
agenda_net:
driver: bridge
volumes:
db_data:
sudo docker compose up -d
ou
sudo docker-compose up -d
Acesse: https://github.com/adrianolerner/lista-telefonica-docker
Acesse: https://github.com/adrianolerner/lista-telefonica
Esqueça a edição de múltiplos arquivos. Agora, tudo é controlado via Variáveis de Ambiente ou editando apenas o arquivo config.php.
As seguintes variáveis podem ser definidas no docker-compose.yml ou no .env do servidor:
| Variável | Descrição | Padrão |
|---|---|---|
DB_SERVER | Host do banco de dados | 127.0.0.1 |
DB_NAME | Nome do banco | agenda |
DB_USERNAME | Usuário do banco | admin |
DB_PASSWORD | Senha do banco | admin |
NOME_ORGAO | Nome exibido no topo (Ex: PREFEITURA X) | NOME DA PREFEITURA |
CF_SITE_KEY | Chave pública do Cloudflare Turnstile | (Vazio) |
CF_SECRET_KEY | Chave secreta do Cloudflare Turnstile | (Vazio) |
RESTRITO_POR_IP | Ativa ou desativa a validação de IP para acesso ao painel administrativo | false |
FAIXA_IP_PERMITIDA | Configura a faixa de IPs permitidas quando o item RESTRITO_POR_IP for true | 127.0.0.* |
O sistema possui proteção contra ataques de força bruta (bloqueia o IP após 5 tentativas falhas) e integração opcional com Cloudflare Turnstile.
Para ativar o Captcha no login, basta preencher as variáveis de ambiente CF_SITE_KEY e CF_SECRET_KEY no seu docker-compose.yml.
localhost ou IPs locais (127.0.0.1), o Captcha é ignorado automaticamente para facilitar testes, exibindo apenas um alerta visual.Acesso Padrão:
Usuário: admin
Senha: admin
Nota: Altere a senha imediatamente no menu Usuários.
Recursos:
Dashboard: /dashboard.php - Estatísticas de acesso.
Favoritos: Clique na estrela (⭐) para fixar contatos no topo.
PDF: Gere a lista telefônica impressa em /gerapdf.php.
A aplicação utiliza o Bootstrap 5.3 e oferece:
git checkout -b feature/melhoria-x).git commit -am 'Adiciona melhoria X').git push origin feature/melhoria-x).Desenvolvido para agilizar a comunicação no serviço público.
Content type
Image
Digest
sha256:7b5827ceb…
Size
208.1 MB
Last updated
8 months ago
docker pull albiesek/lista-telefonica