Sign inSign up

lowking/surgio

By lowking

Updated over 4 years ago

Image
0

132

lowking/surgio repository overview

you need clone this repo for using

https://github.com/lowking/rule-store

start.sh

source /surgio/env.sh && nohup node gw.js > /surgio/nohup.out 2>&1 &
echo $! > /surgio/app.pid && tail -f /surgio/nohup.out

stop.sh

for pid in `cat /surgio/app.pid`
do
        kill -9 $pid
done

restart.sh

sh /surgio/stop.sh
sleep 1s
sh /surgio/start.sh

docker-compose.yml

version : '3.6'
services:
  surgio:
    image: lowking/surgio
    container_name: surgio
    restart: always
    volumes:
      - /home/lowking/surgio:/surgio
    tty: true
    ports:
      - "8889:8889"
    environment:
      - KEY=-----BEGIN OPENSSH PRIVATE KEY-----\nb3BlbnNzaCYXBwbGVAaHRjJ3M=\n-----END OPENSSH PRIVATE KEY-----
      - REPO_URL=your repo url
      - REPO_DOMAIN=repo domain
      - REPO_BRANCH=master

  surgio-ck:
    image: lowking/surgio
    container_name: surgio-ck
    restart: always
    volumes:
      - /home/lowking/surgio-ck:/surgio
    tty: true
    ports:
      - "8899:8899"
    environment:
      - KEY=-----BEGIN OPENSSH PRIVATE KEY-----\nb3BlbnNzaCYXBwbGVAaHRjJ3M=\n-----END OPENSSH PRIVATE KEY-----
      - REPO_URL=your repo url
      - REPO_DOMAIN=repo domain
      - REPO_BRANCH=ck

docker-entrypoint.sh

#!/bin/sh
set -e
targetBranch=$1
if [ -n "$REPO_BRANCH" ]; then
    targetBranch="$REPO_BRANCH"
fi
if [ -z "$targetBranch" ]; then
    targetBranch="master"
fi

echo -e "$KEY" >/root/.ssh/id_rsa
chmod 600 /root/.ssh/id_rsa

cloneRepo() {
    repoName=$1
    repoUrl=$2
    branchName=$3
    if [ ! -d "/${repoName}/.git" ]; then
        echo "█未检查到${repoName}仓库,clone..."
        git clone "${repoUrl}" /"${repoName}"
        git -C "/${repoName}" fetch --all
        git -C "/${repoName}" checkout "${branchName}"
    else
        echo "█更新${repoName}仓库..."
        git -C "/${repoName}" fetch --all
        git -C "/${repoName}" checkout "${branchName}"
        git -C "/${repoName}" reset --hard origin/"${branchName}"
        git -C "/${repoName}" pull origin "${branchName}" --rebase
    fi
}

ssh-keyscan "$REPO_DOMAIN" >/root/.ssh/known_hosts
cloneRepo surgio "$REPO_URL" "$targetBranch"

cp -f ./docker-entrypoint.sh /usr/local/bin
cp -f ./surgio-id-rsa /root/.ssh/id_rsa

npm config delete registry
npm config set registry http://registry.npmjs.org
npm install

sh start.sh

Dockerfile

FROM alpine

LABEL AUTHOR="lowking" \
      VERSION=0.1

ENV PATH=/usr/local/bin:$PATH LANG=C.UTF-8

RUN set -ex \
        && apk update \
        && apk upgrade \
        && apk add --no-cache bash tzdata git moreutils curl jq openssh-client npm \
        && rm -rf /var/cache/apk/* \
        && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
        && echo "Asia/Shanghai" > /etc/timezone \
        && mkdir -p /root/.ssh \
        && npm config set registry https://registry.npm.taobao.org

COPY ./docker-entrypoint.sh /usr/local/bin

RUN set -ex \
        chmod 600 /root/.ssh/id_rsa

WORKDIR /surgio
CMD ["master"]
ENTRYPOINT ["docker-entrypoint.sh"]

Tag summary

Content type

Image

Digest

Size

51.2 MB

Last updated

over 4 years ago

docker pull lowking/surgio