giswqs commited on
Commit
ff82a39
·
1 Parent(s): 74a7af0

Update Dockerfile

Browse files
Dockerfile CHANGED
@@ -1,22 +1,20 @@
1
- FROM quay.io/jupyter/base-notebook:latest
2
 
3
- RUN mamba install -c conda-forge leafmap maplibre fiona geopandas voila -y && \
4
- pip install -U leafmap && \
5
- fix-permissions "${CONDA_DIR}" && \
6
- fix-permissions "/home/${NB_USER}"
7
 
8
- RUN pip install -U leafmap
 
 
9
 
10
- WORKDIR /home/jovyan
11
- USER jovyan
 
12
 
13
- RUN mkdir ./notebooks
14
- COPY ./notebooks ./notebooks
15
-
16
- COPY run.sh .
17
 
18
  EXPOSE 7860
 
19
 
20
- HEALTHCHECK CMD curl --fail http://localhost:7860/_stcore/health
21
-
22
- CMD ["/bin/bash", "run.sh"]
 
1
+ FROM condaforge/mambaforge:latest
2
 
3
+ # The HF Space container runs with user ID 1000.
4
+ RUN useradd -m -u 1000 user
5
+ USER user
 
6
 
7
+ # Set home to the user's home directory
8
+ ENV HOME=/home/user \
9
+ PATH=/home/user/.local/bin:$PATH
10
 
11
+ # Set the working directory to the user's home directory
12
+ WORKDIR $HOME/app
13
+ COPY --chown=user . .
14
 
15
+ RUN mamba env create --prefix $HOME/env -f ./environment.yml
 
 
 
16
 
17
  EXPOSE 7860
18
+ WORKDIR $HOME/app
19
 
20
+ CMD ["mamba", "run", "-p", "/home/user/env", "--no-capture-output", "voila", "--no-browser", "notebooks/"]
 
 
environment.yml ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: voila
2
+ channels:
3
+ - conda-forge
4
+ dependencies:
5
+ - python=3.12
6
+ - pip
7
+ - ipykernel
8
+ - jupyterlab
9
+ - leafmap
10
+ - maplibre
11
+ - voila
12
+ - voila_topbar
notebooks/{intro.ipynb → leafmap.ipynb} RENAMED
@@ -2,7 +2,7 @@
2
  "cells": [
3
  {
4
  "cell_type": "code",
5
- "execution_count": null,
6
  "metadata": {},
7
  "outputs": [],
8
  "source": [
@@ -15,8 +15,10 @@
15
  "metadata": {},
16
  "outputs": [],
17
  "source": [
18
- "m = leafmap.Map(style=\"liberty\")\n",
19
- "m.add_basemap(\"Satellite\")\n",
 
 
20
  "m"
21
  ]
22
  }
 
2
  "cells": [
3
  {
4
  "cell_type": "code",
5
+ "execution_count": 1,
6
  "metadata": {},
7
  "outputs": [],
8
  "source": [
 
15
  "metadata": {},
16
  "outputs": [],
17
  "source": [
18
+ "m = leafmap.Map(\n",
19
+ " style=\"liberty\", projection=\"globe\", sidebar_visible=True, height=\"750px\"\n",
20
+ ")\n",
21
+ "m.add_basemap(\"USGS.Imagery\")\n",
22
  "m"
23
  ]
24
  }
requirements.txt DELETED
@@ -1,3 +0,0 @@
1
- leafmap
2
- maplibre
3
- voila
 
 
 
 
run.sh DELETED
@@ -1 +0,0 @@
1
- voila --Voila.ip=0.0.0.0 --no-browser --strip_sources=True --enable_nbextensions=True --MappingKernelManager.cull_interval=60 --MappingKernelManager.cull_idle_timeout=120 --NotebookClient.iopub_timeout=30 --port=7860 notebooks/
 
 
voila.json ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "Voila": {
3
+ "ip":"0.0.0.0",
4
+ "port": 7860,
5
+ "tornado_settings": {
6
+ "headers": {
7
+ "Content-Security-Policy": "frame-ancestors self *"
8
+ }
9
+ }
10
+ }
11
+ }