Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 12 additions & 14 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,42 +1,40 @@
FROM node:24-alpine AS builder
FROM node:20-alpine AS builder

RUN apk update && \
apk add --no-cache git ffmpeg wget curl bash openssl
apk add git ffmpeg wget curl bash

LABEL version="2.3.1" description="Api to control whatsapp features through http requests."
LABEL version="2.2.0" description="Api to control whatsapp features through http requests."
LABEL maintainer="Davidson Gomes" git="https://github.com/DavidsonGomes"
LABEL contact="contato@evolution-api.com"
LABEL contact="contato@atendai.com"

WORKDIR /evolution

COPY ./package*.json ./
COPY ./tsconfig.json ./
COPY ./tsup.config.ts ./
COPY ./package.json ./tsconfig.json ./

RUN npm ci --silent
RUN npm install -f

COPY ./src ./src
COPY ./public ./public
COPY ./prisma ./prisma
COPY ./manager ./manager
COPY ./.env.example ./.env
COPY ./runWithProvider.js ./
COPY ./tsup.config.ts ./

COPY ./Docker ./Docker

RUN chmod +x ./Docker/scripts/* && dos2unix ./Docker/scripts/*

RUN ./Docker/scripts/generate_database.sh

RUN npm run build
RUN ./node_modules/.bin/tsup

FROM node:24-alpine AS final
FROM node:20-alpine AS final

RUN apk update && \
apk add tzdata ffmpeg bash openssl
apk add tzdata ffmpeg bash openssl openssl-dev libc6-compat

ENV TZ=America/Sao_Paulo
ENV DOCKER_ENV=true
ENV TZ=America/Fortaleza

WORKDIR /evolution

Expand All @@ -57,4 +55,4 @@ ENV DOCKER_ENV=true

EXPOSE 8080

ENTRYPOINT ["/bin/bash", "-c", ". ./Docker/scripts/deploy_database.sh && npm run start:prod" ]
ENTRYPOINT ["/bin/bash", "-c", ". ./Docker/scripts/deploy_database.sh && npm run start:prod" ]
66 changes: 21 additions & 45 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,84 +1,60 @@
version: "3.8"

services:
api:
container_name: evolution_api
image: evoapicloud/evolution-api:latest
build:
context: .
dockerfile: Dockerfile
restart: always
depends_on:
- redis
- evolution-postgres
- postgres
ports:
- "127.0.0.1:8080:8080"
- 8080:8080
volumes:
- evolution_instances:/evolution/instances
networks:
- evolution-net
- dokploy-network
env_file:
- .env
expose:
- "8080"

frontend:
container_name: evolution_frontend
image: evoapicloud/evolution-manager:latest
restart: always
ports:
- "3000:80"
networks:
- evolution-net
- 8080

redis:
container_name: evolution_redis
image: redis:latest
restart: always
networks:
- evolution-net
container_name: redis
command: >
redis-server --port 6379 --appendonly yes
volumes:
- evolution_redis:/data
networks:
evolution-net:
aliases:
- evolution-redis
dokploy-network:
aliases:
- evolution-redis
expose:
- "6379"
ports:
- 6379:6379
restart: always

evolution-postgres:
container_name: evolution_postgres
postgres:
container_name: postgres
image: postgres:15
networks:
- evolution-net
command: ["postgres", "-c", "max_connections=1000"]
restart: always
env_file:
- .env
command:
- postgres
- -c
- max_connections=1000
- -c
- listen_addresses=*
ports:
- 5432:5432
environment:
- POSTGRES_DB=${POSTGRES_DATABASE}
- POSTGRES_USER=${POSTGRES_USERNAME}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- evolution-net
- dokploy-network
expose:
- "5432"
- 5432

volumes:
evolution_instances:
evolution_redis:
postgres_data:


networks:
evolution-net:
name: evolution-net
driver: bridge
dokploy-network:
external: true
Loading