mirror of
https://github.com/renbaoshuo/S2OJ.git
synced 2024-12-24 05:01:53 +00:00
refactor: docker compose
This commit is contained in:
parent
e46ff8b152
commit
84503130db
9
db/Dockerfile
Normal file
9
db/Dockerfile
Normal file
@ -0,0 +1,9 @@
|
||||
FROM mysql:latest
|
||||
|
||||
ADD . /opt/uoj_db
|
||||
WORKDIR /opt/uoj_db
|
||||
|
||||
# Run the latest UOJ Community verison db install script
|
||||
RUN sh install.sh
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
@ -21,8 +21,8 @@ setWebConf(){
|
||||
cat >/docker-entrypoint-initdb.d/000-native_password.sql <<UOJEOF
|
||||
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
|
||||
UOJEOF
|
||||
curl $RAW_URL/install/db/app_uoj233.sql >/docker-entrypoint-initdb.d/001-app_uoj233.sql
|
||||
curl $RAW_URL/install/judger/add_judger.sql >/docker-entrypoint-initdb.d/002-add_judger.sql
|
||||
cp app_uoj233.sql /docker-entrypoint-initdb.d/001-app_uoj233.sql
|
||||
cp add_judger.sql /docker-entrypoint-initdb.d/002-add_judger.sql
|
||||
}
|
||||
|
||||
echo 'Preparing UOJ System db environment...'
|
@ -2,7 +2,9 @@ version: "3"
|
||||
services:
|
||||
|
||||
uoj-db:
|
||||
image: universaloj/uoj-system:db
|
||||
build:
|
||||
context: ./db/
|
||||
dockerfile: Dockerfile
|
||||
container_name: uoj-db
|
||||
restart: always
|
||||
volumes:
|
||||
@ -12,7 +14,9 @@ services:
|
||||
- MYSQL_ROOT_PASSWORD=root
|
||||
|
||||
uoj-judger:
|
||||
image: universaloj/uoj-system:judger
|
||||
build:
|
||||
context: ./judger/
|
||||
dockerfile: Dockerfile
|
||||
container_name: uoj-judger
|
||||
restart: always
|
||||
stdin_open: true
|
||||
@ -20,7 +24,7 @@ services:
|
||||
cap_add:
|
||||
- SYS_PTRACE
|
||||
volumes:
|
||||
- ./uoj_data/judger/log:/opt/uoj/judger/log
|
||||
- ./uoj_data/judger/log:/opt/uoj_judger/log
|
||||
environment:
|
||||
- UOJ_PROTOCOL=http
|
||||
- UOJ_HOST=uoj-web
|
||||
@ -30,7 +34,9 @@ services:
|
||||
- SOCKET_PASSWORD=_judger_socket_password_
|
||||
|
||||
uoj-web:
|
||||
image: universaloj/uoj-system:web
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: web/Dockerfile
|
||||
container_name: uoj-web
|
||||
restart: always
|
||||
stdin_open: true
|
@ -1,25 +0,0 @@
|
||||
FROM ubuntu:20.04
|
||||
MAINTAINER MascoSkray <MascoSkray@gmail.com>
|
||||
ARG CLONE_ADDFLAG
|
||||
|
||||
WORKDIR /opt
|
||||
#Update apt and install git
|
||||
RUN apt-get update && apt-get install -y git
|
||||
#Clone the latest UOJ Community verison to local
|
||||
RUN git clone https://github.com/renbaoshuo/UOJ-System.git --depth 1 --single-branch ${CLONE_ADDFLAG} uoj
|
||||
#Install environment and set startup script
|
||||
RUN cd uoj/install/bundle && sh install.sh -p && echo "\
|
||||
#!/bin/sh\n\
|
||||
chown -R mysql:mysql /var/lib/mysql /var/run/mysqld\n\
|
||||
if [ ! -f \"/var/uoj_data/.UOJSetupDone\" ]; then\n\
|
||||
cd /opt/uoj/install/bundle && sh install.sh -i\n\
|
||||
fi\n\
|
||||
service ntp start\n\
|
||||
service mysql start\n\
|
||||
service apache2 start\n\
|
||||
su local_main_judger -c \"/opt/uoj/judger/judge_client start\"\n\
|
||||
exec bash\n" >/opt/up && chmod +x /opt/up
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
||||
EXPOSE 80 3690
|
||||
CMD /opt/up
|
@ -1,6 +0,0 @@
|
||||
#!/bin/sh
|
||||
CLONE_ADDFLAG="-b $DOCKER_TAG"
|
||||
if [ "$DOCKER_TAG" = "latest" ]; then
|
||||
CLONE_ADDFLAG="-b master"
|
||||
fi
|
||||
docker build -t $IMAGE_NAME --build-arg CLONE_ADDFLAG="$CLONE_ADDFLAG" .
|
@ -1,162 +0,0 @@
|
||||
#!/bin/bash
|
||||
genRandStr(){
|
||||
cat /dev/urandom | tr -dc [:alnum:] | head -c $1
|
||||
}
|
||||
#Set some vars
|
||||
_database_password_=root
|
||||
_judger_socket_port_=2333
|
||||
_judger_socket_password_=$(genRandStr 32)
|
||||
_main_judger_password_=$(genRandStr 32)
|
||||
|
||||
getAptPackage(){
|
||||
printf "\n\n==> Getting environment packages\n"
|
||||
#Set MySQL root password
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
(echo "mysql-server mysql-server/root_password password $_database_password_";echo "mysql-server mysql-server/root_password_again password $_database_password_") | debconf-set-selections
|
||||
#Update apt sources and install
|
||||
dpkg -s gnupg 2>/dev/null || (apt-get update && apt-get install -y gnupg)
|
||||
echo "deb http://ppa.launchpad.net/stesie/libv8/ubuntu bionic main" | tee /etc/apt/sources.list.d/stesie-libv8.list && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D858A0DF
|
||||
apt-get update && apt-get install -y vim ntp zip unzip curl wget apache2 libapache2-mod-xsendfile libapache2-mod-php php php-dev php-pear php-zip php-mysql php-mbstring php-gd php-intl php-xsl mysql-server cmake fp-compiler re2c libv8-7.5-dev libyaml-dev python python3 python3-requests openjdk-8-jdk openjdk-11-jdk
|
||||
#Install PHP extensions
|
||||
yes | pecl install yaml
|
||||
git clone https://github.com/phpv8/v8js.git --depth=1 /tmp/pear/download/v8js-master && cd /tmp/pear/download/v8js-master
|
||||
phpize && ./configure --with-php-config=/usr/bin/php-config --with-v8js=/opt/libv8-7.5 && make install && cd -
|
||||
}
|
||||
|
||||
setLAMPConf(){
|
||||
printf "\n\n==> Setting LAMP configs\n"
|
||||
#Set Apache UOJ site conf
|
||||
cat >/etc/apache2/sites-available/000-uoj.conf <<UOJEOF
|
||||
<VirtualHost *:80>
|
||||
#ServerName local_uoj.ac
|
||||
ServerAdmin opensource@uoj.ac
|
||||
DocumentRoot /var/www/uoj
|
||||
|
||||
SetEnvIf Request_URI "^/judge/.*$" judgelog
|
||||
#LogLevel info ssl:warn
|
||||
ErrorLog \${APACHE_LOG_DIR}/uoj_error.log
|
||||
CustomLog \${APACHE_LOG_DIR}/uoj_judge.log common env=judgelog
|
||||
CustomLog \${APACHE_LOG_DIR}/uoj_access.log combined env=!judgelog
|
||||
|
||||
XSendFile On
|
||||
XSendFilePath /var/uoj_data
|
||||
XSendFilePath /var/www/uoj/app/storage
|
||||
XSendFilePath /opt/uoj/judger/uoj_judger/include
|
||||
</VirtualHost>
|
||||
UOJEOF
|
||||
#Enable modules and make UOJ site conf enabled
|
||||
a2ensite 000-uoj.conf && a2dissite 000-default.conf
|
||||
a2enmod rewrite headers && sed -i -e '172s/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf
|
||||
#Create UOJ session save dir and make PHP extensions available
|
||||
mkdir --mode=733 /var/lib/php/uoj_sessions && chmod +t /var/lib/php/uoj_sessions
|
||||
sed -i -e '912a\extension=v8js.so\nextension=yaml.so' /etc/php/7.4/apache2/php.ini
|
||||
#Set MySQL user directory and connection config
|
||||
usermod -d /var/lib/mysql/ mysql
|
||||
cat >/etc/mysql/mysql.conf.d/uoj_mysqld.cnf <<UOJEOF
|
||||
[mysqld]
|
||||
default-time-zone='+8:00'
|
||||
character-set-server=utf8mb4
|
||||
collation-server=utf8mb4_unicode_ci
|
||||
init_connect='SET NAMES utf8mb4'
|
||||
init_connect='SET collation_connection = utf8mb4_unicode_ci'
|
||||
skip-character-set-client-handshake
|
||||
sql-mode=ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
|
||||
UOJEOF
|
||||
}
|
||||
|
||||
setWebConf(){
|
||||
printf "\n\n==> Setting web files\n"
|
||||
#Set webroot path
|
||||
ln -sf /opt/uoj/web /var/www/uoj
|
||||
chown -R www-data /var/www/uoj/app/storage
|
||||
#Set web config file
|
||||
php -a <<UOJEOF
|
||||
\$config = include '/var/www/uoj/app/.default-config.php';
|
||||
\$config['database']['password']='$_database_password_';
|
||||
\$config['judger']['socket']['port']='$_judger_socket_port_';
|
||||
file_put_contents('/var/www/uoj/app/.config.php', "<?php\nreturn ".str_replace('\'_httpHost_\'','UOJContext::httpHost()',var_export(\$config, true)).";\n");
|
||||
UOJEOF
|
||||
#Import MySQL database
|
||||
service mysql restart
|
||||
mysql -u root --password=$_database_password_ <../db/app_uoj233.sql
|
||||
echo "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '$_database_password_';" | mysql -u root --password=$_database_password_
|
||||
}
|
||||
|
||||
setJudgeConf(){
|
||||
printf "\n\n==> Setting judger files\n"
|
||||
#Add local_main_judger user
|
||||
useradd -m local_main_judger && usermod -a -G www-data local_main_judger
|
||||
#Set uoj_data path
|
||||
mkdir -p /var/uoj_data/upload
|
||||
chown -R www-data:www-data /var/uoj_data
|
||||
#Compile uoj_judger and set runtime
|
||||
chown -R local_main_judger:local_main_judger /opt/uoj/judger
|
||||
su local_main_judger <<EOD
|
||||
ln -s /var/uoj_data /opt/uoj/judger/uoj_judger/data
|
||||
cd /opt/uoj/judger && chmod +x judge_client
|
||||
cat >uoj_judger/include/uoj_work_path.h <<UOJEOF
|
||||
#define UOJ_WORK_PATH "/opt/uoj/judger/uoj_judger"
|
||||
#define UOJ_JUDGER_BASESYSTEM_UBUNTU1804
|
||||
#define UOJ_JUDGER_PYTHON3_VERSION "3.8"
|
||||
#define UOJ_JUDGER_FPC_VERSION "3.0.4"
|
||||
UOJEOF
|
||||
cd uoj_judger && make -j$(($(nproc) + 1))
|
||||
EOD
|
||||
#Set judge_client config file
|
||||
cat >../../judger/.conf.json <<UOJEOF
|
||||
{
|
||||
"uoj_protocol": "http",
|
||||
"uoj_host": "127.0.0.1",
|
||||
"judger_name": "main_judger",
|
||||
"judger_password": "_main_judger_password_",
|
||||
"socket_port": $_judger_socket_port_,
|
||||
"socket_password": "_judger_socket_password_"
|
||||
}
|
||||
UOJEOF
|
||||
chmod 600 ../../judger/.conf.json && chown local_main_judger ../../judger/.conf.json
|
||||
}
|
||||
|
||||
initProgress(){
|
||||
printf "\n\n==> Doing initial config and start service\n"
|
||||
#Replace password placeholders
|
||||
sed -i -e "s/_main_judger_password_/$_main_judger_password_/g" -e "s/_judger_socket_password_/$_judger_socket_password_/g" /opt/uoj/judger/.conf.json
|
||||
sed -i -e "s/salt0/$(genRandStr 32)/g" -e "s/salt1/$(genRandStr 16)/g" -e "s/salt2/$(genRandStr 16)/g" -e "s/salt3/$(genRandStr 16)/g" -e "s/_judger_socket_password_/$_judger_socket_password_/g" /var/www/uoj/app/.config.php
|
||||
#Import judge_client to MySQL database
|
||||
service mysql start
|
||||
echo "insert into judger_info (judger_name, password) values (\"main_judger\", \"$_main_judger_password_\")" | mysql app_uoj233 -u root --password=$_database_password_
|
||||
#Using cli upgrade to latest
|
||||
php /var/www/uoj/app/cli.php upgrade:latest
|
||||
#Start services
|
||||
service ntp restart
|
||||
service mysql restart
|
||||
service apache2 restart
|
||||
su local_main_judger -c '/opt/uoj/judger/judge_client start'
|
||||
#Touch SetupDone flag file
|
||||
touch /var/uoj_data/.UOJSetupDone
|
||||
printf "\n\n***Installation complete. Enjoy!***\n"
|
||||
}
|
||||
|
||||
prepProgress(){
|
||||
getAptPackage;setLAMPConf;setWebConf;setJudgeConf
|
||||
}
|
||||
|
||||
if [ $# -le 0 ]; then
|
||||
echo 'Installing UOJ System bundle...'
|
||||
prepProgress;initProgress
|
||||
fi
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
-p | --prep)
|
||||
echo 'Preparing UOJ System bundle environment...'
|
||||
prepProgress
|
||||
;;
|
||||
-i | --init)
|
||||
echo 'Initing UOJ System bundle...'
|
||||
initProgress
|
||||
;;
|
||||
-? | --*)
|
||||
echo "Illegal option $1"
|
||||
;;
|
||||
esac
|
||||
shift $(( $#>0?1:0 ))
|
||||
done
|
@ -1,9 +0,0 @@
|
||||
FROM mysql:latest
|
||||
MAINTAINER MascoSkray <MascoSkray@gmail.com>
|
||||
|
||||
#Update apt and install curl
|
||||
RUN apt-get update && apt-get install -y curl
|
||||
#Run the latest UOJ Community verison db install script
|
||||
RUN export RAW_URL=https://raw.githubusercontent.com/UniversalOJ/UOJ-System/master && curl $RAW_URL/install/db/install.sh | sh
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
@ -1,22 +0,0 @@
|
||||
FROM ubuntu:18.04
|
||||
MAINTAINER MascoSkray <MascoSkray@gmail.com>
|
||||
ARG CLONE_ADDFLAG
|
||||
|
||||
WORKDIR /opt
|
||||
#Update apt and install git
|
||||
RUN apt-get update && apt-get install -y git
|
||||
#Clone the latest UOJ Community verison to local
|
||||
RUN git clone https://github.com/renbaoshuo/UOJ-System.git --depth 1 --single-branch ${CLONE_ADDFLAG} uoj
|
||||
#Install environment and set startup script
|
||||
RUN cd uoj/install/judger && sh install.sh -p && echo "\
|
||||
#!/bin/sh\n\
|
||||
if [ ! -f \"/opt/uoj/judger/.conf.json\" ]; then\n\
|
||||
cd /opt/uoj/install/judger && sh install.sh -i\n\
|
||||
fi\n\
|
||||
service ntp start\n\
|
||||
su judger -c \"/opt/uoj/judger/judge_client start\"\n\
|
||||
exec bash\n" >/opt/up && chmod +x /opt/up
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
||||
EXPOSE 2333
|
||||
CMD /opt/up
|
@ -1,22 +0,0 @@
|
||||
FROM ubuntu:18.04
|
||||
MAINTAINER MascoSkray <MascoSkray@gmail.com>
|
||||
ARG CLONE_ADDFLAG
|
||||
|
||||
WORKDIR /opt
|
||||
#Update apt and install git
|
||||
RUN apt-get update && apt-get install -y git
|
||||
#Clone the latest UOJ Community verison to local
|
||||
RUN git clone https://github.com/renbaoshuo/UOJ-System.git --depth 1 --single-branch ${CLONE_ADDFLAG} uoj
|
||||
#Install environment and set startup script
|
||||
RUN cd uoj/install/web && sh install.sh -p && echo "\
|
||||
#!/bin/sh\n\
|
||||
if [ ! -f \"/var/uoj_data/.UOJSetupDone\" ]; then\n\
|
||||
cd /opt/uoj/install/web && sh install.sh -i\n\
|
||||
fi\n\
|
||||
service ntp start\n\
|
||||
service apache2 start\n\
|
||||
exec bash\n" >/opt/up && chmod +x /opt/up
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
||||
EXPOSE 80 3690
|
||||
CMD /opt/up
|
20
judger/Dockerfile
Normal file
20
judger/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
FROM ubuntu:18.04
|
||||
|
||||
ARG CLONE_ADDFLAG
|
||||
|
||||
ADD . /opt/uoj_judger
|
||||
WORKDIR /opt/uoj_judger
|
||||
|
||||
# Install environment and set startup script
|
||||
RUN sh install.sh -p && echo "\
|
||||
#!/bin/sh\n\
|
||||
if [ ! -f \"/opt/uoj_judger/.conf.json\" ]; then\n\
|
||||
cd /opt/uoj_judger && sh install.sh -i\n\
|
||||
fi\n\
|
||||
service ntp start\n\
|
||||
su judger -c \"/opt/uoj_judger/judge_client start\"\n\
|
||||
exec bash\n" >/opt/up && chmod +x /opt/up
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
||||
EXPOSE 2333
|
||||
CMD /opt/up
|
2
judger/add_judger.sql
Normal file
2
judger/add_judger.sql
Normal file
@ -0,0 +1,2 @@
|
||||
USE `app_uoj233`;
|
||||
insert into judger_info (judger_name, password, ip) values ('compose_judger', '_judger_password_', 'uoj-judger');
|
@ -13,12 +13,12 @@ setJudgeConf(){
|
||||
#Set uoj_data path
|
||||
mkdir /var/uoj_data_copy && chown judger /var/uoj_data_copy
|
||||
#Compile uoj_judger and set runtime
|
||||
chown -R judger:judger /opt/uoj/judger
|
||||
chown -R judger:judger /opt/uoj_judger
|
||||
su judger <<EOD
|
||||
ln -s /var/uoj_data_copy /opt/uoj/judger/uoj_judger/data
|
||||
cd /opt/uoj/judger && chmod +x judge_client
|
||||
ln -s /var/uoj_data_copy /opt/uoj_judger/uoj_judger/data
|
||||
cd /opt/uoj_judger && chmod +x judge_client
|
||||
cat >uoj_judger/include/uoj_work_path.h <<UOJEOF
|
||||
#define UOJ_WORK_PATH "/opt/uoj/judger/uoj_judger"
|
||||
#define UOJ_WORK_PATH "/opt/uoj_judger/uoj_judger"
|
||||
#define UOJ_JUDGER_BASESYSTEM_UBUNTU1804
|
||||
#define UOJ_JUDGER_PYTHON3_VERSION "3.6"
|
||||
#define UOJ_JUDGER_FPC_VERSION "3.0.4"
|
||||
@ -29,12 +29,12 @@ EOD
|
||||
|
||||
initProgress(){
|
||||
printf "\n\n==> Doing initial config and start service\n"
|
||||
#Check envs
|
||||
# Check envs
|
||||
if [ -z "$UOJ_PROTOCOL" -o -z "$UOJ_HOST" -o -z "$JUDGER_NAME" -o -z "$JUDGER_PASSWORD" -o -z "$SOCKET_PORT" -o -z "$SOCKET_PASSWORD" ]; then
|
||||
echo "!! Environment variables not set! Please edit config file by yourself!"
|
||||
else
|
||||
#Set judge_client config file
|
||||
cat >../../judger/.conf.json <<UOJEOF
|
||||
# Set judge_client config file
|
||||
cat >.conf.json <<UOJEOF
|
||||
{
|
||||
"uoj_protocol": "$UOJ_PROTOCOL",
|
||||
"uoj_host": "$UOJ_HOST",
|
||||
@ -44,11 +44,11 @@ initProgress(){
|
||||
"socket_password": "$SOCKET_PASSWORD"
|
||||
}
|
||||
UOJEOF
|
||||
chmod 600 ../../judger/.conf.json && chown judger ../../judger/.conf.json
|
||||
chown -R judger:judger ../../judger/log
|
||||
chmod 600 .conf.json && chown judger .conf.json
|
||||
chown -R judger:judger ./log
|
||||
#Start services
|
||||
service ntp restart
|
||||
su judger -c '/opt/uoj/judger/judge_client start'
|
||||
su judger -c '/opt/uoj_judger/judge_client start'
|
||||
echo "please modify the database after getting the judger server ready:"
|
||||
echo "insert into judger_info (judger_name, password, ip) values ('$JUDGER_NAME', '$JUDGER_PASSWORD', '__judger_ip_here__');"
|
||||
printf "\n\n***Installation complete. Enjoy!***\n"
|
20
web/Dockerfile
Normal file
20
web/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
FROM ubuntu:18.04
|
||||
|
||||
ARG CLONE_ADDFLAG
|
||||
|
||||
ADD . /opt/uoj
|
||||
WORKDIR /opt/uoj
|
||||
|
||||
# Install environment and set startup script
|
||||
RUN sh web/install.sh -p && echo "\
|
||||
#!/bin/sh\n\
|
||||
if [ ! -f \"/var/uoj_data/.UOJSetupDone\" ]; then\n\
|
||||
cd /opt/uoj/web && sh install.sh -i\n\
|
||||
fi\n\
|
||||
service ntp start\n\
|
||||
service apache2 start\n\
|
||||
exec bash\n" >/opt/up && chmod +x /opt/up
|
||||
|
||||
ENV LANG=C.UTF-8 TZ=Asia/Shanghai
|
||||
EXPOSE 80 3690
|
||||
CMD /opt/up
|
@ -15,7 +15,7 @@ getAptPackage(){
|
||||
dpkg -s gnupg 2>/dev/null || (apt-get update && apt-get install -y gnupg)
|
||||
echo "deb http://ppa.launchpad.net/stesie/libv8/ubuntu bionic main" | tee /etc/apt/sources.list.d/stesie-libv8.list && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D858A0DF
|
||||
apt-get update && apt-get install -y vim ntp zip unzip curl wget apache2 libapache2-mod-xsendfile libapache2-mod-php php php-dev php-pear php-zip php-mysql php-mbstring php-gd php-intl php-xsl g++ cmake re2c libv8-7.5-dev libyaml-dev
|
||||
#Install PHP extensions
|
||||
# Install PHP extensions
|
||||
printf "/opt/libv8-7.5\n\n" | pecl install v8js yaml
|
||||
}
|
||||
|
||||
@ -50,10 +50,10 @@ UOJEOF
|
||||
|
||||
setWebConf(){
|
||||
printf "\n\n==> Setting web files\n"
|
||||
#Set webroot path
|
||||
# Set webroot path
|
||||
ln -sf /opt/uoj/web /var/www/uoj
|
||||
chown -R www-data /var/www/uoj/app/storage
|
||||
#Set web config file
|
||||
# Set web config file
|
||||
php -a <<UOJEOF
|
||||
\$config = include '/var/www/uoj/app/.default-config.php';
|
||||
\$config['database']['host']='$_database_host_';
|
||||
@ -61,15 +61,15 @@ setWebConf(){
|
||||
\$config['judger']['socket']['port']='$_judger_socket_port_';
|
||||
file_put_contents('/var/www/uoj/app/.config.php', "<?php\nreturn ".str_replace('\'_httpHost_\'','UOJContext::httpHost()',var_export(\$config, true)).";\n");
|
||||
UOJEOF
|
||||
#Prepare local sandbox
|
||||
cd ../../judger/uoj_judger
|
||||
# Prepare local sandbox
|
||||
cd ../judger/uoj_judger
|
||||
cat >include/uoj_work_path.h <<UOJEOF
|
||||
#define UOJ_WORK_PATH "/opt/uoj/judger/uoj_judger"
|
||||
#define UOJ_JUDGER_BASESYSTEM_UBUNTU1804
|
||||
#define UOJ_JUDGER_PYTHON3_VERSION "3.6"
|
||||
#define UOJ_JUDGER_FPC_VERSION "3.0.4"
|
||||
UOJEOF
|
||||
make runner -j$(($(nproc) + 1)) && cd ../../install/web
|
||||
make runner -j$(($(nproc) + 1)) && cd ../../web
|
||||
}
|
||||
|
||||
initProgress(){
|
Loading…
Reference in New Issue
Block a user