ai4os-dev-env
AI4OS Development Environment with IDE (Jupyterlab or VSCode) and AI4OS components
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.7%) to scientific vocabulary
Repository
AI4OS Development Environment with IDE (Jupyterlab or VSCode) and AI4OS components
Basic Info
- Host: GitHub
- Owner: ai4os
- License: mit
- Language: Dockerfile
- Default Branch: main
- Size: 149 KB
Statistics
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
AI4OS Development Environment (AI4OSDev)
This is a container that exposes Jupyter notebook and Jupyter Lab or VSCode together with the DEEP as a Service API component. There is no application code inside!
You can either mount host volume with the code into the container, or run jupyterlab terminal (e.g. http://127.0.0.1:8888/lab) to use git to pull your code and use either jupyter notebook or jupyter lab or vscode for the development of your application. Test it immediately and when ready, commit your changes back to your repository.
The resulting Docker image has pre-installed: * Tensorflow or PyTorch or (just) Ubuntu * cookiecutter * git * curl * deepaas * deep-start * flaat * jupyter, jupyterlab OR vscode (code-server) * mc * nano * oidc-agent * openssh-client * python3 * pip3 * rclone * wget
Running the container
Directly from Docker Hub
To run the Docker container directly from Docker Hub and start using jupyter notebook / jupyterlab or vscode run the following command:
bash
$ docker run -ti -p 5000:5000 -p 6006:6006 -p 8888:8888 ai4oshub/ai4os-dev-env
This command will pull the Docker image from the Docker Hub and start the default command `deep-start -j´, which starts Jupyter Lab.
Then go either to http://127.0.0.1:8888/tree for jupyter notebook or to http://127.0.0.1:8888/lab for jupyterlab.
If you want to start DEEPaaS API service, go to the jupyterlab, i.e. http://127.0.0.1:8888/lab, open terminal, type:
bash
$ deep-start
direct your browser to http://127.0.0.1:5000
Since Jan-2023, deep-start also allows to start VSCode (code-server) via `deep-start -s´ :
bash
$ docker run -ti -p 5000:5000 -p 6006:6006 -p 8888:8888 ai4oshub/ai4os-dev-env deep-start -s
If you need to mount some directories from your host into the container, please, use usual Docker way, e.g.
bash
$ docker run -ti -p 5000:5000 -p 6006:6006 -p 8888:8888 -v $HOME/data:/srv/app/data ai4oshub/ai4os-dev-env
mounts your host directory $HOME/data into container's path /srv/app/data.
N.B. For either CPU-based or GPU-based images you can also use udocker to run containers.
Running via docker-compose
docker-compose.yml allows you to run the application with various configurations via docker-compose.
N.B! docker-compose.yml is of version '2.3', one needs docker 17.06.0+ and docker-compose ver.1.16.0+, see https://docs.docker.com/compose/install/
If you want to use Nvidia GPU (generic-gpu), you need nvidia-docker and docker-compose ver1.19.0+ , see nvidia/FAQ
Building the container
If you want to build the container directly in your machine (because you want
to modify the Dockerfile for instance) follow the following instructions:
Building the container:
Get the
ai4os-dev-envrepository:bash $ git clone https://github.com/ai4os/ai4os-dev-envBuild the container (default is CPU and Python3 support):
bash $ cd ai4os-dev-env $ docker build -t ai4oshub/ai4os-dev-env .
These two steps will download the repository from GitHub and will build the
Docker container locally on your machine. You can inspect and modify the
Dockerfile in order to check what is going on. For example, Dockerfile has three ARGs:
- image: base image (default: tensorflow/tensorflow)
- tag: to define tag for the Tensorflow Base image, e.g. '2.10.0' (default)
e.g.
bash
$ cd ai4os-dev-env
$ docker build -t ai4oshub/ai4os-dev-env:tf2.10.0-cpu --build-arg tag=2.10.0 .
builds ai4oshub/ai4os-dev-env:tf2.10.0-cpu with CPU version of Tensorflow 2.10.0.
Authenticating to Jupyter Notebook or Jupyterlab or VSCode
If you call http://127.0.0.1:8888/tree or http://127.0.0.1:8888/lab for the first time, you will get to "login" page. If you run the container locally,
you will see in the terminal where the container started printed token to access Jupyter Notebook or Jupyter Lab.
You can also see logs of your running container by envoking $ docker logs containerID
One other way is to specify the jupyter password at the time of container instantiation:
bash
$ docker run -ti -p 5000:5000 -p 6006:6006 -p 8888:8888 -e idePASSWORD=the_pass_for_ide ai4oshub/ai4os-dev-env
N.B. The quotes are treated as parts of the password. The password has to be more than 8 characters long!
Owner
- Name: AI4OS
- Login: ai4os
- Kind: organization
- Email: ai4eosc-po@listas.csic.es
- Website: http://ai4eosc.eu
- Twitter: AI4EOSC
- Repositories: 1
- Profile: https://github.com/ai4os
AI4OS is the software powering the AI4EOSC platform
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: ai4os-dev-env
message: >-
This is a container that exposes Jupyter notebook and
Jupyter Lab or VSCode together with the DEEP as a Service
API component.
type: software
authors:
- given-names: Ignacio
family-names: Heredia
- given-names: Lara
family-names: Lloret
- given-names: Pablo
family-names: Orviz
- given-names: Valentin
family-names: Valentin
repository-code: 'https://github.com/ai4os/ai4os-dev-env'
keywords:
- docker
- development environment
- jupyter
- vscode
license: MIT
CodeMeta (codemeta.json)
{
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
"@type": "SoftwareSourceCode",
"license": "https://spdx.org/licenses/MIT",
"codeRepository": "https://github.com/ai4os/ai4os-dev-env",
"issueTracker": "https://github.com/ai4os/ai4os-dev-env/issues",
"name": "ai4os-dev-env",
"description": "This is a container that exposes Jupyter notebook and Jupyter Lab or VSCode together with the DEEP as a Service API component. ",
"keywords": [
"docker",
"development environment",
"jupyter",
"vscode"
],
"programmingLanguage": [
"docker"
],
"author": [
{
"@type": "Person",
"givenName": "Ignacio",
"familyName": "Heredia"
},
{
"@type": "Person",
"givenName": "Lara",
"familyName": "Lloret"
},
{
"@type": "Person",
"givenName": "Pablo",
"familyName": "Orviz"
},
{
"@type": "Person",
"givenName": "Valentin",
"familyName": "Kozlov"
}
]
}
GitHub Events
Total
- Issues event: 3
- Issue comment event: 3
- Push event: 4
Last Year
- Issues event: 3
- Issue comment event: 3
- Push event: 4
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 2
- Total pull requests: 0
- Average time to close issues: 23 days
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 0
- Average comments per issue: 1.5
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 2
- Pull requests: 0
- Average time to close issues: 23 days
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 1.5
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- IgnacioHeredia (2)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- ${image} ${tag} build
- ai4oshub/ai4os-dev-env latest
- ai4oshub/ai4os-dev-env latest-gpu