Install vcn inside docker container (#2727)
* Install vcn inside docker container * ditch multistage * Fix docker file * fix lint
This commit is contained in:
parent
ff4e550ba3
commit
b342073ba9
|
@ -1,5 +1,6 @@
|
||||||
ignored:
|
ignored:
|
||||||
- DL3018
|
- DL3003
|
||||||
- DL3006
|
- DL3006
|
||||||
- DL3013
|
- DL3013
|
||||||
|
- DL3018
|
||||||
- SC2155
|
- SC2155
|
||||||
|
|
45
Dockerfile
45
Dockerfile
|
@ -1,13 +1,18 @@
|
||||||
ARG BUILD_FROM
|
ARG BUILD_FROM
|
||||||
FROM $BUILD_FROM
|
FROM ${BUILD_FROM}
|
||||||
|
|
||||||
ENV \
|
ENV \
|
||||||
S6_SERVICES_GRACETIME=10000 \
|
S6_SERVICES_GRACETIME=10000 \
|
||||||
SUPERVISOR_API=http://localhost
|
SUPERVISOR_API=http://localhost
|
||||||
|
|
||||||
|
ARG BUILD_ARCH
|
||||||
|
ARG VCN_VERSION
|
||||||
|
WORKDIR /usr/src
|
||||||
|
|
||||||
# Install base
|
# Install base
|
||||||
RUN \
|
RUN \
|
||||||
apk add --no-cache \
|
set -x \
|
||||||
|
&& apk add --no-cache \
|
||||||
eudev \
|
eudev \
|
||||||
eudev-libs \
|
eudev-libs \
|
||||||
git \
|
git \
|
||||||
|
@ -15,10 +20,38 @@ RUN \
|
||||||
libffi \
|
libffi \
|
||||||
libpulse \
|
libpulse \
|
||||||
musl \
|
musl \
|
||||||
openssl
|
openssl \
|
||||||
|
&& apk add --no-cache --virtual .build-dependencies \
|
||||||
ARG BUILD_ARCH
|
build-base \
|
||||||
WORKDIR /usr/src
|
go \
|
||||||
|
git \
|
||||||
|
\
|
||||||
|
&& git clone -b v${VCN_VERSION} --depth 1 \
|
||||||
|
https://github.com/codenotary/vcn \
|
||||||
|
&& cd vcn \
|
||||||
|
\
|
||||||
|
# Fix: https://github.com/codenotary/vcn/issues/131
|
||||||
|
&& go get github.com/codenotary/immudb@4cf9e2ae06ac2e6ec98a60364c3de3eab5524757 \
|
||||||
|
\
|
||||||
|
&& if [ "${BUILD_ARCH}" = "armhf" ]; then \
|
||||||
|
GOARM=6 GOARCH=arm go build -o vcn -ldflags="-s -w" ./cmd/vcn; \
|
||||||
|
elif [ "${BUILD_ARCH}" = "armv7" ]; then \
|
||||||
|
GOARM=7 GOARCH=arm go build -o vcn -ldflags="-s -w" ./cmd/vcn; \
|
||||||
|
elif [ "${BUILD_ARCH}" = "aarch64" ]; then \
|
||||||
|
GOARCH=arm64 go build -o vcn -ldflags="-s -w" ./cmd/vcn; \
|
||||||
|
elif [ "${BUILD_ARCH}" = "i386" ]; then \
|
||||||
|
GOARCH=386 go build -o vcn -ldflags="-s -w" ./cmd/vcn; \
|
||||||
|
elif [ "${BUILD_ARCH}" = "amd64" ]; then \
|
||||||
|
GOARCH=amd64 go build -o vcn -ldflags="-s -w" ./cmd/vcn; \
|
||||||
|
else \
|
||||||
|
exit 1; \
|
||||||
|
fi \
|
||||||
|
\
|
||||||
|
&& rm -rf /root/go \
|
||||||
|
&& mv vcn /usr/bin/vcn \
|
||||||
|
\
|
||||||
|
&& apk del .build-dependencies \
|
||||||
|
&& rm -rf /usr/src/vcn
|
||||||
|
|
||||||
# Install requirements
|
# Install requirements
|
||||||
COPY requirements.txt .
|
COPY requirements.txt .
|
||||||
|
|
|
@ -7,6 +7,9 @@
|
||||||
"amd64": "homeassistant/amd64-base-python:3.8-alpine3.13",
|
"amd64": "homeassistant/amd64-base-python:3.8-alpine3.13",
|
||||||
"i386": "homeassistant/i386-base-python:3.8-alpine3.13"
|
"i386": "homeassistant/i386-base-python:3.8-alpine3.13"
|
||||||
},
|
},
|
||||||
|
"args": {
|
||||||
|
"VCN_VERSION": "0.9.4"
|
||||||
|
},
|
||||||
"labels": {
|
"labels": {
|
||||||
"io.hass.type": "supervisor"
|
"io.hass.type": "supervisor"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue