diff --git a/docker-images-datalab/activetigger/Dockerfile b/docker-images-datalab/activetigger/Dockerfile index 651fe7d..64f5eca 100644 --- a/docker-images-datalab/activetigger/Dockerfile +++ b/docker-images-datalab/activetigger/Dockerfile @@ -35,7 +35,7 @@ RUN Rscript /requirements.r # Install Miniconda - RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && \ +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && \ bash Miniconda3-latest-Linux-x86_64.sh -b -p /opt/conda && \ rm Miniconda3-latest-Linux-x86_64.sh diff --git a/docker-images-datalab/activetigger/Dockerfile.rocker b/docker-images-datalab/activetigger/Dockerfile.rocker new file mode 100644 index 0000000..34c87cd --- /dev/null +++ b/docker-images-datalab/activetigger/Dockerfile.rocker @@ -0,0 +1,28 @@ +# Base +FROM rocker/shiny + +# Copy requirements +COPY requirements.py / +COPY requirements.r / + +# Install system dependencies +RUN apt-get update && \ + apt-get install -y python3-pip libxml2-dev + +## Install packages +RUN Rscript /requirements.r +RUN pip3 install -r /requirements.py + +## Packages +#RUN python -m spacy download fr_core_news_sm \ +#WORKDIR ~ +#RUN wget https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.fr.300.bin.gz \ +# && gunzip cc.fr.300.bin.gz + + +COPY activetigger ./activetigger +# Expose the default Shiny port +EXPOSE 3838 + +# Command to run the Shiny app +CMD ["R", "-e", "shiny::runApp('activetigger', port=3838, host='0.0.0.0')"] diff --git a/docker-images-datalab/activetigger/requirements.py b/docker-images-datalab/activetigger/requirements.py new file mode 100644 index 0000000..3e44557 --- /dev/null +++ b/docker-images-datalab/activetigger/requirements.py @@ -0,0 +1,13 @@ +argparse +datasets +fasttext +numpy +pandas +pyarrow +scikit-learn +torch +transformers[torch] +sentence_transformers +typing-inspect==0.8.0 +typing_extensions==4.6.1 +spacy diff --git a/docker-images-datalab/activetigger/requirements.r b/docker-images-datalab/activetigger/requirements.r index c1dc00c..fee3fab 100644 --- a/docker-images-datalab/activetigger/requirements.r +++ b/docker-images-datalab/activetigger/requirements.r @@ -1 +1,3 @@ -install.packages(c("arrow", "class", "data.table", "DT", "foreign", "glmnet", "haven", "LiblineaR", "Matrix", "Metrics", "quanteda", "quanteda.textmodels", "ranger", "readODS", "readxl", "RJSONIO", "rlang", "Rtsne", "shiny", "SparseM", "stringi", "uwot")) +packages=c("arrow", "class", "data.table", "DT", "foreign", "glmnet", "haven", "LiblineaR", "Matrix", "Metrics", "quanteda", "quanteda.textmodels", "ranger", "readODS", "readxl", "RJSONIO", "rlang", "Rtsne", "shiny", "SparseM", "stringi", "uwot", "future","htmlTable","ggplot2") + +install.packages(setdiff(packages, rownames(installed.packages()))) diff --git a/helm-charts-datalab/helm-charts-test/charts/activetigger/template b/helm-charts-datalab/helm-charts-test/charts/activetigger/template new file mode 100644 index 0000000..34ca3bf --- /dev/null +++ b/helm-charts-datalab/helm-charts-test/charts/activetigger/template @@ -0,0 +1,140 @@ +--- +# Source: activetigger/templates/serviceaccount.yaml +apiVersion: v1 +kind: ServiceAccount +metadata: + name: release-name-activetigger + labels: + helm.sh/chart: activetigger-0.1.0 + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + app.kubernetes.io/version: "1.0.0" + app.kubernetes.io/managed-by: Helm +automountServiceAccountToken: true +--- +# Source: activetigger/templates/service.yaml +apiVersion: v1 +kind: Service +metadata: + name: release-name-activetigger + labels: + helm.sh/chart: activetigger-0.1.0 + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + app.kubernetes.io/version: "1.0.0" + app.kubernetes.io/managed-by: Helm +spec: + type: ClusterIP + ports: + - port: 8000 + targetPort: http + protocol: TCP + name: http + selector: + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name +--- +# Source: activetigger/templates/deployment.yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + name: release-name-activetigger + labels: + helm.sh/chart: activetigger-0.1.0 + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + app.kubernetes.io/version: "1.0.0" + app.kubernetes.io/managed-by: Helm +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + template: + metadata: + labels: + helm.sh/chart: activetigger-0.1.0 + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + app.kubernetes.io/version: "1.0.0" + app.kubernetes.io/managed-by: Helm + spec: + serviceAccountName: release-name-activetigger + securityContext: + {} + containers: + - name: activetigger + securityContext: + {} + image: "code.groupe-genes.fr/datalab/activetigger:latest" + imagePullPolicy: IfNotPresent + ports: + - name: http + containerPort: 8000 + protocol: TCP + livenessProbe: + httpGet: + path: / + port: http + readinessProbe: + httpGet: + path: / + port: http + resources: + {} +--- +# Source: activetigger/templates/ingress.yaml +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: release-name-activetigger + labels: + helm.sh/chart: activetigger-0.1.0 + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + app.kubernetes.io/version: "1.0.0" + app.kubernetes.io/managed-by: Helm +spec: + rules: + - host: "activetigger.lab.groupe-genes.fr" + http: + paths: + - path: / + pathType: ImplementationSpecific + backend: + service: + name: release-name-activetigger + port: + number: 8000 + - host: "activetigger2.lab.groupe-genes.fr" + http: + paths: + - path: / + pathType: ImplementationSpecific + backend: + service: + name: release-name-activetigger + port: + number: 8000 +--- +# Source: activetigger/templates/tests/test-connection.yaml +apiVersion: v1 +kind: Pod +metadata: + name: "release-name-activetigger-test-connection" + labels: + helm.sh/chart: activetigger-0.1.0 + app.kubernetes.io/name: activetigger + app.kubernetes.io/instance: release-name + app.kubernetes.io/version: "1.0.0" + app.kubernetes.io/managed-by: Helm + annotations: + "helm.sh/hook": test +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['release-name-activetigger:8000'] + restartPolicy: Never diff --git a/helm-charts-datalab/helm-charts-test/charts/activetigger/values.yaml b/helm-charts-datalab/helm-charts-test/charts/activetigger/values.yaml index e211901..1e265a2 100644 --- a/helm-charts-datalab/helm-charts-test/charts/activetigger/values.yaml +++ b/helm-charts-datalab/helm-charts-test/charts/activetigger/values.yaml @@ -5,7 +5,7 @@ replicaCount: 1 image: - repository: https://code.groupe-genes.fr/dsit/datalab/src/branch/main/docker-images-datalab/activetigger + repository: code.groupe-genes.fr/datalab/activetigger:latest pullPolicy: IfNotPresent # Overrides the image tag whose default is the chart appVersion. tag: "latest"