Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
4323eb79f3 | |||
2c7ae8753d | |||
8438cade99 | |||
9cc14b80b9 | |||
85410e1f25 | |||
6fce893428 | |||
2dd7a87f4c | |||
c6d1b7aff4 | |||
dc0dc1cfe1 | |||
e0bec5ad2b | |||
d7e63975b9 |
9
.github/workflows/docker.yaml
vendored
9
.github/workflows/docker.yaml
vendored
@ -1,6 +1,11 @@
|
||||
name: Docker
|
||||
|
||||
on: [push]
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- Beta
|
||||
tags:
|
||||
- "v*"
|
||||
|
||||
env:
|
||||
REGISTRY: docker.io
|
||||
@ -23,6 +28,8 @@ jobs:
|
||||
|
||||
- name: Setup Docker buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
version: latest
|
||||
|
||||
# Extract metadata (tags, labels) for Docker
|
||||
# https://github.com/docker/metadata-action
|
||||
|
2
.github/workflows/prerelease.yml
vendored
2
.github/workflows/prerelease.yml
vendored
@ -1,4 +1,4 @@
|
||||
name: prerelease-test
|
||||
name: prerelease
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
|
4
.github/workflows/release.yaml
vendored
4
.github/workflows/release.yaml
vendored
@ -1,4 +1,4 @@
|
||||
name: release-test
|
||||
name: release
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
@ -35,7 +35,7 @@ jobs:
|
||||
BINDIR: bin
|
||||
run: make -j releases
|
||||
|
||||
- name: Upload Alpha
|
||||
- name: Upload Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
if: ${{ success() && startsWith(github.ref, 'refs/tags/')}}
|
||||
with:
|
||||
|
29
Dockerfile
29
Dockerfile
@ -7,35 +7,22 @@ RUN apk add --no-cache make git && \
|
||||
mkdir /clash-config && \
|
||||
wget -O /clash-config/Country.mmdb https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb && \
|
||||
wget -O /clash-config/geosite.dat https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat && \
|
||||
wget -O /clash-config/geoip.dat https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
|
||||
wget -O /clash-config/geoip.dat https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat \
|
||||
|
||||
WORKDIR /clash-src
|
||||
COPY . /clash-src
|
||||
RUN go mod download
|
||||
RUN /bin/ash -c 'set -ex && \
|
||||
if [ "$TARGETARCH" == "amd64" ]; then \
|
||||
GOOS=$TARGETOS GOARCH=$TARGETARCH GOAMD64=v1 make docker && \
|
||||
mv ./bin/Clash.Meta-docker ./bin/clash-amd64v1 && \
|
||||
GOOS=$TARGETOS GOARCH=$TARGETARCH GOAMD64=v2 make docker && \
|
||||
mv ./bin/Clash.Meta-docker ./bin/clash-amd64v2 && \
|
||||
GOOS=$TARGETOS GOARCH=$TARGETARCH GOAMD64=v3 make docker && \
|
||||
mv ./bin/Clash.Meta-docker ./bin/clash-amd64v3 && \
|
||||
ln -s clash-amd64v3 ./bin/clash-amd64v4 && \
|
||||
mv check_amd64.sh ./bin/ && \
|
||||
printf "#!/bin/sh\\nsh ./check_amd64.sh\\nexec ./clash-amd64v\$? \$@" > ./bin/clash && \
|
||||
chmod +x ./bin/check_amd64.sh ./bin/clash; \
|
||||
else \
|
||||
GOOS=$TARGETOS GOARCH=$TARGETARCH make docker && \
|
||||
mv ./bin/Clash.Meta-docker ./bin/clash; \
|
||||
fi'
|
||||
WORKDIR /clash-src
|
||||
RUN go mod download &&\
|
||||
make docker &&\
|
||||
mv ./bin/Clash.Meta-docker /clash
|
||||
|
||||
FROM alpine:latest
|
||||
LABEL org.opencontainers.image.source="https://github.com/MetaCubeX/Clash.Meta"
|
||||
|
||||
RUN apk add --no-cache ca-certificates tzdata
|
||||
|
||||
VOLUME ["/root/.config/clash/"]
|
||||
EXPOSE 7890/tcp
|
||||
|
||||
COPY --from=builder /clash-config/ /root/.config/clash/
|
||||
COPY --from=builder /clash-src/bin/ /
|
||||
COPY --from=builder /clash /clash
|
||||
RUN chmod +x /clash
|
||||
ENTRYPOINT [ "/clash" ]
|
4
Makefile
4
Makefile
@ -5,7 +5,7 @@ ifeq ($(BRANCH),Alpha)
|
||||
VERSION=alpha-$(shell git rev-parse --short HEAD)
|
||||
else ifeq ($(BRANCH),Beta)
|
||||
VERSION=beta-$(shell git rev-parse --short HEAD)
|
||||
else ifeq ($(BRANCH),Meta)
|
||||
else ifeq ($(BRANCH),HEAD)
|
||||
VERSION=$(shell git describe --tags)
|
||||
else
|
||||
VERSION=unknown
|
||||
@ -52,7 +52,7 @@ all:linux-amd64 linux-arm64\
|
||||
windows-amd64 windows-arm64\
|
||||
|
||||
docker:
|
||||
$(GOBUILD) -o $(BINDIR)/$(NAME)-$@
|
||||
GOAMD64=v3 $(GOBUILD) -o $(BINDIR)/$(NAME)-$@
|
||||
|
||||
darwin-amd64v3:
|
||||
GOARCH=amd64 GOOS=darwin GOAMD64=v3 $(GOBUILD) -o $(BINDIR)/$(NAME)-$@
|
||||
|
Reference in New Issue
Block a user