diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..6c809df --- /dev/null +++ b/.dockerignore @@ -0,0 +1,59 @@ +# .dockerignore file for the project + +# Language-specific patterns +/vendor/ +*.test +.go-cache + +# Development artifacts +.idea/ +.vscode/ +*.swp +*.swo +dist/ +build/ +out/ +test/ +tests/ +*_test.go +debug/ +*.log + +# Version control +.git/ +.gitignore + +# Environment and secrets +.env* +*.env +*.pem +*.key +*.crt +config.local.* +*.local.yml + +# Project-specific patterns +docs/ +*.md +README* +Dockerfile* +docker-compose* +tmp/ +temp/ +*.tmp +.local/ +local/ + +# Exclude the following files from being ignored +!go.mod +!go.sum +!cmd/main.go +!internal/config/config.go +!internal/domain/tasks/task.go +!internal/domain/users/user.go +!internal/persistance/task_manager.go +!internal/persistance/task_repository.go +!internal/persistance/user_repository.go +!database/init/00-users-init.sql +!database/init/01-tasks-init.sql +!deployments/task-manager.yaml \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index f404cf6..36f34c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,12 @@ -# Этап сборки FROM golang:1.23-alpine AS builder -# Устанавливаем рабочую директорию WORKDIR /app -# Копируем файлы проекта -COPY go.mod go.sum ./ +COPY . ./ RUN go mod download -COPY . ./ - -# Сборка бинарного файла RUN go build -o /workshop ./cmd/workshop -# Финальный минимальный образ FROM scratch AS final WORKDIR /app