Geoeasy commited on
Commit
de36bfb
·
verified ·
1 Parent(s): 2641f99

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +43 -4
Dockerfile CHANGED
@@ -1,10 +1,49 @@
 
 
1
  FROM rocker/shiny:latest
2
 
3
- # Instalar pacotes extras
4
- RUN R -e "install.packages(c('shiny','httr2'))"
5
 
6
- # Copiar app
 
 
 
 
7
  COPY app.R /srv/shiny-server/
8
 
 
 
 
 
 
 
 
9
  EXPOSE 7860
10
- CMD [\"/usr/bin/shiny-server\"]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # --- Dockerfile ---
2
+ # Usa imagem com Shiny Server já instalado
3
  FROM rocker/shiny:latest
4
 
 
 
5
 
6
+ # Instala pacotes necessários
7
+ RUN R -e "install.packages(c('httr2'))"
8
+
9
+
10
+ # Copia app para o diretório padrão do Shiny Server
11
  COPY app.R /srv/shiny-server/
12
 
13
+
14
+ # Script de inicialização que injeta a porta do Spaces no config do Shiny Server
15
+ COPY init.sh /init.sh
16
+ RUN chmod +x /init.sh
17
+
18
+
19
+ # Porta padrão exigida pelo Spaces
20
  EXPOSE 7860
21
+
22
+
23
+ # Use exec form (NÃO coloque aspas na lista JSON)
24
+ CMD ["/init.sh"]
25
+
26
+
27
+
28
+
29
+ # --- init.sh ---
30
+ #!/usr/bin/env bash
31
+ set -e
32
+ PORT_TO_USE=${PORT:-7860}
33
+
34
+
35
+ # Gera config do shiny-server usando a porta do Spaces
36
+ cat > /etc/shiny-server/shiny-server.conf <<EOF
37
+ run_as shiny;
38
+ server {
39
+ listen ${PORT_TO_USE};
40
+ location / {
41
+ site_dir /srv/shiny-server;
42
+ log_dir /var/log/shiny-server;
43
+ directory_index on;
44
+ }
45
+ }
46
+ EOF
47
+
48
+
49
+ exec /usr/bin/shiny-server