1+ # Workspace arguments
2+ arguments :
3+ parameters :
4+ - name : sync-directory
5+ displayName : Directory to sync raw input and training output
6+ value : workflow-data
7+ hint : Location to sync raw input, models and checkpoints from default object storage. Note that this will be relative to the current namespace.
8+ containers :
9+ - name : cvat-db
10+ image : postgres:10-alpine
11+ env :
12+ - name : POSTGRES_USER
13+ value : root
14+ - name : POSTGRES_DB
15+ value : cvat
16+ - name : POSTGRES_HOST_AUTH_METHOD
17+ value : trust
18+ - name : PGDATA
19+ value : /var/lib/psql/data
20+ ports :
21+ - containerPort : 5432
22+ name : tcp
23+ volumeMounts :
24+ - name : db
25+ mountPath : /var/lib/psql
26+ - name : cvat-redis
27+ image : redis:4.0-alpine
28+ ports :
29+ - containerPort : 6379
30+ name : tcp
31+ - name : cvat
32+ image : onepanel/cvat:0.14.0_cvat.1.0.0
33+ env :
34+ - name : DJANGO_MODWSGI_EXTRA_ARGS
35+ value : " "
36+ - name : ALLOWED_HOSTS
37+ value : ' *'
38+ - name : CVAT_REDIS_HOST
39+ value : localhost
40+ - name : CVAT_POSTGRES_HOST
41+ value : localhost
42+ - name : CVAT_SHARE_URL
43+ value : /home/django/data
44+ - name : ONEPANEL_SYNC_DIRECTORY
45+ value : ' {{workspace.parameters.sync-directory}}'
46+ - name : NVIDIA_VISIBLE_DEVICES
47+ value : all
48+ - name : NVIDIA_DRIVER_CAPABILITIES
49+ value : compute,utility
50+ - name : NVIDIA_REQUIRE_CUDA
51+ value : " cuda>=10.0 brand=tesla,driver>=384,driver<385 brand=tesla,driver>=410,driver<411"
52+ ports :
53+ - containerPort : 8080
54+ name : http
55+ volumeMounts :
56+ - name : data
57+ mountPath : /home/django/data
58+ - name : keys
59+ mountPath : /home/django/keys
60+ - name : logs
61+ mountPath : /home/django/logs
62+ - name : models
63+ mountPath : /home/django/models
64+ - name : share
65+ mountPath : /home/django/share
66+ - name : sys-namespace-config
67+ mountPath : /etc/onepanel
68+ readOnly : true
69+ - name : cvat-ui
70+ image : onepanel/cvat-ui:0.14.0_cvat.1.0.0
71+ ports :
72+ - containerPort : 80
73+ name : http
74+ # You can add multiple FileSyncer sidecar containers if needed
75+ - name : filesyncer
76+ image : onepanel/filesyncer:s3
77+ imagePullPolicy : Always
78+ args :
79+ - download
80+ - -server-prefix=/sys/filesyncer
81+ env :
82+ - name : FS_PATH
83+ value : /mnt/share
84+ - name : FS_PREFIX
85+ value : ' {{workflow.namespace}}/{{workspace.parameters.sync-directory}}'
86+ volumeMounts :
87+ - name : share
88+ mountPath : /mnt/share
89+ - name : sys-namespace-config
90+ mountPath : /etc/onepanel
91+ readOnly : true
92+ ports :
93+ - name : cvat-ui
94+ port : 80
95+ protocol : TCP
96+ targetPort : 80
97+ - name : cvat
98+ port : 8080
99+ protocol : TCP
100+ targetPort : 8080
101+ - name : fs
102+ port : 8888
103+ protocol : TCP
104+ targetPort : 8888
105+ routes :
106+ - match :
107+ - uri :
108+ prefix : /sys/filesyncer
109+ route :
110+ - destination :
111+ port :
112+ number : 8888
113+ - match :
114+ - uri :
115+ regex : /api/.*|/git/.*|/tensorflow/.*|/onepanelio/.*|/tracking/.*|/auto_annotation/.*|/analytics/.*|/static/.*|/admin/.*|/documentation/.*|/dextr/.*|/reid/.*
116+ - queryParams :
117+ id :
118+ regex : \d+.*
119+ route :
120+ - destination :
121+ port :
122+ number : 8080
123+ - match :
124+ - uri :
125+ prefix : /
126+ route :
127+ - destination :
128+ port :
129+ number : 80
130+ # DAG Workflow to be executed once a Workspace action completes (optional)
131+ # Uncomment the lines below if you want to send Slack notifications
132+ # postExecutionWorkflow:
133+ # entrypoint: main
134+ # templates:
135+ # - name: main
136+ # dag:
137+ # tasks:
138+ # - name: slack-notify
139+ # template: slack-notify
140+ # - name: slack-notify
141+ # container:
142+ # image: technosophos/slack-notify
143+ # args:
144+ # - SLACK_USERNAME=onepanel SLACK_TITLE="Your workspace is ready" SLACK_ICON=https://www.gravatar.com/avatar/5c4478592fe00878f62f0027be59c1bd SLACK_MESSAGE="Your workspace is now running" ./slack-notify
145+ # command:
146+ # - sh
147+ # - -c
0 commit comments