200 lines
8.1 KiB
YAML
200 lines
8.1 KiB
YAML
services:
|
|
typebot_builder:
|
|
image: baptistearno/typebot-builder:latest
|
|
networks:
|
|
- traefik_network
|
|
- postgres_network
|
|
secrets:
|
|
- minio_root_password
|
|
environment:
|
|
##################################
|
|
# Configuração do banco de dados #
|
|
##################################
|
|
#postgresql://usuario:senha@hostname:porta/banco
|
|
DATABASE_URL: postgresql://automacao:Qgs%23j7Cwugag0dt%2A7pnD7heonoVDg4KpBBEgvLD2@postgres:5432/typebot
|
|
ENCRYPTION_SECRET: F7NLLRmif6+iOnhKbm5Bif2+jG0WPp2d
|
|
NEXTAUTH_URL: https://builder.omegaflow.com.br
|
|
NEXT_PUBLIC_VIEWER_URL: https://bot.omegaflow.com.br
|
|
ADMIN_EMAIL: raiffysampaio@gmail.com
|
|
#########################################################################
|
|
# A varivável de signup pode ser descomentada e marcada como true para #
|
|
# impedir que qualquer pessoa cria uma conta no site. #
|
|
#########################################################################
|
|
#DISABLE_SIGNUP: "true"
|
|
|
|
#########################################################################################
|
|
# Caso consiga fazer funcionar, é até melhor na questão de segurança utilizar variáveis #
|
|
#no lugar de texto plano. As informações de variaveis estão no arquivo .env #
|
|
#########################################################################################
|
|
#DATABASE_URL: ${DATABASE_URL}
|
|
#ENCRYPTION_SECRET: ${ENCRYPTION_SECRET}
|
|
#NEXTAUTH_URL: ${NEXTAUTH_URL}
|
|
#NEXT_PUBLIC_VIEWER_URL: ${NEXT_PUBLIC_VIEWER_URL}
|
|
#ADMIN_EMAIL: ${ADMIN_EMAIL}
|
|
|
|
########################
|
|
# Configuração do SMTP #
|
|
########################
|
|
SMTP_HOST: smtp.gmail.com
|
|
SMTP_USERNAME: raiffysampaio@gmail.com
|
|
SMTP_PASSWORD: shrvljlihelgpqcb
|
|
NEXT_PUBLIC_SMTP_FROM: Omegaflow
|
|
SMTP_PORT: 465
|
|
SMTP_SECURE: "true"
|
|
#########################################################################################
|
|
# Caso consiga fazer funcionar, é até melhor na questão de segurança utilizar variáveis #
|
|
#no lugar de texto plano. As informações de variaveis estão no arquivo .env #
|
|
#########################################################################################
|
|
#SMTP_HOST: ${SMTP_HOST}
|
|
#SMTP_USERNAME: ${SMTP_USERNAME}
|
|
#SMTP_PASSWORD: ${SMTP_PASSWORD}
|
|
#NEXT_PUBLIC_SMTP_FROM: ${NEXT_PUBLIC_SMTP_FROM}
|
|
#SMTP_PORT: ${NEXT_PUBLIC_SMTP_FROM}
|
|
#SMTP_SECURE: ${SMTP_SECURE}
|
|
|
|
#########################
|
|
# Configuração do minio #
|
|
#########################
|
|
S3_ACCESS_KEY: raiffy
|
|
S3_SECRET_KEY: F@X6%Z2^Uk3tta!aWvYoivmX
|
|
# Não consegui fazer funcionar com a variável
|
|
#S3_SECRET_KEY: ${S3_SECRET_KEY}
|
|
S3_BUCKET: typebot
|
|
S3_ENDPOINT: storage.omegaflow.com.br
|
|
deploy:
|
|
mode: replicated
|
|
replicas: 1
|
|
placement:
|
|
constraints:
|
|
- node.role == manager
|
|
resources:
|
|
limits:
|
|
cpus: '0.2'
|
|
memory: 512M
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.typebot_builder.rule=Host(`builder.omegaflow.com.br`)"
|
|
- "traefik.http.routers.typebot_builder.entrypoints=websecure"
|
|
- "traefik.http.routers.typebot_builder.tls=true"
|
|
- "traefik.http.routers.typebot_builder.tls.certresolver=lets-encrypt"
|
|
- "traefik.http.routers.typebot_builder.service=typebot_builder"
|
|
- "traefik.http.services.typebot_builder.loadbalancer.server.port=3000"
|
|
|
|
typebot_viewer:
|
|
image: baptistearno/typebot-viewer:latest
|
|
networks:
|
|
- traefik_network
|
|
- postgres_network
|
|
secrets:
|
|
- minio_root_password
|
|
environment:
|
|
##################################
|
|
# Configuração do banco de dados #
|
|
##################################
|
|
#postgresql://usuario:senha@hostname:porta/banco
|
|
DATABASE_URL: postgresql://automacao:Qgs%23j7Cwugag0dt%2A7pnD7heonoVDg4KpBBEgvLD2@postgres:5432/typebot
|
|
ENCRYPTION_SECRET: F7NLLRmif6+iOnhKbm5Bif2+jG0WPp2d
|
|
NEXTAUTH_URL: https://builder.omegaflow.com.br
|
|
NEXT_PUBLIC_VIEWER_URL: https://bot.omegaflow.com.br
|
|
ADMIN_EMAIL: raiffysampaio@gmail.com
|
|
#########################################################################
|
|
# A varivável de signup pode ser descomentada e marcada como true para #
|
|
# impedir que qualquer pessoa cria uma conta no site. #
|
|
#########################################################################
|
|
#DISABLE_SIGNUP: "true"
|
|
|
|
#########################################################################################
|
|
# Caso consiga fazer funcionar, é até melhor na questão de segurança utilizar variáveis #
|
|
#no lugar de texto plano. As informações de variaveis estão no arquivo .env #
|
|
#########################################################################################
|
|
#DATABASE_URL: ${DATABASE_URL}
|
|
#ENCRYPTION_SECRET: ${ENCRYPTION_SECRET}
|
|
#NEXTAUTH_URL: ${NEXTAUTH_URL}
|
|
#NEXT_PUBLIC_VIEWER_URL: ${NEXT_PUBLIC_VIEWER_URL}
|
|
#ADMIN_EMAIL: ${ADMIN_EMAIL}
|
|
|
|
########################
|
|
# Configuração do SMTP #
|
|
########################
|
|
SMTP_HOST: smtp.gmail.com
|
|
SMTP_USERNAME: raiffysampaio@gmail.com
|
|
SMTP_PASSWORD: shrvljlihelgpqcb
|
|
NEXT_PUBLIC_SMTP_FROM: Omegaflow
|
|
SMTP_PORT: 465
|
|
SMTP_SECURE: "true"
|
|
#########################################################################################
|
|
# Caso consiga fazer funcionar, é até melhor na questão de segurança utilizar variáveis #
|
|
#no lugar de texto plano. As informações de variaveis estão no arquivo .env #
|
|
#########################################################################################
|
|
#SMTP_HOST: ${SMTP_HOST}
|
|
#SMTP_USERNAME: ${SMTP_USERNAME}
|
|
#SMTP_PASSWORD: ${SMTP_PASSWORD}
|
|
#NEXT_PUBLIC_SMTP_FROM: ${NEXT_PUBLIC_SMTP_FROM}
|
|
#SMTP_PORT: ${NEXT_PUBLIC_SMTP_FROM}
|
|
#SMTP_SECURE: ${SMTP_SECURE}
|
|
|
|
#########################
|
|
# Configuração do minio #
|
|
#########################
|
|
S3_ACCESS_KEY: raiffy
|
|
S3_SECRET_KEY: F@X6%Z2^Uk3tta!aWvYoivmX
|
|
# Não consegui fazer funcionar com a variável
|
|
#S3_SECRET_KEY: ${S3_SECRET_KEY}
|
|
S3_BUCKET: typebot
|
|
S3_ENDPOINT: storage.omegaflow.com.br
|
|
deploy:
|
|
mode: replicated
|
|
replicas: 1
|
|
placement:
|
|
constraints:
|
|
- node.role == manager
|
|
resources:
|
|
limits:
|
|
cpus: '0.2'
|
|
memory: 512M
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.typebot_viewer.rule=Host(`bot.omegaflow.com.br`)"
|
|
- "traefik.http.routers.typebot_viewer.entrypoints=websecure"
|
|
- "traefik.http.routers.typebot_viewer.tls=true"
|
|
- "traefik.http.routers.typebot_viewer.tls.certresolver=lets-encrypt"
|
|
- "traefik.http.routers.typebot_viewer.service=typebot_viewer"
|
|
- "traefik.http.services.typebot_viewer.loadbalancer.server.port=3000"
|
|
|
|
##########################################################################
|
|
# Esse container serve apenas para criar o bucket corretamente no minio. #
|
|
# Depois que a criação do bucket ocorrer, pode remover da stack #
|
|
##########################################################################
|
|
create_buckets:
|
|
image: minio/minio:latest
|
|
networks:
|
|
- traefik_network
|
|
secrets:
|
|
- minio_root_password
|
|
depends_on:
|
|
- minio
|
|
environment:
|
|
# Não consegui fazer funcionar com a variável
|
|
#S3_SECRET_KEY: ${S3_SECRET_KEY}
|
|
entrypoint: >
|
|
/bin/sh -c "
|
|
sleep 10;
|
|
/usr/bin/mc config host add minio http://minio:9000 raiffy F@X6%Z2^Uk3tta!aWvYoivmX;
|
|
/usr/bin/mc mb minio/typebot;
|
|
/usr/bin/mc anonymous set public minio/typebot/public;
|
|
exit 0;
|
|
"
|
|
|
|
secrets:
|
|
minio_root_password:
|
|
external: true
|
|
|
|
networks:
|
|
traefik_network:
|
|
driver: overlay
|
|
attachable: true
|
|
external: true
|
|
postgres_network:
|
|
driver: overlay
|
|
attachable: true
|
|
external: true |