add Dockerfile
This commit is contained in:
parent
98864e4d03
commit
4bff6e9405
|
@ -0,0 +1,29 @@
|
||||||
|
FROM golang:alpine AS builder
|
||||||
|
LABEL builder=true
|
||||||
|
WORKDIR /build
|
||||||
|
|
||||||
|
ADD go.mod .
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
RUN go mod download
|
||||||
|
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags "-w -s" -o cmd/recipes/main cmd/recipes/main.go
|
||||||
|
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags "-w -s" -o cmd/parser/main cmd/parser/main.go
|
||||||
|
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags "-w -s" -o cmd/migrator/main cmd/migrator/main.go
|
||||||
|
|
||||||
|
FROM alpine
|
||||||
|
|
||||||
|
WORKDIR /build
|
||||||
|
|
||||||
|
COPY --from=builder /build/cmd/recipes/main /build/cmd/recipes/main
|
||||||
|
COPY --from=builder /build/cmd/migrator/main /build/cmd/migrator/main
|
||||||
|
COPY --from=builder /build/cmd/parser/main /build/cmd/parser/main
|
||||||
|
COPY --from=builder /build/config/* /build/config/
|
||||||
|
COPY --from=builder /build/migrations/* /build/migrations/
|
||||||
|
|
||||||
|
RUN touch start.sh
|
||||||
|
RUN echo "#!/bin/sh" >> start.sh
|
||||||
|
RUN echo "./cmd/migrator/main --migrations-path migrations" >> start.sh
|
||||||
|
RUN echo "./cmd/recipes/main" >> start.sh
|
||||||
|
RUN chmod +x start.sh
|
||||||
|
|
||||||
|
CMD ["./start.sh"]
|
|
@ -14,28 +14,30 @@ services:
|
||||||
# - ./conf/traefik_custom:/custom/:ro
|
# - ./conf/traefik_custom:/custom/:ro
|
||||||
# - /var/run/docker.sock:/var/run/docker.sock:ro
|
# - /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
|
||||||
# # rest api
|
# rest api
|
||||||
# app:
|
app:
|
||||||
# build:
|
# build:
|
||||||
# context: .
|
# context: .
|
||||||
# dockerfile: Dockerfile
|
# dockerfile: Dockerfile
|
||||||
# container_name: app
|
image: recipes:latest
|
||||||
# restart: unless-stopped
|
container_name: app
|
||||||
# env_file: .env
|
restart: unless-stopped
|
||||||
# environment:
|
env_file: .env
|
||||||
# DB_ADDR: app_pg:5432
|
environment:
|
||||||
# MINIO_ADDR: minio:9000
|
CONFIG_PATH: ./config/local.yaml
|
||||||
# depends_on:
|
depends_on:
|
||||||
# - app_pg
|
- app_pg
|
||||||
|
- redis
|
||||||
|
- minio
|
||||||
# labels:
|
# labels:
|
||||||
# - "traefik.enable=true"
|
# - "traefik.enable=true"
|
||||||
# - "traefik.http.routers.app.entrypoints=websecure"
|
# - "traefik.http.routers.app.entrypoints=websecure"
|
||||||
# - "traefik.http.routers.app.tls=true"
|
# - "traefik.http.routers.app.tls=true"
|
||||||
# - "traefik.http.routers.app.tls.certresolver=production"
|
# - "traefik.http.routers.app.tls.certresolver=production"
|
||||||
# - "traefik.http.routers.app.rule=Host(`$API_HOST`) && PathPrefix(`/api/v1/`)"
|
# - "traefik.http.routers.app.rule=Host(`$API_HOST`)"
|
||||||
# networks:
|
networks:
|
||||||
# microservicesnet:
|
microservicesnet:
|
||||||
# ipv4_address: 192.168.4.3
|
ipv4_address: 192.168.4.3
|
||||||
|
|
||||||
# postgresql database for app
|
# postgresql database for app
|
||||||
app_pg:
|
app_pg:
|
||||||
|
|
Loading…
Reference in New Issue