feat : optional run backend on host for start_services.sh
This commit is contained in:
committed by
Antoine Vivies
parent
819a3fb98d
commit
abae98cf77
@@ -3,6 +3,7 @@ version: '3'
|
|||||||
services:
|
services:
|
||||||
redis:
|
redis:
|
||||||
container_name: redis
|
container_name: redis
|
||||||
|
profiles: ["core", "full"]
|
||||||
image: docker.io/valkey/valkey:8-alpine
|
image: docker.io/valkey/valkey:8-alpine
|
||||||
command: valkey-server --save 30 1 --loglevel warning
|
command: valkey-server --save 30 1 --loglevel warning
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@@ -24,6 +25,7 @@ services:
|
|||||||
|
|
||||||
searxng:
|
searxng:
|
||||||
container_name: searxng
|
container_name: searxng
|
||||||
|
profiles: ["core", "full"]
|
||||||
image: docker.io/searxng/searxng:latest
|
image: docker.io/searxng/searxng:latest
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
@@ -51,6 +53,7 @@ services:
|
|||||||
|
|
||||||
frontend:
|
frontend:
|
||||||
container_name: frontend
|
container_name: frontend
|
||||||
|
profiles: ["core", "full"]
|
||||||
build:
|
build:
|
||||||
context: ./frontend
|
context: ./frontend
|
||||||
dockerfile: Dockerfile.frontend
|
dockerfile: Dockerfile.frontend
|
||||||
@@ -68,6 +71,7 @@ services:
|
|||||||
|
|
||||||
backend:
|
backend:
|
||||||
container_name: backend
|
container_name: backend
|
||||||
|
profiles: ["backend", "full"]
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile.backend
|
dockerfile: Dockerfile.backend
|
||||||
|
|||||||
+30
-26
@@ -90,34 +90,38 @@ sleep 4
|
|||||||
docker stop $(docker ps -a -q)
|
docker stop $(docker ps -a -q)
|
||||||
echo "All containers stopped"
|
echo "All containers stopped"
|
||||||
|
|
||||||
# First start backend and wait for it to be healthy
|
if [ "$1" = "full" ]; then
|
||||||
echo "Starting backend service..."
|
# First start backend and wait for it to be healthy
|
||||||
if ! $COMPOSE_CMD up -d backend; then
|
echo "Full docker deployement. Starting backend service..."
|
||||||
echo "Error: Failed to start backend container."
|
if ! $COMPOSE_CMD up -d backend; then
|
||||||
exit 1
|
echo "Error: Failed to start backend container."
|
||||||
fi
|
exit 1
|
||||||
|
|
||||||
# Wait for backend to be healthy (check if it's running and not restarting)
|
|
||||||
echo "Waiting for backend to be ready..."
|
|
||||||
for i in {1..30}; do
|
|
||||||
if [ "$(docker inspect -f '{{.State.Running}}' backend)" = "true" ] && \
|
|
||||||
[ "$(docker inspect -f '{{.State.Restarting}}' backend)" = "false" ]; then
|
|
||||||
echo "backend is ready!"
|
|
||||||
break
|
|
||||||
fi
|
fi
|
||||||
if [ $i -eq 30 ]; then
|
# Wait for backend to be healthy (check if it's running and not restarting)
|
||||||
echo "Error: backend failed to start properly after 30 seconds"
|
echo "Waiting for backend to be ready..."
|
||||||
$COMPOSE_CMD logs backend
|
for i in {1..30}; do
|
||||||
|
if [ "$(docker inspect -f '{{.State.Running}}' backend)" = "true" ] && \
|
||||||
|
[ "$(docker inspect -f '{{.State.Restarting}}' backend)" = "false" ]; then
|
||||||
|
echo "backend is ready!"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
if [ $i -eq 30 ]; then
|
||||||
|
echo "Error: backend failed to start properly after 30 seconds"
|
||||||
|
$COMPOSE_CMD logs backend
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
if ! $COMPOSE_CMD --profile full up; then
|
||||||
|
echo "Error: Failed to start containers. Check Docker logs with '$COMPOSE_CMD logs'."
|
||||||
|
echo "Possible fixes: Run with sudo or ensure port 8080 is free."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if ! $COMPOSE_CMD --profile core up; then
|
||||||
|
echo "Error: Failed to start containers. Check Docker logs with '$COMPOSE_CMD logs'."
|
||||||
|
echo "Possible fixes: Run with sudo or ensure port 8080 is free."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
sleep 1
|
|
||||||
done
|
|
||||||
|
|
||||||
# start remaining services for searxng, redis, frontend services
|
|
||||||
|
|
||||||
if ! $COMPOSE_CMD up; then
|
|
||||||
echo "Error: Failed to start containers. Check Docker logs with '$COMPOSE_CMD logs'."
|
|
||||||
echo "Possible fixes: Run with sudo or ensure port 8080 is free."
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
sleep 10
|
sleep 10
|
||||||
Reference in New Issue
Block a user