I'm trying to use docker with go lang & PostgreSQL
I have this structure for the project:
-project_name
- src
- app
- config
- main.go
- .env
- docker-compose.yml
- Dockerfile
the docker-compose.yml file contains ( I need GO server & PostgreSQL)
version: '3.9'
services:
app:
container_name: logger_app
build: ..
ports:
- "12000:12000"
restart: on-failure
volumes:
- .:/app
depends_on:
- postgres
networks:
- MYAPP
postgres:
image: postgres:latest
container_name: postgres_db
environment:
- POSTGRES_USER=${DB_USER}
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_DB=${DB_NAME}
- DATABASE_HOST=${DB_HOST}
ports:
- '5432:5432'
networks:
- MYAPP
networks:
MYAPP:
driver: bridge
The Dockerfile contains:
FROM golang:1.18 as builder
RUN mkdir /app
WORKDIR /app
COPY . .
RUN go get -d -v ./...
RUN go install -v ./...
RUN go build -o /build
EXPOSE 12000
CMD [ "/build" ]
when I run docker-compose up --build I got this error:
failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount868285600/Dockerfile: no such file or directory
ERROR: Service 'app' failed to build : Build failed
CodePudding user response:
Change the build line to build: .
line. The compose file and Dockerfile are in the same directory.