Skip to content

Commit 058501d

Browse files
committed
build: release v2.1.0
1 parent 95e9769 commit 058501d

File tree

7 files changed

+87
-0
lines changed

7 files changed

+87
-0
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
│   ├── 2.0.2
1515
│   ├── 2.0.3
1616
│   ├── 2.0.4
17+
│   ├── 2.1.0
1718
│   └── latest
1819
└── scripts 构建镜像使用的脚本
1920
├── build-base-image.sh 构建基础镜像
@@ -31,6 +32,7 @@
3132

3233
```bash
3334
docker run --rm -it -p 8080:80 doocs/md:latest
35+
docker run --rm -it -p 8080:80 doocs/md:2.1.0
3436
docker run --rm -it -p 8080:80 doocs/md:2.0.4
3537
docker run --rm -it -p 8080:80 doocs/md:2.0.3
3638
docker run --rm -it -p 8080:80 doocs/md:2.0.2
@@ -45,6 +47,7 @@ docker run --rm -it -p 8080:80 doocs/md:1.6.0
4547

4648
```bash
4749
docker run --rm -it -p 8080:80 doocs/md:latest-nginx
50+
docker run --rm -it -p 8080:80 doocs/md:2.1.0-nginx
4851
docker run --rm -it -p 8080:80 doocs/md:2.0.4-nginx
4952
docker run --rm -it -p 8080:80 doocs/md:2.0.3-nginx
5053
docker run --rm -it -p 8080:80 doocs/md:2.0.2-nginx

docker/2.1.0/.env

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
VER_APP=2.1.0
2+
VER_NGX=1.21.6-alpine
3+
VER_GOLANG=1.17.6-alpine3.15
4+
VER_ALPINE=3.15

docker/2.1.0/Dockerfile.base

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
FROM --platform=$BUILDPLATFORM node:20-alpine3.19 AS builder
2+
ENV LANG="en_US.UTF-8"
3+
ENV LANGUAGE="en_US.UTF-8"
4+
ENV LC_ALL="en_US.UTF-8"
5+
RUN apk add --no-cache curl unzip
6+
ARG VER_APP 2.1.0
7+
ENV VER $VER_APP
8+
RUN curl -L "https://github.com/doocs/md/archive/refs/tags/v$VER.zip" -o "v$VER.zip" && unzip "v$VER.zip" && mv "md-$VER" /app
9+
WORKDIR /app
10+
RUN npm install -g pnpm
11+
ENV NODE_OPTIONS="--openssl-legacy-provider"
12+
RUN pnpm install && pnpm web build:h5-netlify
13+
14+
FROM scratch
15+
LABEL MAINTAINER="ylb<[email protected]>"
16+
COPY --from=builder /app/apps/web/dist /app/assets

docker/2.1.0/Dockerfile.nginx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
ARG VER_APP=2.1.0
2+
ARG VER_NGX="1.21.6-alpine"
3+
4+
FROM --platform=$BUILDPLATFORM doocs/md:$VER_APP-assets AS assets
5+
FROM --platform=$TARGETPLATFORM nginx:${VER_NGX}
6+
LABEL MAINTAINER="ylb<[email protected]>"
7+
COPY --from=assets /app/assets /usr/share/nginx/html

docker/2.1.0/Dockerfile.standalone

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
ARG VER_APP=2.1.0
2+
ARG VER_GOLANG=1.17.6-alpine3.15
3+
ARG VER_ALPINE=3.15
4+
5+
FROM --platform=$BUILDPLATFORM "doocs/md:$VER_APP-assets" AS assets
6+
7+
FROM --platform=$BUILDPLATFORM "golang:$VER_GOLANG" AS gobuilder
8+
ARG TARGETARCH
9+
ARG TARGETOS
10+
COPY --from=assets /app/* /app/assets/
11+
COPY server/main.go /app
12+
RUN apk add git bash gcc musl-dev upx
13+
WORKDIR /app
14+
ENV GOOS=$TARGETOS GOARCH=$TARGETARCH
15+
RUN go build -ldflags "-w -s" -o md main.go && \
16+
apk add upx && \
17+
if [ "$TARGETARCH" = "amd64" ]; then upx -9 -o md.minify md; else cp md md.minify; fi
18+
19+
FROM --platform=$TARGETPLATFORM "alpine:$VER_ALPINE"
20+
LABEL MAINTAINER="ylb<[email protected]>"
21+
COPY --from=gobuilder /app/md.minify /bin/md
22+
EXPOSE 80
23+
CMD ["md"]

docker/2.1.0/Dockerfile.static

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
ARG VER_APP=2.1.0
2+
FROM --platform=$BUILDPLATFORM doocs/md:$VER_APP-assets AS assets
3+
4+
# detail https://github.com/lipanski/docker-static-website/blob/master/Dockerfile
5+
FROM --platform=$TARGETPLATFORM lipanski/docker-static-website
6+
7+
WORKDIR /home/static
8+
9+
COPY --from=assets /app/assets /home/static
10+
11+
EXPOSE 80
12+
13+
CMD ["/busybox-httpd", "-f", "-v", "-p", "80", "-c", "httpd.conf"]

docker/2.1.0/server/main.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package main
2+
3+
import (
4+
"embed"
5+
"io/fs"
6+
"log"
7+
"net/http"
8+
)
9+
10+
//go:embed assets
11+
var assets embed.FS
12+
13+
func main() {
14+
mutex := http.NewServeMux()
15+
md, _ := fs.Sub(assets, "assets")
16+
mutex.Handle("/", http.FileServer(http.FS(md)))
17+
err := http.ListenAndServe(":80", mutex)
18+
if err != nil {
19+
log.Fatal(err)
20+
}
21+
}

0 commit comments

Comments
 (0)