跳转到主要内容

区域供热网络优化

项目描述

Latest version Python versions License Build status

区域供热网络优化

此包提供求解器服务器。

安装

安装redis

在大多数Linux发行版的包管理器中应该可用。

aptitude install redis

安装ipopt

安装依赖项

aptitude install make g++ gfortran pkgconf liblapack-dev

使用coinbrew获取和编译Ipopt及其依赖项

# Run as unprivileged user
git clone --depth=1 https://github.com/coin-or/coinbrew
cd coinbrew
./coinbrew Ipopt:releases/3.13.4 fetch
./coinbrew build Ipopt

将文件复制到项目目录

cp -r ./coinbrew/dist /path/to/project/ipopt

安装pyodhean

使用pip

pip install pyodhean-server

pyodhean-server支持Python >= 3.7。

开发配置

启动求解器服务器

将ipopt的路径添加到PATH(应添加到.bashrc)

export PATH=$PATH:/path/to/project/ipopt/bin/

检查ipopt是否正确安装

ldd `which ipopt`
ipopt -v

启动工作进程

celery -A pyodhean_server worker

配置和启动Web API服务器

# Set FLASK_ENV variable
export FLASK_ENV=development

# Alternatively, use a .env file
echo "FLASK_ENV=development" > .env

# Run application
flask run

生产配置

配置和启动Web API服务器

以下行解释如何使用apache运行pyodhean服务器。它们不包括创建和使用SSL证书。

将docs/deployment/etc中的apache2目录复制到/etc。

在pyodhean目录中创建一个用于存储应用程序文件的pyodhean目录。

在pyodhean目录中创建Python 3虚拟环境

virtualenv -p /usr/bin/python3 venv-pyodhean

从pyodhean和pyodhean-server仓库中提取代码,并在虚拟环境中安装它们

source venv-pyodhean/bin/activate
pip install ./pyodhean
pip install ./pyodhean-server

将docs/deployment/pyodhean中的文件复制到pyodhean目录。

如有需要,请自定义它们。至少必须指定虚拟环境的路径。

确保settings.conf可以被apache用户读取

chown root:www-data application/settings.conf
chmod 640 application/settings.conf

pyodhean目录应如下所示:

pyodhean/
    application/
        application.wsgi
        settings.conf
    venv-pyodhean
    pyodhean
    pyodhean-server

注意:pyodhean和pyodhean-server仓库可以存储在任何位置。它们不必在pyodhean目录中。

编辑/etc/apache2/sites-available/pyodhean.conf。

重新加载apache2。

API应可通过https://domain.tld/api/v0/访问。

创建目录以存储日志文件

mkdir /var/log/pyodhean
chmod pyodhean:pyodhean /var/log/pyodhean

配置并启动求解器服务

创建pyodhean用户

adduser --system --no-create-home --group pyodhean

创建日志目录

mkdir -m 755 /var/log/pyodhean-celery
chown pyodhean:pyodhean /var/log/pyodhean-celery

将docs/deployment/etc中的systemd目录复制到/etc。

编辑pyodhean-celery配置文件以指定路径。

/etc/systemd/system/pyodhean-celery.service.d/pyodhean-celery.conf

启动服务并启用系统启动时的自动启动

systemctrl enable pyodhean-celery
systemctrl start pyodhean-celery

配置日志文件轮转

将docs/deployment/etc中的logrotate.d目录复制到/etc。

配置身份验证

创建一个Apache用户可以读取的用户DB文件

touch /path/to/project/users.db
chown root:www-data /path/to/project/users.db
chmod 640 /path/to/project/users.db

将用户添加到DB文件

source venv-pyodhean/bin/activate
export FLASK_APP=pyodhean_server.app
flask add-user /path/to/project/users.db user password

编辑应用程序配置以启用授权并传递用户DB文件

AUTH_ENABLED=True
AUTH_USERS=/path/to/project/users.db

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

pyodhean-server-1.0.0.tar.gz (17.8 kB 查看散列)

上传时间

构建分布

pyodhean_server-1.0.0-py3-none-any.whl (18.5 kB 查看散列)

上传时间 Python 3

支持者: