thejagstudio commited on
Commit
aba5c38
·
verified ·
1 Parent(s): d87c3d9

Upload 8 files

Browse files
Files changed (8) hide show
  1. .gitattributes +34 -35
  2. Dockerfile +111 -0
  3. README.md +13 -11
  4. login.html +69 -0
  5. on_startup.sh +5 -0
  6. packages.txt +1 -0
  7. requirements.txt +4 -0
  8. start_server.sh +21 -0
.gitattributes CHANGED
@@ -1,35 +1,34 @@
1
- *.7z filter=lfs diff=lfs merge=lfs -text
2
- *.arrow filter=lfs diff=lfs merge=lfs -text
3
- *.bin filter=lfs diff=lfs merge=lfs -text
4
- *.bz2 filter=lfs diff=lfs merge=lfs -text
5
- *.ckpt filter=lfs diff=lfs merge=lfs -text
6
- *.ftz filter=lfs diff=lfs merge=lfs -text
7
- *.gz filter=lfs diff=lfs merge=lfs -text
8
- *.h5 filter=lfs diff=lfs merge=lfs -text
9
- *.joblib filter=lfs diff=lfs merge=lfs -text
10
- *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
- *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
- *.model filter=lfs diff=lfs merge=lfs -text
13
- *.msgpack filter=lfs diff=lfs merge=lfs -text
14
- *.npy filter=lfs diff=lfs merge=lfs -text
15
- *.npz filter=lfs diff=lfs merge=lfs -text
16
- *.onnx filter=lfs diff=lfs merge=lfs -text
17
- *.ot filter=lfs diff=lfs merge=lfs -text
18
- *.parquet filter=lfs diff=lfs merge=lfs -text
19
- *.pb filter=lfs diff=lfs merge=lfs -text
20
- *.pickle filter=lfs diff=lfs merge=lfs -text
21
- *.pkl filter=lfs diff=lfs merge=lfs -text
22
- *.pt filter=lfs diff=lfs merge=lfs -text
23
- *.pth filter=lfs diff=lfs merge=lfs -text
24
- *.rar filter=lfs diff=lfs merge=lfs -text
25
- *.safetensors filter=lfs diff=lfs merge=lfs -text
26
- saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
- *.tar.* filter=lfs diff=lfs merge=lfs -text
28
- *.tar filter=lfs diff=lfs merge=lfs -text
29
- *.tflite filter=lfs diff=lfs merge=lfs -text
30
- *.tgz filter=lfs diff=lfs merge=lfs -text
31
- *.wasm filter=lfs diff=lfs merge=lfs -text
32
- *.xz filter=lfs diff=lfs merge=lfs -text
33
- *.zip filter=lfs diff=lfs merge=lfs -text
34
- *.zst filter=lfs diff=lfs merge=lfs -text
35
- *tfevents* filter=lfs diff=lfs merge=lfs -text
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tflite filter=lfs diff=lfs merge=lfs -text
29
+ *.tgz filter=lfs diff=lfs merge=lfs -text
30
+ *.wasm filter=lfs diff=lfs merge=lfs -text
31
+ *.xz filter=lfs diff=lfs merge=lfs -text
32
+ *.zip filter=lfs diff=lfs merge=lfs -text
33
+ *.zst filter=lfs diff=lfs merge=lfs -text
34
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
 
Dockerfile ADDED
@@ -0,0 +1,111 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM nvidia/cuda:11.3.1-base-ubuntu20.04
2
+
3
+ ENV DEBIAN_FRONTEND=noninteractive \
4
+ TZ=Europe/Paris
5
+ EXPOSE 9876
6
+ EXPOSE 8765
7
+ EXPOSE 7654
8
+ EXPOSE 6543
9
+ EXPOSE 5432
10
+ EXPOSE 4321
11
+ EXPOSE 3210
12
+ # Remove any third-party apt sources to avoid issues with expiring keys.
13
+ # Install some basic utilities
14
+ RUN rm -f /etc/apt/sources.list.d/*.list && \
15
+ apt-get update && apt-get install -y --no-install-recommends \
16
+ curl \
17
+ ca-certificates \
18
+ sudo \
19
+ git \
20
+ wget \
21
+ procps \
22
+ git-lfs \
23
+ zip \
24
+ unzip \
25
+ htop \
26
+ vim \
27
+ nano \
28
+ bzip2 \
29
+ libx11-6 \
30
+ build-essential \
31
+ libsndfile-dev \
32
+ software-properties-common \
33
+ && rm -rf /var/lib/apt/lists/*
34
+
35
+ RUN add-apt-repository ppa:flexiondotorg/nvtop && \
36
+ apt-get upgrade -y && \
37
+ apt-get install -y --no-install-recommends nvtop
38
+
39
+ RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - && \
40
+ apt-get install -y nodejs && \
41
+ npm install -g configurable-http-proxy
42
+
43
+ # Create a working directory
44
+ WORKDIR /app
45
+
46
+ # Create a non-root user and switch to it
47
+ RUN adduser --disabled-password --gecos '' --shell /bin/bash user \
48
+ && chown -R user:user /app
49
+ RUN echo "user ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/90-user
50
+ USER user
51
+
52
+ # All users can use /home/user as their home directory
53
+ ENV HOME=/home/user
54
+ RUN mkdir $HOME/.cache $HOME/.config \
55
+ && chmod -R 777 $HOME
56
+
57
+ # Set up the Conda environment
58
+ ENV CONDA_AUTO_UPDATE_CONDA=false \
59
+ PATH=$HOME/miniconda/bin:$PATH
60
+ RUN curl -sLo ~/miniconda.sh https://repo.continuum.io/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh \
61
+ && chmod +x ~/miniconda.sh \
62
+ && ~/miniconda.sh -b -p ~/miniconda \
63
+ && rm ~/miniconda.sh \
64
+ && conda clean -ya
65
+
66
+ WORKDIR $HOME/app
67
+
68
+ #######################################
69
+ # Start root user section
70
+ #######################################
71
+
72
+ USER root
73
+
74
+ # User Debian packages
75
+ ## Security warning : Potential user code executed as root (build time)
76
+ RUN --mount=target=/root/packages.txt,source=packages.txt \
77
+ apt-get update && \
78
+ xargs -r -a /root/packages.txt apt-get install -y --no-install-recommends \
79
+ && rm -rf /var/lib/apt/lists/*
80
+
81
+ RUN --mount=target=/root/on_startup.sh,source=on_startup.sh,readwrite \
82
+ bash /root/on_startup.sh
83
+
84
+ RUN mkdir /data && chown user:user /data
85
+
86
+ #######################################
87
+ # End root user section
88
+ #######################################
89
+
90
+ USER user
91
+
92
+ # Python packages
93
+ RUN --mount=target=requirements.txt,source=requirements.txt \
94
+ pip install --no-cache-dir --upgrade -r requirements.txt
95
+
96
+ # Copy the current directory contents into the container at $HOME/app setting the owner to the user
97
+ COPY --chown=user . $HOME/app
98
+
99
+ RUN chmod +x start_server.sh
100
+
101
+ COPY --chown=user login.html /home/user/miniconda/lib/python3.9/site-packages/jupyter_server/templates/login.html
102
+
103
+ ENV PYTHONUNBUFFERED=1 \
104
+ GRADIO_ALLOW_FLAGGING=never \
105
+ GRADIO_NUM_PORTS=1 \
106
+ GRADIO_SERVER_NAME=0.0.0.0 \
107
+ GRADIO_THEME=huggingface \
108
+ SYSTEM=spaces \
109
+ SHELL=/bin/bash
110
+
111
+ CMD ["./start_server.sh"]
README.md CHANGED
@@ -1,11 +1,13 @@
1
- ---
2
- title: ArpitLab
3
- emoji: 📉
4
- colorFrom: gray
5
- colorTo: purple
6
- sdk: docker
7
- pinned: false
8
- license: apache-2.0
9
- ---
10
-
11
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
1
+ ---
2
+ title: JupyterLab
3
+ emoji: 💻🐳
4
+ colorFrom: gray
5
+ colorTo: green
6
+ sdk: docker
7
+ pinned: false
8
+ tags:
9
+ - jupyterlab
10
+ suggested_storage: small
11
+ ---
12
+
13
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
login.html ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {% extends "page.html" %}
2
+
3
+
4
+ {% block stylesheet %}
5
+ {% endblock %}
6
+
7
+ {% block site %}
8
+
9
+ <div id="jupyter-main-app" class="container">
10
+
11
+ <img src="https://huggingface.co/front/assets/huggingface_logo-noborder.svg" alt="Hugging Face Logo">
12
+ <h4>You can duplicate this Space to run it private.</h4>
13
+ <br>
14
+ <a class="duplicate-button" style="display:inline-block" target="_blank" href="https://huggingface.co/spaces/DockerTemplates/jupyterlab?duplicate=true">
15
+ <img style="margin: 0" src="https://img.shields.io/badge/-Duplicate%20Space-blue?labelColor=white&amp;style=flat&amp;logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAP5JREFUOE+lk7FqAkEURY+ltunEgFXS2sZGIbXfEPdLlnxJyDdYB62sbbUKpLbVNhyYFzbrrA74YJlh9r079973psed0cvUD4A+4HoCjsA85X0Dfn/RBLBgBDxnQPfAEJgBY+A9gALA4tcbamSzS4xq4FOQAJgCDwV2CPKV8tZAJcAjMMkUe1vX+U+SMhfAJEHasQIWmXNN3abzDwHUrgcRGmYcgKe0bxrblHEB4E/pndMazNpSZGcsZdBlYJcEL9Afo75molJyM2FxmPgmgPqlWNLGfwZGG6UiyEvLzHYDmoPkDDiNm9JR9uboiONcBXrpY1qmgs21x1QwyZcpvxt9NS09PlsPAAAAAElFTkSuQmCC&amp;logoWidth=14" alt="Duplicate Space"></a>
16
+ <br>
17
+ <br>
18
+ <h4>The default token is <span style="color:orange;">huggingface</span></h4>
19
+ <h4>Duplicate the Space to run your own instance</h4>
20
+
21
+ {% if login_available %}
22
+ {# login_available means password-login is allowed. Show the form. #}
23
+ <div class="row">
24
+ <div class="navbar col-sm-8">
25
+ <div class="navbar-inner">
26
+ <div class="container">
27
+ <div class="center-nav">
28
+ <form action="{{base_url}}login?next={{next}}" method="post" class="navbar-form pull-left">
29
+ {{ xsrf_form_html() | safe }}
30
+ {% if token_available %}
31
+ <label for="password_input"><strong>{% trans %}Token:{% endtrans
32
+ %}</strong></label>
33
+ {% else %}
34
+ <label for="password_input"><strong>{% trans %}Password:{% endtrans %}</strong></label>
35
+ {% endif %}
36
+ <input type="password" name="password" id="password_input" class="form-control">
37
+ <button type="submit" class="btn btn-default" id="login_submit">{% trans %}Log in{% endtrans
38
+ %}</button>
39
+ </form>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ {% else %}
46
+ <p>{% trans %}No login available, you shouldn't be seeing this page.{% endtrans %}</p>
47
+ {% endif %}
48
+ <p>This template was created by <a href="https://twitter.com/camenduru" target="_blank" >camenduru</a> and <a href="https://huggingface.co/nateraw" target="_blank" >nateraw</a>, with contributions of <a href="https://huggingface.co/osanseviero" target="_blank" >osanseviero</a> and <a href="https://huggingface.co/azzr" target="_blank" >azzr</a> </p>
49
+ {% if message %}
50
+ <div class="row">
51
+ {% for key in message %}
52
+ <div class="message {{key}}">
53
+ {{message[key]}}
54
+ </div>
55
+ {% endfor %}
56
+ </div>
57
+ {% endif %}
58
+ {% if token_available %}
59
+ {% block token_message %}
60
+
61
+ {% endblock token_message %}
62
+ {% endif %}
63
+ </div>
64
+
65
+ {% endblock %}
66
+
67
+
68
+ {% block script %}
69
+ {% endblock %}
on_startup.sh ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ # Write some commands here that will run on root user before startup.
3
+ # For example, to clone transformers and install it in dev mode:
4
+ # git clone https://github.com/huggingface/transformers.git
5
+ # cd transformers && pip install -e ".[dev]"
packages.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ tree
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ jupyterlab==3.6.1
2
+ jupyter-server==2.3.0
3
+ tornado==6.2
4
+ ipywidgets
start_server.sh ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ JUPYTER_TOKEN="${JUPYTER_TOKEN:=huggingface}"
3
+
4
+ echo "Starting Jupyter Lab with token $JUPYTER_TOKEN"
5
+
6
+ NOTEBOOK_DIR="/data"
7
+
8
+ jupyter-lab \
9
+ --ip 0.0.0.0 \
10
+ --port 7860 \
11
+ --no-browser \
12
+ --allow-root \
13
+ --ServerApp.token="$JUPYTER_TOKEN" \
14
+ --ServerApp.tornado_settings="{'headers': {'Content-Security-Policy': 'frame-ancestors *'}}" \
15
+ --ServerApp.cookie_options="{'SameSite': 'None', 'Secure': True}" \
16
+ --ServerApp.disable_check_xsrf=True \
17
+ --LabApp.news_url=None \
18
+ --LabApp.iopub_data_rate_limit=1.0e10\
19
+ --LabApp.check_for_updates_class="jupyterlab.NeverCheckForUpdate" \
20
+ --notebook-dir=$NOTEBOOK_DIR\
21
+ --NotebookApp.iopub_data_rate_limit=1.0e10