mirror of
https://github.com/teddysun/across.git
synced 2025-01-19 06:19:35 +08:00
51 lines
1.8 KiB
Docker
51 lines
1.8 KiB
Docker
# Dockerfile for v2ray based alpine
|
|
# Copyright (C) 2019 Teddysun <i@teddysun.com>
|
|
# Reference URL:
|
|
# https://github.com/v2ray/v2ray-core
|
|
|
|
FROM golang:alpine AS builder
|
|
RUN set -ex \
|
|
&& apk add --no-cache git unzip \
|
|
&& mkdir -p /go/src/github.com/v2ray \
|
|
&& cd /go/src/github.com/v2ray \
|
|
&& git clone https://github.com/v2ray/v2ray-core.git \
|
|
&& cd v2ray-core \
|
|
&& go get -d \
|
|
&& cd main \
|
|
&& go build -o /go/bin/v2ray \
|
|
&& cd ../infra/control/main \
|
|
&& go build -o /go/bin/v2ctl \
|
|
&& git clone https://github.com/v2ray/geoip.git \
|
|
&& cd geoip \
|
|
&& go get -d \
|
|
&& go build -o /go/bin/geoip \
|
|
&& GEOSITE_TAG="$(wget -qO- https://api.github.com/repos/v2ray/domain-list-community/releases/latest | grep 'tag_name' | sed -E 's/.*"([^"]+)".*/\1/')" \
|
|
&& wget -O /go/bin/geosite.dat "https://github.com/v2ray/domain-list-community/releases/download/${GEOSITE_TAG}/dlc.dat" \
|
|
&& cd /tmp \
|
|
&& wget -O GeoLite2-Country-CSV.zip http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country-CSV.zip \
|
|
&& unzip GeoLite2-Country-CSV.zip \
|
|
&& rm -fv GeoLite2-Country-CSV.zip \
|
|
&& mv GeoLite2* geoip \
|
|
&& /go/bin/geoip --country=./geoip/GeoLite2-Country-Locations-en.csv --ipv4=./geoip/GeoLite2-Country-Blocks-IPv4.csv --ipv6=./geoip/GeoLite2-Country-Blocks-IPv6.csv \
|
|
&& mv geoip.dat /go/bin/
|
|
|
|
FROM alpine:latest
|
|
LABEL maintainer="Teddysun <i@teddysun.com>"
|
|
|
|
RUN set -ex \
|
|
&& apk add --no-cache tzdata ca-certificates \
|
|
&& rm -rf /var/cache/apk/* \
|
|
&& mkdir -p /etc/v2ray \
|
|
&& mkdir -p /var/log/v2ray
|
|
|
|
COPY --from=builder /go/bin/v2ray /usr/bin
|
|
COPY --from=builder /go/bin/v2ctl /usr/bin
|
|
COPY --from=builder /go/bin/geoip.dat /usr/bin
|
|
COPY --from=builder /go/bin/geosite.dat /usr/bin
|
|
COPY config.json /etc/v2ray/config.json
|
|
VOLUME /etc/v2ray
|
|
|
|
ENV TZ=Asia/Shanghai
|
|
|
|
CMD [ "v2ray", "-config", "/etc/v2ray/config.json" ]
|