mirror of
https://github.com/whyvl/wireproxy.git
synced 2025-04-29 10:51:42 +02:00
Redo Dockerfile
- Build the currently checked-out code, instead of cloning the repo inside the Dockerfile. This makes it much easier to build a container for a particular branch or commit; people working on personal forks will be able to build containers for their forks without modifying the Dockerfile. - Switch from Alpine to distroless; I couldn't actually get the current version of the Dockerfile to build, it kept dying with some error about gvisor. Aside from building with no trouble, the new Dockerfile reduces the size of the image from 23MB to 9MB. - Move Dockerfile into the root; this is a matter of taste, but allows one to simply `docker build` the directory instead of having to also specify the path to the Dockerfile. As part of this, I removed the `config` and `Makefile` from the `docker` directory, since they seemed specific to someone's setup and incomplete without that context.
This commit is contained in:
parent
e686381fa9
commit
35071b55fc
5 changed files with 21 additions and 36 deletions
6
.dockerignore
Normal file
6
.dockerignore
Normal file
|
@ -0,0 +1,6 @@
|
|||
.dockerignore
|
||||
.github
|
||||
.gitignore
|
||||
Dockerfile
|
||||
LICENSE
|
||||
README.md
|
15
Dockerfile
Normal file
15
Dockerfile
Normal file
|
@ -0,0 +1,15 @@
|
|||
# Start by building the application.
|
||||
FROM golang:1.18 as build
|
||||
|
||||
WORKDIR /usr/src/wireproxy
|
||||
COPY . .
|
||||
|
||||
RUN CGO_ENABLED=0 go build ./cmd/wireproxy
|
||||
|
||||
# Now copy it into our base image.
|
||||
FROM gcr.io/distroless/static-debian11:nonroot
|
||||
COPY --from=build /usr/src/wireproxy/wireproxy /usr/bin/wireproxy
|
||||
|
||||
VOLUME [ "/etc/wireproxy"]
|
||||
ENTRYPOINT [ "/usr/bin/wireproxy" ]
|
||||
CMD [ "--config", "/etc/wireproxy/config" ]
|
|
@ -1,14 +0,0 @@
|
|||
FROM golang:alpine AS go-build
|
||||
|
||||
RUN apk --no-cache add --update git
|
||||
RUN git clone https://github.com/octeep/wireproxy.git
|
||||
RUN cd ./wireproxy && go build ./cmd/wireproxy
|
||||
|
||||
|
||||
FROM alpine:latest
|
||||
|
||||
RUN apk upgrade
|
||||
COPY --from=go-build /go/wireproxy/wireproxy /usr/bin/
|
||||
|
||||
VOLUME [ "/etc/wireproxy"]
|
||||
ENTRYPOINT [ "/usr/bin/wireproxy", "--config", "/etc/wireproxy/config" ]
|
|
@ -1,10 +0,0 @@
|
|||
build:
|
||||
docker build -t wireproxy .
|
||||
|
||||
run:
|
||||
docker run \
|
||||
--rm --tty --interactive \
|
||||
--name=wireproxy \
|
||||
--publish 2534:2534 \
|
||||
--volume "${PWD}/config:/etc/wireproxy/config:ro" \
|
||||
wireproxy
|
|
@ -1,12 +0,0 @@
|
|||
[Interface]
|
||||
Address = ###Interface - Address###
|
||||
PrivateKey = ###Interface - PrivateKey###
|
||||
DNS = ###Interface - DNS###
|
||||
|
||||
[Peer]
|
||||
PublicKey = ###Peer - PublicKey###
|
||||
Endpoint = ###Peer - Endpoint###
|
||||
|
||||
# Socks5 create a socks5 proxy on your LAN, and any traffic would be routed via wireguard
|
||||
[Socks5]
|
||||
BindAddress = 0.0.0.0:2534
|
Loading…
Add table
Add a link
Reference in a new issue