dockerfile_server 1.4 KB
Newer Older
1 2 3 4
FROM node:12.16.1 as gva-web

WORKDIR /gva_web/
COPY web/ .
5 6

RUN cat .env.production
7 8
COPY .docker-compose/shell/web-handle.sh .
RUN ls -al
9 10 11 12
RUN sh ./web-handle.sh
RUN cat .env.production
RUN rm -f web-handle.sh

13 14 15 16 17 18 19 20 21 22
RUN npm install -g cnpm --registry=https://registry.npm.taobao.org
RUN cnpm install || npm install
RUN npm run build

FROM golang:alpine as gva-server

ENV GO111MODULE=on
ENV GOPROXY=https://goproxy.io,direct
WORKDIR /go/src/gin-vue-admin
COPY server/ ./
23 24 25

RUN cat ./core/server.go
RUN cat ./config.yaml
26 27
COPY .docker-compose/shell/server-handle.sh .
RUN ls -al
28 29 30 31 32
RUN sh ./server-handle.sh
RUN rm -f server-handle.sh
RUN cat ./core/server.go
RUN cat ./config.yaml

33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
RUN go env && go list && go build -o gva-server .


FROM nginx:alpine
LABEL MAINTAINER="SliverHorn"

WORKDIR gva/

# copy web
COPY --from=gva-web /gva_web/dist ./resource/dist
# copy server
COPY --from=gva-server /go/src/gin-vue-admin/gva-server ./
COPY --from=gva-server /go/src/gin-vue-admin/config.yaml ./
COPY --from=gva-server /go/src/gin-vue-admin/resource ./resource


EXPOSE 8888

ENTRYPOINT ./gva-server

# 根据Dockerfile生成Docker镜像

# docker build -t gva-server:1.0 .

#- 根据Docker镜像启动Docker容器
#    - 后台运行
#    - ```
#    docker run -d -p 8888:8888 --name gva-server-v1 gva-server:1.0
#      ```
#    - 以可交互模式运行, Ctrl + p + q
#    - ```
#    docker run -it -p 8888:8888 --name gva-server-v1 gva-server:1.0
#      ```