Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenpangpang
open-webui
Commits
567b88bb
"...composable_kernel_onnxruntime.git" did not exist on "904cbe2a8fe1caca4635b2c12b818b93fa9edc5d"
Commit
567b88bb
authored
Dec 24, 2023
by
Daniele Viti
Browse files
added drop to kill and build capabilities
parent
16a2d0cd
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
40 additions
and
34 deletions
+40
-34
run-compose.sh
run-compose.sh
+40
-34
No files found.
run-compose.sh
View file @
567b88bb
...
@@ -75,6 +75,7 @@ usage() {
...
@@ -75,6 +75,7 @@ usage() {
echo
" --webui[port=PORT] Set the port for the web user interface."
echo
" --webui[port=PORT] Set the port for the web user interface."
echo
" --data[folder=PATH] Bind mount for ollama data folder (by default will create the 'ollama' volume)."
echo
" --data[folder=PATH] Bind mount for ollama data folder (by default will create the 'ollama' volume)."
echo
" --build Build the docker image before running the compose project."
echo
" --build Build the docker image before running the compose project."
echo
" --drop Drop the compose project."
echo
" -q, --quiet Run script in headless mode."
echo
" -q, --quiet Run script in headless mode."
echo
" -h, --help Show this help message."
echo
" -h, --help Show this help message."
echo
""
echo
""
...
@@ -95,6 +96,7 @@ api_port=11435
...
@@ -95,6 +96,7 @@ api_port=11435
webui_port
=
3000
webui_port
=
3000
headless
=
false
headless
=
false
build_image
=
false
build_image
=
false
kill_compose
=
false
# Function to extract value from the parameter
# Function to extract value from the parameter
extract_value
()
{
extract_value
()
{
...
@@ -124,6 +126,9 @@ while [[ $# -gt 0 ]]; do
...
@@ -124,6 +126,9 @@ while [[ $# -gt 0 ]]; do
value
=
$(
extract_value
"
$key
"
)
value
=
$(
extract_value
"
$key
"
)
data_dir
=
${
value
:-
"./ollama-data"
}
data_dir
=
${
value
:-
"./ollama-data"
}
;;
;;
--drop
)
kill_compose
=
true
;;
--build
)
--build
)
build_image
=
true
build_image
=
true
;;
;;
...
@@ -144,38 +149,43 @@ while [[ $# -gt 0 ]]; do
...
@@ -144,38 +149,43 @@ while [[ $# -gt 0 ]]; do
shift
# past argument or value
shift
# past argument or value
done
done
DEFAULT_COMPOSE_COMMAND
=
"docker compose -f docker-compose.yaml"
if
[[
$kill_compose
==
true
]]
;
then
if
[[
$enable_gpu
==
true
]]
;
then
docker compose down
--remove-orphans
# Validate and process command-line arguments
echo
-e
"
${
GREEN
}${
BOLD
}
Compose project dropped successfully.
${
NC
}
"
if
[[
-n
$gpu_count
]]
;
then
exit
if
!
[[
$gpu_count
=
~ ^[0-9]+
$
]]
;
then
else
echo
"Invalid GPU count:
$gpu_count
"
DEFAULT_COMPOSE_COMMAND
=
"docker compose -f docker-compose.yaml"
exit
1
if
[[
$enable_gpu
==
true
]]
;
then
# Validate and process command-line arguments
if
[[
-n
$gpu_count
]]
;
then
if
!
[[
$gpu_count
=
~ ^[0-9]+
$
]]
;
then
echo
"Invalid GPU count:
$gpu_count
"
exit
1
fi
echo
"Enabling GPU with
$gpu_count
GPUs"
# Add your GPU allocation logic here
export
OLLAMA_GPU_DRIVER
=
$(
get_gpu_driver
)
export
OLLAMA_GPU_COUNT
=
$gpu_count
# Set OLLAMA_GPU_COUNT environment variable
fi
fi
echo
"Enabling GPU with
$gpu_count
GPUs"
DEFAULT_COMPOSE_COMMAND+
=
" -f docker-compose.gpu.yaml"
# Add your GPU allocation logic here
export
OLLAMA_GPU_DRIVER
=
$(
get_gpu_driver
)
export
OLLAMA_GPU_COUNT
=
$gpu_count
# Set OLLAMA_GPU_COUNT environment variable
fi
fi
DEFAULT_COMPOSE_COMMAND+
=
" -f docker-compose.gpu.yaml"
if
[[
$enable_api
==
true
]]
;
then
fi
DEFAULT_COMPOSE_COMMAND+
=
" -f docker-compose.api.yaml"
if
[[
$enable_api
==
true
]]
;
then
if
[[
-n
$api_port
]]
;
then
DEFAULT_COMPOSE_COMMAND+
=
" -f docker-compose.api.yaml"
export
OLLAMA_WEBAPI_PORT
=
$api_port
# Set OLLAMA_WEBAPI_PORT environment variable
if
[[
-n
$api_port
]]
;
then
fi
export
OLLAMA_WEBAPI_PORT
=
$api_port
# Set OLLAMA_WEBAPI_PORT environment variable
fi
if
[[
-n
$data_dir
]]
;
then
DEFAULT_COMPOSE_COMMAND+
=
" -f docker-compose.data.yaml"
export
OLLAMA_DATA_DIR
=
$data_dir
# Set OLLAMA_DATA_DIR environment variable
fi
DEFAULT_COMPOSE_COMMAND+
=
" up -d"
DEFAULT_COMPOSE_COMMAND+
=
" --remove-orphans"
DEFAULT_COMPOSE_COMMAND+
=
" --force-recreate"
if
[[
$build_image
==
true
]]
;
then
DEFAULT_COMPOSE_COMMAND+
=
" --build"
fi
fi
fi
fi
if
[[
-n
$data_dir
]]
;
then
DEFAULT_COMPOSE_COMMAND+
=
" -f docker-compose.data.yaml"
export
OLLAMA_DATA_DIR
=
$data_dir
# Set OLLAMA_DATA_DIR environment variable
fi
DEFAULT_COMPOSE_COMMAND+
=
" up -d"
DEFAULT_COMPOSE_COMMAND+
=
" --remove-orphans"
DEFAULT_COMPOSE_COMMAND+
=
" --force-recreate"
if
[[
-n
$build_image
]]
;
then
DEFAULT_COMPOSE_COMMAND+
=
" --build"
fi
DEFAULT_COMPOSE_COMMAND+
=
" > /dev/null 2>&1"
# Recap of environment variables
# Recap of environment variables
echo
echo
...
@@ -195,12 +205,8 @@ else
...
@@ -195,12 +205,8 @@ else
echo
-ne
"
${
WHITE
}${
BOLD
}
Do you want to proceed with current setup? (Y/n):
${
NC
}
"
echo
-ne
"
${
WHITE
}${
BOLD
}
Do you want to proceed with current setup? (Y/n):
${
NC
}
"
read
-n1
-s
choice
read
-n1
-s
choice
fi
fi
echo
-e
"
${
GREEN
}${
BOLD
}
WebUI Port:
${
NC
}
$webui_port
"
echo
# Ask for user acceptance
echo
echo
-ne
"
${
WHITE
}${
BOLD
}
Do you want to proceed with current setup? (Y/n):
${
NC
}
"
read
-n1
-s
choice
if
[[
$choice
==
""
||
$choice
==
"y"
]]
;
then
if
[[
$choice
==
""
||
$choice
==
"y"
]]
;
then
# Execute the command with the current user
# Execute the command with the current user
...
@@ -210,7 +216,7 @@ if [[ $choice == "" || $choice == "y" ]]; then
...
@@ -210,7 +216,7 @@ if [[ $choice == "" || $choice == "y" ]]; then
PID
=
$!
PID
=
$!
# Display the loading animation
# Display the loading animation
show_loading
$PID
#
show_loading $PID
# Wait for the command to finish
# Wait for the command to finish
wait
$PID
wait
$PID
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment