forked from jlesage/docker-mediainfo
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
92 lines (74 loc) · 2.1 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#
# mediainfo Dockerfile
#
# https://github.com/jlesage/docker-mediainfo
#
# Pull base image.
FROM jlesage/baseimage-gui:alpine-3.12-glibc-v3.5.7
# Docker image version is provided via build arg.
ARG DOCKER_IMAGE_VERSION=unknown
# Define software versions.
ARG NGPOST_VERSION=4.15
# Define software download URLs.
ARG NGPOST_URL=https://github.com/mbruel/ngPost/archive/v${NGPOST_VERSION}.tar.gz
# Define working directory.
WORKDIR /tmp
# Install dependencies.
RUN add-pkg \
curl \
qt5-qtsvg \
qt5-qtbase-dev \
libssl1.1 \
libressl-dev \
build-base \
nodejs-current \
npm \
git \
wget \
python2-dev \
bash
# Compile and install ngPost.
RUN \
# Download sources for ngPost.
echo "Downloading ngPost package..." && \
mkdir ngPost && \
curl -# -L ${NGPOST_URL} | tar xz --strip 1 -C ngPost && \
# Compile.
cd ngPost/src && \
/usr/lib/qt5/bin/qmake && \
make && \
cp ngPost /usr/bin/ngPost && \
cd && \
# Cleanup.
rm -rf /tmp/* /tmp/.[!.]*
# Install 7z (not p7zip)
RUN \
mkdir /temp && cd /temp && \
wget https://www.7-zip.org/a/7z2103-linux-x64.tar.xz -o 7z.tar.xz && \
tar -xzf 7z.tar.xz && \
cp 7zz /usr/bin/7z && \
cd && \
rm -rf /temp/* /temp/.[!.]*
# Compile and install ParPar.
RUN \
# Download sources for parpar
echo "Downloading & Installing ParPar" && \
npm install -g @animetosho/parpar --unsafe-perm
# Generate and install favicons.
RUN \
APP_ICON_URL=https://raw.githubusercontent.com/mbruel/ngPost/master/src/resources/icons/ngPost.png && \
install_app_icon.sh "$APP_ICON_URL"
# Add files.
COPY rootfs/ /
# Set environment variables.
ENV APP_NAME="ngPost"
# Define mountable directories.
VOLUME ["/config"]
VOLUME ["/storage"]
# Metadata.
LABEL \
org.label-schema.name="ngPost" \
org.label-schema.description="Docker container for ngPost" \
org.label-schema.version="$DOCKER_IMAGE_VERSION" \
org.label-schema.vcs-url="https://github.com/Tr4il/docker-ngPost" \
org.label-schema.schema-version="4.8"