-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile-8.4
111 lines (100 loc) · 2.93 KB
/
Dockerfile-8.4
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#
#--------------------------------------------------------------------------
# Image Setup
#--------------------------------------------------------------------------
#
FROM ghcr.io/linuxserver/baseimage-ubuntu:noble
# set version label
ARG BUILD_DATE
ARG VERSION
ARG CODE_RELEASE
LABEL build_version="StreamWise Workspace version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL org.opencontainers.image.description="StreamWise Workspace Base Image for StreamWise white-label video conferencing platform"
LABEL maintainer="andrekutianski"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config"
RUN locale-gen en_US.UTF-8
ENV LANGUAGE=en_US.UTF-8
ENV LC_ALL=en_US.UTF-8
ENV LC_CTYPE=en_US.UTF-8
ENV LANG=en_US.UTF-8
ENV TERM=xterm
ENV COMPOSER_HOME=/usr/local/composer
# Install runtime dependencies
RUN set -eux && \
echo "DPkg::options { \"--force-confdef\"; };" >> /etc/apt/apt.conf && \
echo "**** install runtime packages ****" && \
apt-get update && \
apt-get upgrade -y && \
apt-get install -y \
bash \
curl \
git \
jq \
libxml2-utils \
locales \
nano \
postgresql-client \
rsync \
sqlite3 \
tree \
unzip \
vim \
sudo \
net-tools \
libatomic1 \
pkg-config \
libcurl4-openssl-dev \
libedit-dev \
libssl-dev \
libxml2-dev \
xz-utils \
libsqlite3-dev
RUN set -eux \
# Add the "PHP 8" ppa
&& apt-get install -y software-properties-common \
&& add-apt-repository -y ppa:ondrej/php \
#
#--------------------------------------------------------------------------
# Software's Installation
#--------------------------------------------------------------------------
#
# Install "PHP Extentions", "libraries", "Software's"
&& apt-get update \
&& apt-get upgrade -y \
&& apt-get install -y \
php8.4-cli \
php8.4-common \
php8.4-curl \
php8.4-intl \
php8.4-xml \
php8.4-mbstring \
php8.4-mysql \
php8.4-pgsql \
php8.4-sqlite \
php8.4-sqlite3 \
php8.4-zip \
php8.4-bcmath \
php8.4-memcached \
php8.4-gd \
php8.4-dev
RUN set -eux && \
#####################################
# Composer:
#####################################
# create composer HOME
mkdir -p ${COMPOSER_HOME} && \
# Install composer and add its bin to the PATH.
curl -s http://getcomposer.org/installer | php && \
echo "export PATH=${PATH}:/usr/local/composer/vendor/bin" >> /etc/bash.bashrc && \
mv composer.phar /usr/local/bin/composer && \
printf "StreamWise Workspace version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
echo "**** clean up ****" && \
apt-get clean && \
rm -rf \
/config/* \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
COPY /root /