Greg-House commited on
Commit
f06695c
·
verified ·
1 Parent(s): 0bb472e

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +34 -66
Dockerfile CHANGED
@@ -2,81 +2,49 @@ FROM ubuntu:22.04
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
 
5
- # --------------------------
6
- # Install dependencies
7
- # --------------------------
8
  RUN apt-get update && apt-get install -y \
9
- apache2 \
10
- php php-fpm php-gd php-xml php-mbstring php-zip php-curl php-mysql \
11
- php-intl php-bz2 php-imagick php-gmp php-bcmath \
12
- mariadb-server \
13
- wget curl gnupg lsb-release apt-transport-https \
14
  supervisor \
15
- libreoffice \
16
- && apt-get clean && rm -rf /var/lib/apt/lists/*
17
 
18
- # --------------------------
19
- # Install Nextcloud
20
- # --------------------------
21
- WORKDIR /var/www/html
22
- RUN wget https://download.nextcloud.com/server/releases/latest.tar.bz2 \
23
- && tar -xjf latest.tar.bz2 --strip 1 \
24
- && rm latest.tar.bz2 \
25
- && chown -R www-data:www-data /var/www/html
26
 
27
- # --------------------------
28
- # Install Collabora CODE
29
- # --------------------------
30
- RUN echo "deb https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-deb/ /" \
31
- | tee /etc/apt/sources.list.d/collabora.list \
32
- && wget --no-check-certificate \
33
- https://collaboraoffice.com/repos/CollaboraOnline/CODE-deb-key.gpg \
34
- -O /etc/apt/trusted.gpg.d/collabora.gpg \
35
- && apt-get update \
36
- && apt-get install -y loolwsd code-brand \
37
- && apt-get clean && rm -rf /var/lib/apt/lists/*
38
 
39
- # --------------------------
40
- # Configure Apache (Nextcloud)
41
- # --------------------------
42
- RUN a2enmod rewrite headers env dir mime setenvif ssl proxy proxy_wstunnel
43
- RUN chown -R www-data:www-data /var/www/html
44
 
45
- # --------------------------
46
- # Supervisor config
47
- # --------------------------
48
- RUN mkdir -p /etc/supervisor/conf.d
 
 
49
 
50
- # Apache service
51
- RUN bash -c 'cat > /etc/supervisor/conf.d/apache.conf <<EOF
52
- [program:apache2]
53
- command=/usr/sbin/apachectl -D FOREGROUND
54
- autostart=true
55
- autorestart=true
56
- EOF'
57
 
58
- # Collabora service
59
- RUN bash -c 'cat > /etc/supervisor/conf.d/collabora.conf <<EOF
60
- [program:collabora]
61
- command=/usr/bin/loolwsd --o:sys_template_path=/opt/lool/systemplate --o:child_root_path=/opt/lool/child-roots --o:storage.filesystem[@allow]=true
62
- autostart=true
63
- autorestart=true
64
- EOF'
65
 
66
- # MariaDB service
67
- RUN bash -c 'cat > /etc/supervisor/conf.d/mariadb.conf <<EOF
68
- [program:mariadb]
69
- command=/usr/sbin/mysqld
70
- autostart=true
71
- autorestart=true
72
- EOF'
73
 
74
- # --------------------------
75
- # Expose ports
76
- # --------------------------
77
- EXPOSE 80 9980
78
 
79
- # --------------------------
80
- # Launch supervisor
81
- # --------------------------
82
  CMD ["/usr/bin/supervisord", "-n"]
 
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
 
5
+ # --- Update Base ---
 
 
6
  RUN apt-get update && apt-get install -y \
7
+ apt-transport-https \
8
+ ca-certificates \
9
+ gnupg \
10
+ wget \
11
+ software-properties-common \
12
  supervisor \
13
+ && rm -rf /var/lib/apt/lists/*
 
14
 
15
+ # --- Install Apache + PHP for Nextcloud ---
16
+ RUN apt-get update && apt-get install -y \
17
+ apache2 \
18
+ libapache2-mod-php \
19
+ php php-gd php-mbstring php-xml php-zip php-curl php-intl php-mysql php-bz2 php-imagick php-gmp php-json php-ldap \
20
+ && rm -rf /var/lib/apt/lists/*
 
 
21
 
22
+ # --- Download Nextcloud ---
23
+ WORKDIR /var/www/html
24
+ RUN wget https://download.nextcloud.com/server/releases/latest.tar.bz2 && \
25
+ tar -xjf latest.tar.bz2 && \
26
+ rm latest.tar.bz2 && \
27
+ chown -R www-data:www-data nextcloud
 
 
 
 
 
28
 
29
+ # Change Apache port to 7890
30
+ RUN sed -i 's/80/7890/g' /etc/apache2/ports.conf && \
31
+ sed -i 's/<VirtualHost \*:80>/<VirtualHost \*:7890>/' /etc/apache2/sites-available/000-default.conf
 
 
32
 
33
+ # --- Install Collabora CODE ---
34
+ RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7A4D1868 && \
35
+ echo "deb https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-deb/ /" \
36
+ > /etc/apt/sources.list.d/collabora.list && \
37
+ apt-get update && apt-get install -y code-brand code \
38
+ && rm -rf /var/lib/apt/lists/*
39
 
40
+ # Collabora default config
41
+ RUN sed -i 's/0.0.0.0:9980/0.0.0.0:9980/' /etc/collabora-online/coolwsd.xml
 
 
 
 
 
42
 
43
+ # --- Supervisor Config ---
44
+ RUN mkdir -p /var/log/supervisor
 
 
 
 
 
45
 
46
+ COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
 
 
 
 
 
 
47
 
48
+ EXPOSE 7890 9980
 
 
 
49
 
 
 
 
50
  CMD ["/usr/bin/supervisord", "-n"]