mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2025-08-04 08:23:37 +00:00
Adapt CI command scripts to also support podman
This commit is contained in:
@@ -10,6 +10,17 @@ YELLOW='\E[1;33m'
|
|||||||
|
|
||||||
export BLUE CYAN GREEN RED RESET YELLOW
|
export BLUE CYAN GREEN RED RESET YELLOW
|
||||||
|
|
||||||
|
# Identify docker-like command
|
||||||
|
# Ensure docker exists
|
||||||
|
if command -v docker 1>/dev/null 2>&1; then
|
||||||
|
export docker=docker
|
||||||
|
elif command -v podman 1>/dev/null 2>&1; then
|
||||||
|
export docker=podman
|
||||||
|
else
|
||||||
|
echo -e "${RED}❯ docker or podman command is not available${RESET}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Docker Compose
|
# Docker Compose
|
||||||
COMPOSE_PROJECT_NAME="npmdev"
|
COMPOSE_PROJECT_NAME="npmdev"
|
||||||
COMPOSE_FILE="docker/docker-compose.dev.yml"
|
COMPOSE_FILE="docker/docker-compose.dev.yml"
|
||||||
|
@@ -14,10 +14,10 @@ if [ "$BUILD_COMMIT" == "" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Buildx Builder
|
# Buildx Builder
|
||||||
docker buildx create --name "${BUILDX_NAME:-npm}" || echo
|
$docker buildx create --name "${BUILDX_NAME:-npm}" || echo
|
||||||
docker buildx use "${BUILDX_NAME:-npm}"
|
$docker buildx use "${BUILDX_NAME:-npm}"
|
||||||
|
|
||||||
docker buildx build \
|
$docker buildx build \
|
||||||
--build-arg BUILD_VERSION="${BUILD_VERSION:-dev}" \
|
--build-arg BUILD_VERSION="${BUILD_VERSION:-dev}" \
|
||||||
--build-arg BUILD_COMMIT="${BUILD_COMMIT:-notset}" \
|
--build-arg BUILD_COMMIT="${BUILD_COMMIT:-notset}" \
|
||||||
--build-arg BUILD_DATE="$(date '+%Y-%m-%d %T %Z')" \
|
--build-arg BUILD_DATE="$(date '+%Y-%m-%d %T %Z')" \
|
||||||
@@ -31,6 +31,6 @@ docker buildx build \
|
|||||||
.
|
.
|
||||||
|
|
||||||
rc=$?
|
rc=$?
|
||||||
docker buildx rm "${BUILDX_NAME:-npm}"
|
$docker buildx rm "${BUILDX_NAME:-npm}"
|
||||||
echo -e "${BLUE}❯ ${GREEN}Multiarch build Complete${RESET}"
|
echo -e "${BLUE}❯ ${GREEN}Multiarch build Complete${RESET}"
|
||||||
exit $rc
|
exit $rc
|
||||||
|
@@ -6,12 +6,17 @@ DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
DOCKER_IMAGE=jc21/nginx-full:certbot-node
|
DOCKER_IMAGE=jc21/nginx-full:certbot-node
|
||||||
|
|
||||||
# Ensure docker exists
|
# Ensure docker exists
|
||||||
if hash docker 2>/dev/null; then
|
if command -v docker 1>/dev/null 2>&1; then
|
||||||
docker pull "${DOCKER_IMAGE}"
|
docker=docker
|
||||||
|
elif command -v podman 1>/dev/null 2>&1; then
|
||||||
|
docker=podman
|
||||||
|
else
|
||||||
|
echo -e "${RED}❯ docker or podman command is not available${RESET}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
$docker pull "${DOCKER_IMAGE}"
|
||||||
cd "${DIR}/../.."
|
cd "${DIR}/../.."
|
||||||
echo -e "${BLUE}❯ ${CYAN}Building Frontend ...${RESET}"
|
echo -e "${BLUE}❯ ${CYAN}Building Frontend ...${RESET}"
|
||||||
docker run --rm -e CI=true -v "$(pwd)/frontend:/app/frontend" -v "$(pwd)/global:/app/global" -w /app/frontend "$DOCKER_IMAGE" sh -c "yarn install && yarn build && yarn build && chown -R $(id -u):$(id -g) /app/frontend"
|
$docker run --rm -e CI=true -v "$(pwd)/frontend:/app/frontend" -v "$(pwd)/global:/app/global" -w /app/frontend "$DOCKER_IMAGE" sh -c "yarn install && yarn build && yarn build && chown -R $(id -u):$(id -g) /app/frontend"
|
||||||
echo -e "${BLUE}❯ ${GREEN}Building Frontend Complete${RESET}"
|
echo -e "${BLUE}❯ ${GREEN}Building Frontend Complete${RESET}"
|
||||||
else
|
|
||||||
echo -e "${RED}❯ docker command is not available${RESET}"
|
|
||||||
fi
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
DOCKER_IMAGE=jc21/nginx-full:certbot-node
|
DOCKER_IMAGE=jc21/nginx-full:certbot-node
|
||||||
docker pull "${DOCKER_IMAGE}"
|
|
||||||
|
# Ensure docker exists
|
||||||
|
if command -v docker 1>/dev/null 2>&1; then
|
||||||
|
docker=docker
|
||||||
|
elif command -v podman 1>/dev/null 2>&1; then
|
||||||
|
docker=podman
|
||||||
|
else
|
||||||
|
echo -e "${RED}❯ docker or podman command is not available${RESET}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
$docker pull "${DOCKER_IMAGE}"
|
||||||
|
|
||||||
# Test
|
# Test
|
||||||
docker run --rm \
|
$docker run --rm \
|
||||||
-v "$(pwd)/backend:/app" \
|
-v "$(pwd)/backend:/app" \
|
||||||
-v "$(pwd)/global:/app/global" \
|
-v "$(pwd)/global:/app/global" \
|
||||||
-w /app \
|
-w /app \
|
||||||
@@ -12,7 +23,7 @@ docker run --rm \
|
|||||||
sh -c 'yarn install && yarn eslint . && rm -rf node_modules'
|
sh -c 'yarn install && yarn eslint . && rm -rf node_modules'
|
||||||
|
|
||||||
# Build
|
# Build
|
||||||
docker build --pull --no-cache --squash --compress \
|
$docker build --pull --no-cache --squash --compress \
|
||||||
-t "${IMAGE}:ci-${BUILD_NUMBER}" \
|
-t "${IMAGE}:ci-${BUILD_NUMBER}" \
|
||||||
-f docker/Dockerfile \
|
-f docker/Dockerfile \
|
||||||
--build-arg TARGETPLATFORM=linux/amd64 \
|
--build-arg TARGETPLATFORM=linux/amd64 \
|
||||||
|
@@ -7,7 +7,7 @@ DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
if hash docker 2>/dev/null; then
|
if hash docker 2>/dev/null; then
|
||||||
cd "${DIR}/.."
|
cd "${DIR}/.."
|
||||||
echo -e "${BLUE}❯ ${CYAN}Building Docs ...${RESET}"
|
echo -e "${BLUE}❯ ${CYAN}Building Docs ...${RESET}"
|
||||||
docker run --rm -e CI=true -v "$(pwd)/docs:/app/docs" -w /app/docs node:alpine sh -c "yarn install && yarn build && chown -R $(id -u):$(id -g) /app/docs"
|
$docker run --rm -e CI=true -v "$(pwd)/docs:/app/docs" -w /app/docs node:alpine sh -c "yarn install && yarn build && chown -R $(id -u):$(id -g) /app/docs"
|
||||||
echo -e "${BLUE}❯ ${GREEN}Building Docs Complete${RESET}"
|
echo -e "${BLUE}❯ ${GREEN}Building Docs Complete${RESET}"
|
||||||
else
|
else
|
||||||
echo -e "${RED}❯ docker command is not available${RESET}"
|
echo -e "${RED}❯ docker command is not available${RESET}"
|
||||||
|
@@ -18,10 +18,10 @@ if hash docker-compose 2>/dev/null; then
|
|||||||
|
|
||||||
if [ "$1" == "-f" ]; then
|
if [ "$1" == "-f" ]; then
|
||||||
echo -e "${BLUE}❯ ${YELLOW}Following Backend Container:${RESET}"
|
echo -e "${BLUE}❯ ${YELLOW}Following Backend Container:${RESET}"
|
||||||
docker logs -f npm_core
|
$docker logs -f npm_core
|
||||||
else
|
else
|
||||||
echo -e "${YELLOW}Hint:${RESET} You can follow the output of some of the containers with:"
|
echo -e "${YELLOW}Hint:${RESET} You can follow the output of some of the containers with:"
|
||||||
echo " docker logs -f npm_core"
|
echo " $docker logs -f npm_core"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo -e "${RED}❯ docker-compose command is not available${RESET}"
|
echo -e "${RED}❯ docker-compose command is not available${RESET}"
|
||||||
|
@@ -19,7 +19,7 @@ echo -e "${BLUE}❯ ${CYAN}Waiting for healthy: ${YELLOW}${SERVICE}${RESET}"
|
|||||||
until [ "${HEALTHY}" = "healthy" ]; do
|
until [ "${HEALTHY}" = "healthy" ]; do
|
||||||
echo -n "."
|
echo -n "."
|
||||||
sleep 1
|
sleep 1
|
||||||
HEALTHY="$(docker inspect -f '{{.State.Health.Status}}' $SERVICE)"
|
HEALTHY="$($docker inspect -f '{{.State.Health.Status}}' $SERVICE)"
|
||||||
((LOOPCOUNT++))
|
((LOOPCOUNT++))
|
||||||
|
|
||||||
if [ "$LOOPCOUNT" == "$LIMIT" ]; then
|
if [ "$LOOPCOUNT" == "$LIMIT" ]; then
|
||||||
|
Reference in New Issue
Block a user