mirror of
https://port.numenaute.org/aleajactaest/khanat-code-old.git
synced 2024-11-21 22:46:11 +00:00
[docker server] change method to start khanat without screen (you can select your method to start khanat
This commit is contained in:
parent
fea085ee39
commit
3ec68a0169
6 changed files with 140 additions and 29 deletions
27
dist/docker/server/debian/common/autostart.sh
vendored
Executable file
27
dist/docker/server/debian/common/autostart.sh
vendored
Executable file
|
@ -0,0 +1,27 @@
|
|||
#!/bin/bash
|
||||
|
||||
declare METHOD_START=$1
|
||||
|
||||
/etc/init.d/mysql restart
|
||||
/etc/init.d/apache2 restart
|
||||
/etc/init.d/ssh restart
|
||||
source /opt/shard.sh
|
||||
|
||||
tmp=$(hostname -I)
|
||||
export addressip=${tmp//[[:blank:]]/}
|
||||
sed -i -r 's/(FSListenHost)(.*)(=)(.*)(;)/FSListenHost = "'"$addressip"'";/g' $KHANAT_PATH/server/frontend_service.cfg || exit 2
|
||||
|
||||
if [[ $METHOD_START -eq 1 ]]
|
||||
then
|
||||
export RYZOM_PATH=$KHANAT_PATH
|
||||
/home/gameserver/khanat/tools/scripts/linux/shard start
|
||||
elif [[ $METHOD_START -eq 2 ]]
|
||||
then
|
||||
bash /opt/launch_services.sh
|
||||
sleep 10
|
||||
tail -f /home/gameserver/khanat/server/log/log.log
|
||||
else
|
||||
bash /opt/launch_services.sh
|
||||
sleep 10
|
||||
watch cat /home/gameserver/khanat/server/aes_nagios_report.txt
|
||||
fi
|
|
@ -133,6 +133,8 @@ like :
|
|||
|
||||
---------------------------------------------------
|
||||
mysql : account root (no password)
|
||||
---------------------------------------------------
|
||||
log khanat server : /home/gameserver/khanat/server/log/log.log
|
||||
***************************************************
|
||||
EOF
|
||||
|
||||
|
|
34
dist/docker/server/debian/common/init-khanat.sh
vendored
34
dist/docker/server/debian/common/init-khanat.sh
vendored
|
@ -11,7 +11,7 @@ cd /opt; tar xzf ryzom-ressources.tar.gz || exit 2
|
|||
cat << EOF > /opt/shard.sh
|
||||
export KHANAT_HOME=/home/gameserver
|
||||
export KHANAT_PATH=/home/gameserver/khanat
|
||||
export PATH=\$PATH:/usr/local/bin:\$KHANAT_PATH/tools/scripts/linux
|
||||
export PATH=\$PATH:/usr/local/bin:/usr/local/sbin:\$KHANAT_PATH/tools/scripts/linux
|
||||
export KHANAT_DATA=/home/gameserver/khanat-ressources
|
||||
export PATCH_HOME=/home/gameserver
|
||||
export PATCH_CLIENT_SYSTEM=\$PATCH_HOME/patch_service
|
||||
|
@ -245,8 +245,7 @@ ln -s $KHANAT_DATA/shard/egs/named_items.txt $KHANAT_PATH/server/data_shard/name
|
|||
mkdir -p $KHANAT_DATA/mirror_sheets
|
||||
cp -r /opt/code/ryzom/server/data_shard/mirror_sheets/* $KHANAT_DATA/mirror_sheets
|
||||
|
||||
|
||||
# -c/usr/local/etc/nel/make_sheet_id.cfg <---- ne marche pas !
|
||||
# Generate data
|
||||
cd /usr/local; /usr/local/bin/make_sheet_id \
|
||||
-o$KHANAT_DATA/leveldesign/game_elem/sheet_id.bin \
|
||||
$KHANAT_DATA/leveldesign/game_elem \
|
||||
|
@ -280,7 +279,7 @@ EOF
|
|||
cp -r /opt/code/ryzom/common/* /opt/sheets_packer/common || exit 2
|
||||
cp -r $KHANAT_DATA/* /opt/sheets_packer/khanat-ressources || exit 2
|
||||
cp -r /opt/code/ryzom/client/* /opt/sheets_packer/client || exit 2
|
||||
cd /opt/sheets_packer; sheets_packer 1>/opt/sheets_packer/sheets_packer.log 2>/opt/sheets_packer/sheets_packer.err || exit 2
|
||||
cd /opt/sheets_packer; sheets_packer || exit 2
|
||||
cp /opt/sheets_packer/visual_slot.tab $KHANAT_PATH/common/data_common/visual_slot.tab || exit 2
|
||||
cp /opt/sheets_packer/visual_slot.tab $KHANAT_PATH/client/data/visual_slot.tab || exit 2
|
||||
|
||||
|
@ -292,31 +291,10 @@ for var in $KHANAT_DATA/translation/translated/*_wk.txt; do nomfic=${var##*/};
|
|||
cp /opt/code/ryzom/server/shard.screen.rc $KHANAT_PATH/server/shard.screen.rc
|
||||
ln -s /usr/local /home/gameserver/build
|
||||
|
||||
## Initialize ssh
|
||||
/etc/init.d/ssh restart
|
||||
|
||||
cp /usr/local/sbin/* /usr/local/bin
|
||||
cat << EOF
|
||||
source /opt/shard.sh
|
||||
/home/gameserver/khanat/tools/scripts/linux/shard
|
||||
EOF
|
||||
|
||||
cat << EOF > /opt/autostart.sh
|
||||
#!/bin/bash
|
||||
/etc/init.d/mysql restart
|
||||
/etc/init.d/apache2 restart
|
||||
/etc/init.d/ssh restart
|
||||
source /opt/shard.sh
|
||||
|
||||
tmp=\$(hostname -I)
|
||||
export addressip=\${tmp//[[:blank:]]/}
|
||||
sed -i -r 's/(FSListenHost)(.*)(=)(.*)(;)/FSListenHost = "'"\$addressip"'";/g' \$KHANAT_PATH/server/frontend_service.cfg || exit 2
|
||||
|
||||
export RYZOM_PATH=\$KHANAT_PATH
|
||||
/home/gameserver/khanat/tools/scripts/linux/shard start
|
||||
EOF
|
||||
|
||||
chmod +x /opt/autostart.sh
|
||||
|
||||
# create default directory for rrd data
|
||||
mkdir -p $KHANAT_PATH/server/save_shard/rrd_graphs
|
||||
|
||||
|
||||
|
@ -478,7 +456,7 @@ then
|
|||
fi
|
||||
|
||||
# Generate patch
|
||||
su -c "cd $PATCH_HOME/patch_service; patch_gen updateProduct patch_game/ryzom.xml > patch_game/generate.log 2>&1" gameserver || exit 2
|
||||
su -c "cd $PATCH_HOME/patch_service; patch_gen updateProduct patch_game/ryzom.xml" gameserver || exit 2
|
||||
# Edit release note
|
||||
cat << EOF > $PATCH_HOME/patch_service/patch_game/patch/index.php
|
||||
<html>
|
||||
|
|
86
dist/docker/server/debian/common/launch_services.sh
vendored
Executable file
86
dist/docker/server/debian/common/launch_services.sh
vendored
Executable file
|
@ -0,0 +1,86 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# Script to launch automatically khaganat
|
||||
#
|
||||
#
|
||||
# ref : shard.screen.rc
|
||||
|
||||
mkdir -p /home/gameserver/khanat/server/log
|
||||
cd /home/gameserver/khanat/server/log
|
||||
|
||||
function start_stop()
|
||||
{
|
||||
nameservice=$1
|
||||
mkdir -p /home/gameserver/khanat/server/${nameservice}
|
||||
printf RUNNING > /home/gameserver/khanat/server/${nameservice}/${nameservice}.state
|
||||
nohup $2
|
||||
printf STOPPED > /home/gameserver/khanat/server/${nameservice}/${nameservice}.state
|
||||
}
|
||||
|
||||
function launch_service()
|
||||
{
|
||||
nameservice=$1
|
||||
start_stop "$1" "$2" 1>/dev/null 2>&1 &
|
||||
#nohup $2 1>/dev/null 2>&1 &
|
||||
#echo "$!" > /home/gameserver/khanat/server/$1.pid
|
||||
#printf RUNNING > /home/gameserver/khanat/server/${nameservice}/${nameservice}.state
|
||||
}
|
||||
|
||||
# aes : admin_executor_service.log
|
||||
launch_service 'aes' 'ryzom_admin_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --fulladminname=admin_executor_service --shortadminname=AES'
|
||||
|
||||
# bms_master : backup_service.log
|
||||
launch_service 'bms_master' 'ryzom_backup_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid -P49990'
|
||||
|
||||
# bms_pd_master
|
||||
# launch_service 'bms_pd_master' 'ryzom_backup_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid -P49992'
|
||||
|
||||
# egs : entities_game_service.log
|
||||
launch_service 'egs' 'ryzom_entities_game_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# gpms : gpm_service.log
|
||||
launch_service 'gpms' 'ryzom_gpm_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# ios : input_output_service.log
|
||||
launch_service 'ios' 'ryzom_ios_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# rns : naming_service.log
|
||||
launch_service 'rns' 'ryzom_naming_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# rws : welcome_service.log
|
||||
launch_service 'rws' 'ryzom_welcome_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# ts : tick_service.log
|
||||
launch_service 'ts' 'ryzom_tick_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# ms : mirror_service.log
|
||||
launch_service 'ms' 'ryzom_mirror_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# ais_newbyland : ai_service.log
|
||||
launch_service 'ais_newbyland' 'ryzom_ai_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid -mCommon:Newbieland:Post'
|
||||
|
||||
# mfs : mail_forum_service.log
|
||||
launch_service 'mfs' 'ryzom_mail_forum_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# su : shard_unifier_service.log
|
||||
launch_service 'su' 'ryzom_shard_unifier_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# fes : frontend_service.log
|
||||
launch_service 'fes' 'ryzom_frontend_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# sbs : session_browser_server.log
|
||||
launch_service 'sbs' 'ryzom_session_browser_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# lgs : logger_service.log
|
||||
launch_service 'lgs' 'ryzom_logger_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# mos
|
||||
# launch_service 'mos' 'ryzom_monitor_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# pdss
|
||||
#launch_service 'pdss' 'ryzom_pd_support_service -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
# ras : admin_service.log
|
||||
launch_service 'ras' 'ryzom_admin_service --fulladminname=admin_service --shortadminname=AS -A/home/gameserver/khanat/server -C/home/gameserver/khanat/server -L/home/gameserver/khanat/server/log --nobreak --writepid'
|
||||
|
||||
|
|
@ -13,6 +13,8 @@ ENV HOSTNAME khanat_server
|
|||
|
||||
COPY todelete.sh /opt/khanat_config.sh
|
||||
COPY dist/docker/server/debian/common/init-khanat.sh /opt/
|
||||
COPY dist/docker/server/debian/common/autostart.sh /opt/
|
||||
COPY dist/docker/server/debian/common/launch_services.sh /opt/
|
||||
COPY ryzomcore.tar.gz /opt/
|
||||
COPY ryzom-ressources.tar.gz /opt/
|
||||
COPY khanat-ressources.tar.gz /opt/
|
||||
|
|
|
@ -21,6 +21,7 @@ declare -i CLEANCONTAINERKHANAT=0
|
|||
declare -i CONNECTSSHKHANAT=0
|
||||
declare -i KHANAT_CLIENT_VERSION=1
|
||||
declare -i SHOWIPKHANATSERVER=0
|
||||
declare -i METHODSTARTSERVER=1
|
||||
|
||||
declare IMAGEGENERICSERVER="server_generic_debian_jessie_x86_64"
|
||||
declare IMAGEKHANATSERVER="server_khanat_debian_jessie_x86_64"
|
||||
|
@ -51,6 +52,9 @@ options:
|
|||
-s, --stop-server : Stop server khanat
|
||||
-c, --clean-container-khanat : Remove old server khanat (stopped)
|
||||
-i, --show-ip-khanat-server : show ip address for khanat server (launch under docker)
|
||||
--start-khanat-with-screen : [default] start khanat with screen
|
||||
--start-khanat-with-full-log : start server khanat and show full log
|
||||
--start-khanat-with-watch-state : start server khanat and show state (loop)
|
||||
--ssh : connect on khanat server (with ssh) [Exclusive action, can't execute other action]
|
||||
--client-version=[INTEGER] : version client khanat (we need to communicate with our server)
|
||||
|
||||
|
@ -143,6 +147,18 @@ do
|
|||
SHOWIPKHANATSERVER=1
|
||||
shift
|
||||
;;
|
||||
--start-khanat-with-screen)
|
||||
METHODSTARTSERVER=1
|
||||
shift
|
||||
;;
|
||||
--start-khanat-with-full-log)
|
||||
METHODSTARTSERVER=2
|
||||
shift
|
||||
;;
|
||||
--start-khanat-with-watch-state)
|
||||
METHODSTARTSERVER=3
|
||||
shift
|
||||
;;
|
||||
--client-version*)
|
||||
KHANAT_CLIENT_VERSION="${1#*=}"
|
||||
shift
|
||||
|
@ -352,7 +368,7 @@ fi
|
|||
if [[ $LAUNCHKHANAT -ne 0 ]]
|
||||
then
|
||||
msg_info "START KHANAT SERVER"
|
||||
cd $rootdir; docker run -it --hostname=khanat ${IMAGEKHANATSERVER} /opt/autostart.sh
|
||||
cd $rootdir; docker run -it --hostname=khanat ${IMAGEKHANATSERVER} /opt/autostart.sh $METHODSTARTSERVER
|
||||
clear
|
||||
fi
|
||||
|
||||
|
|
Loading…
Reference in a new issue