修改打包程序

This commit is contained in:
lwch
2021-09-23 15:02:37 +08:00
parent 6279386d54
commit c4ea049415
4 changed files with 9 additions and 245 deletions
+9 -8
View File
@@ -87,20 +87,21 @@ server端配置(10.0.1.1)
- 建议在server端设置较长的超时时间
- 建议在client端设置较短的超时时间
## linux部署
## 部署
1. 将init.d/np-cli和init.d/np-svr拷贝至/etc/init.d目录
2. 创建/opt/natpass和对应目录
1. [下载](https://github.com/lwch/natpass/releases)并解压到任意目录
2. 修改配置文件
3. 注册服务
sudo mkdir -p /opt/natpass/bin /opt/natpass/conf
3. 将编译出的二进制文件拷贝至/opt/natpass/bin目录
4. 将配置文件拷贝至/opt/natpass/conf目录,并修改对应参数
5. 设置开机启动项
sudo ./np-svr -conf <配置文件路径> -action install
sudo ./np-cli -conf <配置文件路径> -action install
4. 设置开机启动项
sudo systemctl enable np-svr
sudo systemctl enable np-cli
6. 启动对应服务
5. 启动对应服务
sudo /etc/init.d/np-svr start
-7
View File
@@ -76,13 +76,6 @@ func build(t target) {
runtime.Assert(err)
err = copyFile("CHANGELOG.md", path.Join(buildDir, "CHANGELOG.md"))
runtime.Assert(err)
if t.os != "windows" && t.os != "android" && t.os != "ios" {
runtime.Assert(os.MkdirAll(path.Join(buildDir, "init.d"), 0755))
err = copyFile(path.Join("init.d", "np-cli"), path.Join(buildDir, "init.d", "np-cli"))
runtime.Assert(err)
err = copyFile(path.Join("init.d", "np-svr"), path.Join(buildDir, "init.d", "np-svr"))
runtime.Assert(err)
}
ldflags := "-X 'main._GIT_HASH=" + gitHash() + "' " +
"-X 'main._GIT_REVERSION=" + gitReversion() + "' " +
-115
View File
@@ -1,115 +0,0 @@
#!/bin/sh
#
# chkconfig: 2345 12 88
# description: natpass client
### BEGIN INIT INFO
# Provides: lwch748@gmail.com
# Required-Start: $network
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: np-cli
# Description: natpass client
### END INIT INFO
NAME=np-cli
WORKDIR=/opt/natpass
DAEMON=/opt/natpass/bin/$NAME
CONFIG=/opt/natpass/conf/client.yaml
PIDFILE=/var/run/$NAME.pid
wait_for_pid () {
try=0
while test $try -lt 35 ; do
case "$1" in
'created')
if [ -f "$2" ] ; then
try=''
break
fi
;;
'removed')
if [ ! -f "$2" ] ; then
try=''
break
fi
;;
esac
echo -n .
try=`expr $try + 1`
sleep 1
done
}
case "$1" in
start)
echo -n "Starting $NAME "
cd $WORKDIR
nohup $DAEMON -d -pid $PIDFILE -u nobody -conf $CONFIG > /dev/null 2>&1 &
if [ "$?" != 0 ] ; then
echo " failed"
exit 1
fi
wait_for_pid created $PIDFILE
if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;
stop)
echo -n "Gracefully shutting down $NAME "
if [ ! -r $PIDFILE ] ; then
echo "warning, no pid file found - $NAME is not running ?"
exit 1
fi
kill -QUIT `cat $PIDFILE`
wait_for_pid removed $PIDFILE
if [ -n "$try" ] ; then
echo " failed. Use force-quit"
exit 1
else
echo " done"
fi
;;
status)
if [ ! -r $PIDFILE ] ; then
echo "$NAME is stopped"
exit 0
fi
PID=`cat $PIDFILE`
if ps -p $PID | grep -q $PID; then
echo "$NAME (pid $PID) is running..."
else
echo "$NAME dead but pid file exists"
fi
;;
force-quit)
echo -n "Terminating $NAME "
if [ ! -r $PIDFILE ] ; then
echo "warning, no pid file found - $NAME is not running ?"
exit 1
fi
kill -TERM `cat $PIDFILE`
wait_for_pid removed $PIDFILE
if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|status|force-quit|restart}"
exit 1
;;
esac
exit $?
-115
View File
@@ -1,115 +0,0 @@
#!/bin/sh
#
# chkconfig: 2345 12 88
# description: natpass server
### BEGIN INIT INFO
# Provides: lwch748@gmail.com
# Required-Start: $network
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: np-svr
# Description: natpass server
### END INIT INFO
NAME=np-svr
WORKDIR=/opt/natpass
DAEMON=/opt/natpass/bin/$NAME
CONFIG=/opt/natpass/conf/server.yaml
PIDFILE=/var/run/$NAME.pid
wait_for_pid () {
try=0
while test $try -lt 35 ; do
case "$1" in
'created')
if [ -f "$2" ] ; then
try=''
break
fi
;;
'removed')
if [ ! -f "$2" ] ; then
try=''
break
fi
;;
esac
echo -n .
try=`expr $try + 1`
sleep 1
done
}
case "$1" in
start)
echo -n "Starting $NAME "
cd $WORKDIR
nohup $DAEMON -d -pid $PIDFILE -u nobody -conf $CONFIG > /dev/null 2>&1 &
if [ "$?" != 0 ] ; then
echo " failed"
exit 1
fi
wait_for_pid created $PIDFILE
if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;
stop)
echo -n "Gracefully shutting down $NAME "
if [ ! -r $PIDFILE ] ; then
echo "warning, no pid file found - $NAME is not running ?"
exit 1
fi
kill -QUIT `cat $PIDFILE`
wait_for_pid removed $PIDFILE
if [ -n "$try" ] ; then
echo " failed. Use force-quit"
exit 1
else
echo " done"
fi
;;
status)
if [ ! -r $PIDFILE ] ; then
echo "$NAME is stopped"
exit 0
fi
PID=`cat $PIDFILE`
if ps -p $PID | grep -q $PID; then
echo "$NAME (pid $PID) is running..."
else
echo "$NAME dead but pid file exists"
fi
;;
force-quit)
echo -n "Terminating $NAME "
if [ ! -r $PIDFILE ] ; then
echo "warning, no pid file found - $NAME is not running ?"
exit 1
fi
kill -TERM `cat $PIDFILE`
wait_for_pid removed $PIDFILE
if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|status|force-quit|restart}"
exit 1
;;
esac
exit $?