mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-05-04 00:55:59 +08:00
feat: set openim lint
Signed-off-by: Xinwei Xiong(cubxxw) <3293172751nss@gmail.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright © 2023 OpenIM. All rights reserved.
|
||||
# Copyright © 2024 OpenIM. All rights reserved.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
@@ -13,8 +13,20 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#
|
||||
# OpenIM Docker Deployment Script
|
||||
#
|
||||
# This script automates the process of building the OpenIM server image
|
||||
# and deploying it using Docker Compose.
|
||||
#
|
||||
# Variables:
|
||||
# - SERVER_IMAGE_VERSION: Version of the server image (default: test)
|
||||
# - IMAGE_REGISTRY: Docker image registry (default: openim)
|
||||
# - DOCKER_COMPOSE_FILE_URL: URL to the docker-compose.yml file
|
||||
#
|
||||
# Usage:
|
||||
# SERVER_IMAGE_VERSION=latest IMAGE_REGISTRY=myregistry ./this_script.sh
|
||||
|
||||
# Common utilities, variables and checks for all build scripts.
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
@@ -28,35 +40,47 @@ chmod +x "${OPENIM_ROOT}"/scripts/*.sh
|
||||
|
||||
openim::util::ensure_docker_daemon_connectivity
|
||||
|
||||
# Default values for variables
|
||||
: ${SERVER_IMAGE_VERSION:=test}
|
||||
: ${IMAGE_REGISTRY:=openim}
|
||||
: ${DOCKER_COMPOSE_FILE_URL:="https://raw.githubusercontent.com/openimsdk/openim-docker/main/docker-compose.yaml"}
|
||||
|
||||
DOCKER_COMPOSE_COMMAND=
|
||||
# Check if docker-compose command is available
|
||||
openim::util::check_docker_and_compose_versions
|
||||
|
||||
if command -v docker compose &> /dev/null
|
||||
then
|
||||
openim::log::info "docker compose command is available"
|
||||
DOCKER_COMPOSE_COMMAND="docker compose"
|
||||
if command -v docker compose &> /dev/null; then
|
||||
openim::log::info "docker compose command is available"
|
||||
DOCKER_COMPOSE_COMMAND="docker compose"
|
||||
else
|
||||
DOCKER_COMPOSE_COMMAND="docker-compose"
|
||||
DOCKER_COMPOSE_COMMAND="docker-compose"
|
||||
fi
|
||||
|
||||
export SERVER_IMAGE_VERSION
|
||||
export IMAGE_REGISTRY
|
||||
"${OPENIM_ROOT}"/scripts/init-config.sh
|
||||
|
||||
pushd "${OPENIM_ROOT}"
|
||||
docker build -t "${IMAGE_REGISTRY}/openim-server:${SERVER_IMAGE_VERSION}" .
|
||||
${DOCKER_COMPOSE_COMMAND} stop
|
||||
curl https://raw.githubusercontent.com/openimsdk/openim-docker/main/docker-compose.yaml -o docker-compose.yml
|
||||
curl "${DOCKER_COMPOSE_FILE_URL}" -o docker-compose.yml
|
||||
${DOCKER_COMPOSE_COMMAND} up -d
|
||||
|
||||
# Function to check container status
|
||||
check_containers() {
|
||||
if ! ${DOCKER_COMPOSE_COMMAND} ps | grep -q 'Up'; then
|
||||
echo "Error: One or more docker containers failed to start."
|
||||
${DOCKER_COMPOSE_COMMAND} logs openim-server
|
||||
${DOCKER_COMPOSE_COMMAND} logs openim-chat
|
||||
return 1
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
||||
# Wait for a short period to allow containers to initialize
|
||||
sleep 30
|
||||
|
||||
# Check the status of the containers
|
||||
if ! ${DOCKER_COMPOSE_COMMAND} ps | grep -q 'Up'; then
|
||||
echo "Error: One or more docker containers failed to start."
|
||||
${DOCKER_COMPOSE_COMMAND} logs
|
||||
fi
|
||||
|
||||
sleep 30 # Keep the original 60-second wait, adjusted for the 10-second check above
|
||||
${DOCKER_COMPOSE_COMMAND} logs openim-server
|
||||
${DOCKER_COMPOSE_COMMAND} ps
|
||||
|
||||
popd
|
||||
check_containers
|
||||
|
||||
popd
|
||||
Reference in New Issue
Block a user