操作模式:单机模式、多用户模式和命令行界面 (CLI)。
独立模式(桌面应用程序)
后端在会话开始时作为本地进程启动,并在会话结束时停止。它以启动它的操作系统用户的权限运行。无需额外登录。CODESYS 4在 Windows 系统中,开始菜单中的该选项用于在单独的应用程序窗口中打开用户界面。或者,在 Windows 和 Linux 系统中,您也可以使用……c4-cli standalone-session启动会话的命令。有关该命令的说明,请参见以下内容:c4-cli standalone-session。
要求
视窗 | Linux |
|---|---|
Windows x64 | Debian Linux(x64 和 ARM64) 目前官方仅支持 Debian 系统。 |
| Debian Linux (x64): Debian Linux (ARM64) 的运行时系统 – 请参阅脚本安装 |
| 用于在浏览器中启动界面的图形界面 |
对于两种操作系统:A CODESYS网关和CODESYS运行时系统不包含在安装程序或 Debian 软件包中。它们是单独安装的。CODESYS Store要求是运行时系统CODESYS V3.5 SP16 或更高版本(不支持精简运行时)。网关和控制器必须可从工作站计算机访问。
每个会话仅限一个用户和一个端口。同一会话中,多个用户不能同时编辑同一个工作区。
独立模式仅限通过以下方式访问
localhost。只有工作站计算机能够访问的网关才能使用。控制器也必须能够从网关访问。
安装、扩展、库存储库和设备存储库在每台工作站上分别维护。此外,还有远程存储库(默认情况下用于库),这些存储库通过以下方式提供:CODESYS Deployment Server。
在 Linux 系统上,目前仅 Debian 获得官方支持。.NET 目前不支持在 QEMU 等模拟器中运行(也不支持通过 Docker 多平台隐式运行)。
多用户模式(作为 Web 服务器运行)
后端作为持久服务运行在 Linux 服务器上,该服务器通过 systemd 或用户创建的 Docker 镜像进行管理。用户通过网络使用浏览器访问,并使用其服务器用户帐户登录。所有用户都拥有独立的会话,彼此隔离。终端设备上无需安装任何软件,因此不仅可以在 Windows 和 Linux 计算机上运行,例如 macOS 也可以。项目文件集中存储在服务器的文件系统中,通常位于每个用户的家目录中。
服务器 Debian Linux(x64 和 ARM64)。不支持 Windows 作为服务器操作系统。
aspnetcore-runtime-8.0最新补丁级别的软件包和CODESYS 4需要安装 Debian 软件包。该服务以专用系统用户身份运行。出于安全考虑,c4-server拒绝启动root。用户帐户每个用户都需要在服务器操作系统上拥有一个帐户。该帐户可以通过密码进行身份验证,并且是……的成员。
codesys-4组或已在以下文件中指定的组--login-groups启动时可选择启用此功能。在 Docker 容器中,必须在容器内提供账户信息(例如通过 PAM),并且必须将用户主目录挂载为持久卷。更多信息,请参阅以下内容:准备工作:创建用户帐户。加密上游反向代理(例如 nginx)负责处理 TLS 加密并转发 WebSocket 连接,还需要有效的 TLS 证书或组织内部信任的证书。更多信息,请参阅以下内容:预先部署 TLS 反向代理。
控制器:A CODESYS网关和CODESYS来自运行时系统的CODESYS Store满足以下要求:网关必须可从服务器访问,运行时系统也必须可从网关访问。或者,您也可以直接在服务器上部署本地网关。
知识:Linux 系统管理、用户管理(PAM、LDAP、IPA 等)、Debian 软件包管理、TLS 证书管理,以及必要时的 Docker 和 nginx 管理。
CODESYS 4该服务本身尚未实现 TLS 加密。如果没有上游反向代理,通过网络访问时用户界面将无法工作,因为它使用了仅在安全环境下可用的浏览器 API。
登录过程依赖于服务器操作系统的用户管理功能。CODESYS 4它不维护自己的用户帐户、角色或权限。也可以通过以下方式调用实例的版本信息:
/version.json无需登录即可访问。CODESYS 4目前尚未以 Docker 镜像的形式分发。要在容器中运行系统,您需要创建单独的镜像。我们无法提供 Docker 的基本使用支持。有关 Dockerfile 示例,请参见以下内容: Dockerfile 示例这只是一个示例文件,需要根据您的具体需求进行调整。
目前仅官方支持 Debian 系统。.NET 目前不支持在 QEMU 等模拟器中运行(也不支持通过 Docker 多平台隐式运行)。
操作模式:c4-cli
此操作模式适用于所有平台,既可通过终端在本地运行,也可通过服务器远程运行(例如通过 SSH),或在脚本中运行(例如在 CI/CD 环境、时间控制作业等中)。