feat: 统一sql命名、函数命名
This commit is contained in:
46
scripts/deploy.sh
Executable file
46
scripts/deploy.sh
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
PROJECT_ROOT=$(cd -- "$(dirname "${BASH_SOURCE[0]}")/.." &> /dev/null && pwd)
|
||||
REMOTE_SERVER="01"
|
||||
REMOTE_DIR="/srv/docker/go-server"
|
||||
IMAGE_NAME="go-server"
|
||||
CONTAINER_NAME="go-server"
|
||||
IMAGE_TAG="latest"
|
||||
IMAGE_FILE="${IMAGE_NAME}-${IMAGE_TAG}.tar"
|
||||
DOCKER_NETWORK="docker_app-bridge"
|
||||
|
||||
cd "$PROJECT_ROOT"
|
||||
|
||||
docker build -f ./scripts/Dockerfile --platform linux/amd64 -t "${IMAGE_NAME}":"${IMAGE_TAG}" .
|
||||
|
||||
docker save -o "${IMAGE_FILE}" "${IMAGE_NAME}":"${IMAGE_TAG}"
|
||||
|
||||
scp ${IMAGE_FILE} ${REMOTE_SERVER}:${REMOTE_DIR}
|
||||
|
||||
ssh "${REMOTE_SERVER}" << EOF
|
||||
set -euo pipefail
|
||||
|
||||
cd "${REMOTE_DIR}"
|
||||
|
||||
docker stop "${CONTAINER_NAME}" || true
|
||||
docker rm "${CONTAINER_NAME}" || true
|
||||
docker rmi "${IMAGE_NAME}":"${IMAGE_TAG}" || true
|
||||
|
||||
docker load -i "${IMAGE_FILE}"
|
||||
docker run -dit \
|
||||
--name "${CONTAINER_NAME}" \
|
||||
--restart unless-stopped \
|
||||
-v "${REMOTE_DIR}"/production.yaml:/app/production.yaml:ro \
|
||||
-v "${REMOTE_DIR}"/static:/app/uploads \
|
||||
-v "${REMOTE_DIR}"/logs:/app/logs \
|
||||
--network "${DOCKER_NETWORK}" \
|
||||
${IMAGE_NAME}:${IMAGE_TAG}
|
||||
|
||||
rm -f "${IMAGE_FILE}"
|
||||
EOF
|
||||
|
||||
rm -f "${IMAGE_FILE}"
|
||||
docker rmi "${IMAGE_NAME}":"${IMAGE_TAG}" || true
|
||||
|
||||
echo "部署完成"
|
||||
Reference in New Issue
Block a user