go-xmpp-bot/dockerfile.volume
AnisB 82a5f2c2cb dockerfile added
Former-commit-id: 4d43b498a816927bb70551a188fe8bbd2e31774a
2020-12-25 18:14:26 +01:00

40 lines
879 B
Plaintext

# Dockerfile References: https://docs.docker.com/engine/reference/builder/
# Start from the latest golang base image
FROM golang:latest
# Add Maintainer Info
LABEL maintainer="Anis Benz"
# Set the Current Working Directory inside the container
WORKDIR /bot
# Build Args
ARG LOG_DIR=/bot/logs
# Create Log Directory
RUN mkdir -p ${LOG_DIR}
# Environment Variables
ENV LOG_FILE_LOCATION=${LOG_DIR}/bot.log
# Copy go mod and sum files
COPY go.mod go.sum ./
# Download all dependencies. Dependencies will be cached if the go.mod and go.sum files are not changed
RUN go mod download
# Copy the source from the current directory to the Working Directory inside the container
COPY . .
# Expose port 8080 to the outside world
EXPOSE 8080
# Declare volumes to mount
VOLUME [${LOG_DIR}]
# Build the Go app
RUN go build -o main .
# Command to run the executable
CMD ["./main"]