msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" #: src/components/common/AppFooter.vue:13 #: src/views/home/IndexView.vue:467 msgid "AcePanel" msgstr "" #: src/components/common/AppFooter.vue:15 msgid "All Rights Reserved." msgstr "" #: src/components/common/AppFooter.vue:23 msgid "QQ Group" msgstr "" #: src/components/common/AppFooter.vue:27 msgid "Documentation" msgstr "" #: src/components/common/AppFooter.vue:35 msgid "Community" msgstr "" #: src/components/common/AppFooter.vue:43 msgid "Sponsor" msgstr "" #: src/components/common/CronPreview.vue:15 #: src/components/common/CronPreview.vue:22 #: src/components/common/CronSelector.vue:49 msgid "Sunday" msgstr "" #: src/components/common/CronPreview.vue:16 #: src/components/common/CronSelector.vue:50 msgid "Monday" msgstr "" #: src/components/common/CronPreview.vue:17 #: src/components/common/CronSelector.vue:51 msgid "Tuesday" msgstr "" #: src/components/common/CronPreview.vue:18 #: src/components/common/CronSelector.vue:52 msgid "Wednesday" msgstr "" #: src/components/common/CronPreview.vue:19 #: src/components/common/CronSelector.vue:53 msgid "Thursday" msgstr "" #: src/components/common/CronPreview.vue:20 #: src/components/common/CronSelector.vue:54 msgid "Friday" msgstr "" #: src/components/common/CronPreview.vue:21 #: src/components/common/CronSelector.vue:55 msgid "Saturday" msgstr "" #: src/components/common/CronPreview.vue:39 #: src/components/common/CronPreview.vue:144 #: src/components/common/CronPreview.vue:146 msgid "Cron expression: %{cron}" msgstr "" #: src/components/common/CronPreview.vue:54 msgid "Run every %{n} minutes" msgstr "" #: src/components/common/CronPreview.vue:67 msgid "Run every %{n} hours at minute %{m}" msgstr "" #: src/components/common/CronPreview.vue:80 msgid "Run every %{n} days at %{time}" msgstr "" #: src/components/common/CronPreview.vue:86 msgid "Run hourly at minute %{m}" msgstr "" #: src/components/common/CronPreview.vue:98 msgid "Run daily at %{time}" msgstr "" #: src/components/common/CronPreview.vue:111 msgid "Run weekly on %{weekday} at %{time}" msgstr "" #: src/components/common/CronPreview.vue:123 msgid "Run monthly on day %{day} at %{time}" msgstr "" #: src/components/common/CronPreview.vue:135 msgid "Run yearly on month %{month} day %{day} at %{time}" msgstr "" #: src/components/common/CronPreview.vue:140 msgid "Run every minute" msgstr "" #: src/components/common/CronSelector.vue:36 msgid "Every N Minutes" msgstr "" #: src/components/common/CronSelector.vue:37 msgid "Every N Hours" msgstr "" #: src/components/common/CronSelector.vue:38 msgid "Every N Days" msgstr "" #: src/components/common/CronSelector.vue:39 msgid "Hourly" msgstr "" #: src/components/common/CronSelector.vue:40 msgid "Daily" msgstr "" #: src/components/common/CronSelector.vue:41 msgid "Weekly" msgstr "" #: src/components/common/CronSelector.vue:42 msgid "Monthly" msgstr "" #: src/components/common/CronSelector.vue:43 msgid "Yearly" msgstr "" #: src/components/common/CronSelector.vue:44 #: src/views/monitor/IndexView.vue:650 #: src/views/monitor/IndexView.vue:704 #: src/views/monitor/IndexView.vue:756 #: src/views/monitor/IndexView.vue:812 #: src/views/monitor/IndexView.vue:879 #: src/views/project/CreateModal.vue:22 #: src/views/project/CreateModal.vue:33 #: src/views/project/CreateModal.vue:46 #: src/views/project/CreateModal.vue:58 msgid "Custom" msgstr "" #: src/components/common/CronSelector.vue:60 msgid "Month %{month}" msgstr "" #: src/components/common/CronSelector.vue:170 #: src/views/apps/nginx/NginxIndex.vue:745 #: src/views/website/EditView.vue:350 msgid "Minutes" msgstr "" #: src/components/common/CronSelector.vue:181 #: src/views/apps/nginx/NginxIndex.vue:746 #: src/views/website/EditView.vue:351 msgid "Hours" msgstr "" #: src/components/common/CronSelector.vue:192 msgid "Days" msgstr "" #: src/components/common/CronSelector.vue:211 msgid "Day" msgstr "" #: src/components/common/CronSelector.vue:230 msgid "Hour" msgstr "" #: src/components/common/CronSelector.vue:241 msgid "Minute" msgstr "" #: src/components/common/CronSelector.vue:248 msgid "Enter Cron expression" msgstr "" #: src/components/common/DeleteConfirm.vue:45 #: src/components/common/PtyTerminalModal.vue:195 #: src/components/common/PtyTerminalModal.vue:199 #: src/layout/header/components/UserAvatar.vue:29 #: src/views/app/TemplateDeployModal.vue:341 #: src/views/home/UpdateView.vue:26 #: src/views/monitor/IndexView.vue:600 #: src/views/toolbox/DiskView.vue:403 #: src/views/toolbox/DiskView.vue:405 #: src/views/toolbox/DiskView.vue:428 #: src/views/toolbox/DiskView.vue:430 #: src/views/toolbox/DiskView.vue:500 #: src/views/toolbox/DiskView.vue:504 #: src/views/toolbox/DiskView.vue:523 #: src/views/toolbox/DiskView.vue:542 #: src/views/toolbox/DiskView.vue:546 #: src/views/toolbox/DiskView.vue:567 #: src/views/toolbox/DiskView.vue:586 #: src/views/toolbox/DiskView.vue:594 #: src/views/toolbox/DiskView.vue:616 #: src/views/toolbox/DiskView.vue:635 #: src/views/toolbox/DiskView.vue:640 #: src/views/toolbox/DiskView.vue:663 #: src/views/toolbox/ProcessView.vue:236 #: src/views/toolbox/ProcessView.vue:241 msgid "Confirm" msgstr "" #: src/components/common/DeleteConfirm.vue:54 #: src/components/common/PtyTerminalModal.vue:200 #: src/components/file-editor/EditorPane.vue:126 #: src/components/file-editor/EditorToolbar.vue:101 #: src/components/file-editor/FileTree.vue:603 #: src/layout/header/components/UserAvatar.vue:30 #: src/views/app/TemplateDeployModal.vue:636 #: src/views/container/ContainerCreate.vue:536 #: src/views/container/ImagePullModal.vue:184 #: src/views/container/ImagePullModal.vue:198 #: src/views/container/ImageView.vue:351 #: src/views/container/ImageView.vue:366 #: src/views/file/ListView.vue:244 #: src/views/file/ListView.vue:737 #: src/views/file/ListView.vue:861 #: src/views/file/ToolBar.vue:124 #: src/views/file/ToolBar.vue:259 #: src/views/file/UploadModal.vue:335 #: src/views/file/UploadModal.vue:444 #: src/views/home/UpdateView.vue:27 #: src/views/project/EditModal.vue:572 #: src/views/toolbox/DiskView.vue:406 #: src/views/toolbox/DiskView.vue:431 #: src/views/toolbox/DiskView.vue:454 #: src/views/toolbox/DiskView.vue:480 #: src/views/toolbox/DiskView.vue:505 #: src/views/toolbox/DiskView.vue:524 #: src/views/toolbox/DiskView.vue:547 #: src/views/toolbox/DiskView.vue:568 #: src/views/toolbox/DiskView.vue:595 #: src/views/toolbox/DiskView.vue:617 #: src/views/toolbox/DiskView.vue:641 #: src/views/toolbox/DiskView.vue:664 #: src/views/toolbox/ProcessView.vue:242 msgid "Cancel" msgstr "" #: src/components/common/DraggableWindow.vue:260 msgid "Minimize" msgstr "" #: src/components/common/DraggableWindow.vue:266 #: src/views/backup/ListView.vue:78 msgid "Restore" msgstr "" #: src/components/common/DraggableWindow.vue:266 msgid "Maximize" msgstr "" #: src/components/common/DraggableWindow.vue:271 #: src/components/file-editor/EditorPane.vue:125 #: src/components/file-editor/EditorPane.vue:211 #: src/layout/tab/components/ContextMenu.vue:28 msgid "Close" msgstr "" #: src/components/common/FileEditor.vue:80 msgid "Retrieved successfully" msgstr "" #: src/components/common/FileEditor.vue:89 msgid "Cannot save in current state" msgstr "" #: src/components/common/FileEditor.vue:93 #: src/components/file-editor/EditorToolbar.vue:39 #: src/views/apps/apache/IndexView.vue:42 #: src/views/apps/codeserver/IndexView.vue:23 #: src/views/apps/docker/IndexView.vue:170 #: src/views/apps/docker/IndexView.vue:176 #: src/views/apps/fail2ban/IndexView.vue:160 #: src/views/apps/frp/IndexView.vue:36 #: src/views/apps/frp/IndexView.vue:44 #: src/views/apps/gitea/IndexView.vue:21 #: src/views/apps/memcached/IndexView.vue:43 #: src/views/apps/minio/IndexView.vue:21 #: src/views/apps/mysql/MysqlIndex.vue:48 #: src/views/apps/nginx/NginxIndex.vue:323 #: src/views/apps/nginx/NginxIndex.vue:382 #: src/views/apps/nginx/NginxIndex.vue:459 #: src/views/apps/phpmyadmin/IndexView.vue:36 #: src/views/apps/phpmyadmin/IndexView.vue:43 #: src/views/apps/podman/IndexView.vue:25 #: src/views/apps/podman/IndexView.vue:31 #: src/views/apps/postgresql/IndexView.vue:50 #: src/views/apps/postgresql/IndexView.vue:55 #: src/views/apps/pureftpd/IndexView.vue:115 #: src/views/apps/redis/IndexView.vue:40 #: src/views/apps/rsync/IndexView.vue:133 #: src/views/apps/rsync/IndexView.vue:177 #: src/views/apps/supervisor/IndexView.vue:219 #: src/views/apps/supervisor/IndexView.vue:284 #: src/views/environment/GoView.vue:52 #: src/views/environment/NodejsView.vue:55 #: src/views/environment/PHPView.vue:154 #: src/views/environment/PHPView.vue:160 #: src/views/environment/PythonView.vue:59 #: src/views/project/EditModal.vue:157 #: src/views/setting/IndexView.vue:56 #: src/views/toolbox/SystemView.vue:62 #: src/views/toolbox/SystemView.vue:68 #: src/views/toolbox/SystemView.vue:77 #: src/views/toolbox/SystemView.vue:86 #: src/views/toolbox/SystemView.vue:123 #: src/views/website/EditView.vue:128 msgid "Saved successfully" msgstr "" #: src/components/common/PathSelector.vue:27 msgid "Select Directory" msgstr "" #: src/components/common/PathSelector.vue:27 msgid "Select File" msgstr "" #: src/components/common/PathSelector.vue:49 #: src/components/common/PathSelector.vue:388 #: src/views/app/EnvironmentView.vue:27 #: src/views/apps/fail2ban/IndexView.vue:37 #: src/views/apps/nginx/NginxIndex.vue:147 #: src/views/apps/nginx/NginxIndex.vue:232 #: src/views/apps/nginx/NginxIndex.vue:572 #: src/views/apps/nginx/NginxIndex.vue:650 #: src/views/apps/rsync/IndexView.vue:39 #: src/views/apps/rsync/IndexView.vue:256 #: src/views/apps/supervisor/IndexView.vue:46 #: src/views/apps/supervisor/IndexView.vue:373 #: src/views/backup/StorageView.vue:60 #: src/views/backup/StorageView.vue:224 #: src/views/backup/StorageView.vue:378 #: src/views/container/ComposeView.vue:57 #: src/views/container/NetworkView.vue:45 #: src/views/container/VolumeView.vue:26 #: src/views/database/CreateServerModal.vue:55 #: src/views/database/ServerList.vue:68 #: src/views/database/UpdateServerModal.vue:55 #: src/views/file/ListView.vue:1368 #: src/views/file/PropertyModal.vue:27 #: src/views/file/ToolBar.vue:201 #: src/views/project/ListView.vue:35 #: src/views/ssh/CreateModal.vue:59 #: src/views/ssh/UpdateModal.vue:65 #: src/views/toolbox/LogView.vue:206 #: src/views/toolbox/ProcessView.vue:109 #: src/views/toolbox/ProcessView.vue:388 #: src/views/toolbox/WebHookView.vue:33 #: src/views/toolbox/WebHookView.vue:332 #: src/views/toolbox/WebHookView.vue:367 #: src/views/website/CreateModal.vue:123 #: src/views/website/EditView.vue:1301 msgid "Name" msgstr "" #: src/components/common/PathSelector.vue:88 msgid "Permissions" msgstr "" #: src/components/common/PathSelector.vue:100 #: src/views/file/ListView.vue:1379 msgid "Owner / Group" msgstr "" #: src/components/common/PathSelector.vue:112 #: src/views/backup/ListView.vue:45 #: src/views/container/ImageView.vue:74 #: src/views/file/ListView.vue:1375 #: src/views/file/PropertyModal.vue:39 #: src/views/file/ToolBar.vue:202 #: src/views/toolbox/DiskView.vue:275 #: src/views/toolbox/LogView.vue:207 msgid "Size" msgstr "" #: src/components/common/PathSelector.vue:147 #: src/views/file/ListView.vue:1518 msgid "Calculate" msgstr "" #: src/components/common/PathSelector.vue:152 #: src/views/file/ListView.vue:1384 #: src/views/file/PropertyModal.vue:51 #: src/views/file/ToolBar.vue:203 msgid "Modification Time" msgstr "" #: src/components/common/PathSelector.vue:186 #: src/views/file/ListView.vue:1230 #: src/views/file/PathInput.vue:30 msgid "Invalid path" msgstr "" #: src/components/common/PathSelector.vue:246 #: src/views/file/ListView.vue:131 #: src/views/file/ListView.vue:724 #: src/views/file/ToolBar.vue:36 msgid "Invalid name" msgstr "" #: src/components/common/PathSelector.vue:254 #: src/components/file-editor/FileTree.vue:284 #: src/views/app/TemplateDeployModal.vue:236 #: src/views/backup/ListView.vue:126 #: src/views/backup/StorageView.vue:151 #: src/views/cert/CreateAccountModal.vue:52 #: src/views/cert/CreateCertModal.vue:50 #: src/views/cert/CreateDnsModal.vue:35 #: src/views/cert/UploadCertModal.vue:21 #: src/views/container/ComposeView.vue:269 #: src/views/container/ContainerCreate.vue:107 #: src/views/container/NetworkView.vue:184 #: src/views/container/VolumeView.vue:137 #: src/views/database/CreateDatabaseModal.vue:39 #: src/views/database/CreateUserModal.vue:39 #: src/views/file/ListView.vue:140 #: src/views/firewall/CreateForwardModal.vue:41 #: src/views/setting/CreateModal.vue:19 #: src/views/setting/TokenModal.vue:125 #: src/views/ssh/CreateModal.vue:40 #: src/views/task/CreateModal.vue:52 #: src/views/toolbox/WebHookView.vue:258 msgid "Created successfully" msgstr "" #: src/components/common/PathSelector.vue:312 #: src/views/file/PropertyModal.vue:34 #: src/views/file/ToolBar.vue:225 msgid "File" msgstr "" #: src/components/common/PathSelector.vue:313 #: src/views/file/ToolBar.vue:226 msgid "Folder" msgstr "" #: src/components/common/PathSelector.vue:317 #: src/components/common/PathSelector.vue:380 #: src/views/app/TemplateDeployModal.vue:651 #: src/views/container/ContainerCreate.vue:539 #: src/views/project/CreateModal.vue:608 #: src/views/setting/TokenModal.vue:266 #: src/views/toolbox/WebHookView.vue:352 #: src/views/website/BulkCreateModal.vue:129 #: src/views/website/CreateModal.vue:264 msgid "Create" msgstr "" #: src/components/common/PathSelector.vue:326 #: src/views/file/PathInput.vue:146 msgid "Root Directory" msgstr "" #: src/components/common/PathSelector.vue:392 #: src/views/apps/fail2ban/IndexView.vue:368 #: src/views/apps/nginx/NginxIndex.vue:636 #: src/views/apps/nginx/NginxIndex.vue:755 #: src/views/apps/pureftpd/IndexView.vue:242 #: src/views/apps/pureftpd/IndexView.vue:264 #: src/views/apps/rsync/IndexView.vue:305 #: src/views/apps/s3fs/IndexView.vue:181 #: src/views/apps/supervisor/IndexView.vue:409 #: src/views/backup/ListView.vue:274 #: src/views/backup/ListView.vue:298 #: src/views/backup/StorageView.vue:363 #: src/views/backup/StorageView.vue:511 #: src/views/cert/AccountView.vue:268 #: src/views/cert/CertView.vue:524 #: src/views/cert/CertView.vue:548 #: src/views/cert/CreateAccountModal.vue:125 #: src/views/cert/CreateCertModal.vue:115 #: src/views/cert/CreateDnsModal.vue:173 #: src/views/cert/DnsView.vue:310 #: src/views/cert/ObtainModal.vue:130 #: src/views/cert/UploadCertModal.vue:55 #: src/views/container/ComposeView.vue:377 #: src/views/container/ComposeView.vue:403 #: src/views/container/ContainerView.vue:632 #: src/views/container/ImageView.vue:405 #: src/views/container/NetworkView.vue:331 #: src/views/container/VolumeView.vue:230 #: src/views/database/CreateDatabaseModal.vue:148 #: src/views/database/CreateServerModal.vue:120 #: src/views/database/CreateUserModal.vue:141 #: src/views/database/UpdateServerModal.vue:112 #: src/views/database/UpdateUserModal.vue:79 #: src/views/file/ToolBar.vue:299 #: src/views/firewall/CreateForwardModal.vue:88 #: src/views/firewall/CreateIpModal.vue:121 #: src/views/firewall/CreateModal.vue:155 #: src/views/setting/CreateModal.vue:64 #: src/views/setting/PasswordModal.vue:44 #: src/views/setting/TwoFaModal.vue:87 #: src/views/ssh/CreateModal.vue:109 #: src/views/ssh/UpdateModal.vue:115 #: src/views/task/CreateModal.vue:195 msgid "Submit" msgstr "" #: src/components/common/PtyTerminalModal.vue:118 #: src/views/container/ContainerView.vue:470 msgid "Connection closed." msgstr "" #: src/components/common/PtyTerminalModal.vue:127 #: src/views/container/ContainerView.vue:477 msgid "Connection error." msgstr "" #: src/components/common/PtyTerminalModal.vue:131 #: src/views/container/ImagePullModal.vue:87 #: src/views/container/ImageView.vue:234 msgid "Connection error" msgstr "" #: src/components/common/PtyTerminalModal.vue:136 #: src/views/container/ImagePullModal.vue:92 #: src/views/container/ImageView.vue:239 msgid "Failed to connect" msgstr "" #: src/components/common/PtyTerminalModal.vue:196 msgid "Command may still running. Closing the window will terminate the command. Are you sure?" msgstr "" #: src/components/common/PtyTerminalModal.vue:252 #: src/locales/menu.ts:19 #: src/views/container/ContainerView.vue:124 #: src/views/container/ContainerView.vue:637 #: src/views/database/ServerList.vue:177 #: src/views/file/ListView.vue:355 #: src/views/file/ListView.vue:995 #: src/views/file/ToolBar.vue:234 msgid "Terminal" msgstr "" #: src/components/common/RealtimeLog.vue:34 msgid "Path or service cannot be empty" msgstr "" #: src/components/common/RealtimeLog.vue:49 #: src/components/common/RealtimeLogModal.vue:38 msgid "Failed to get log stream" msgstr "" #: src/components/common/RealtimeLog.vue:91 #: src/components/common/RealtimeLogModal.vue:81 msgid "No logs available" msgstr "" #: src/components/common/RealtimeLogModal.vue:72 #: src/locales/menu.ts:15 #: src/views/apps/supervisor/IndexView.vue:89 #: src/views/container/ContainerView.vue:137 #: src/views/container/ContainerView.vue:605 #: src/views/project/ListView.vue:169 #: src/views/project/ListView.vue:337 #: src/views/task/CronView.vue:116 #: src/views/task/TaskView.vue:74 msgid "Logs" msgstr "" #: src/components/common/ServiceStatus.vue:25 #: src/views/home/IndexView.vue:770 #: src/views/home/IndexView.vue:778 #: src/views/home/IndexView.vue:785 #: src/views/home/IndexView.vue:791 #: src/views/home/IndexView.vue:802 #: src/views/home/IndexView.vue:814 msgid "Loading..." msgstr "" #: src/components/common/ServiceStatus.vue:26 #: src/views/project/ListView.vue:68 #: src/views/task/TaskView.vue:33 #: src/views/toolbox/ProcessView.vue:48 #: src/views/toolbox/ProcessView.vue:80 #: src/views/website/ListView.vue:29 msgid "Running" msgstr "" #: src/components/common/ServiceStatus.vue:26 #: src/views/project/ListView.vue:70 #: src/views/toolbox/ProcessView.vue:50 #: src/views/toolbox/ProcessView.vue:86 msgid "Stopped" msgstr "" #: src/components/common/ServiceStatus.vue:42 msgid "Starting..." msgstr "" #: src/components/common/ServiceStatus.vue:48 #: src/views/apps/supervisor/IndexView.vue:240 #: src/views/project/ListView.vue:228 #: src/views/website/ListView.vue:229 msgid "Started successfully" msgstr "" #: src/components/common/ServiceStatus.vue:57 #: src/views/container/ComposeView.vue:183 msgid "Stopping..." msgstr "" #: src/components/common/ServiceStatus.vue:63 #: src/views/apps/supervisor/IndexView.vue:247 #: src/views/project/ListView.vue:223 #: src/views/website/ListView.vue:231 msgid "Stopped successfully" msgstr "" #: src/components/common/ServiceStatus.vue:72 msgid "Restarting..." msgstr "" #: src/components/common/ServiceStatus.vue:78 #: src/views/apps/supervisor/IndexView.vue:254 #: src/views/project/ListView.vue:236 msgid "Restarted successfully" msgstr "" #: src/components/common/ServiceStatus.vue:87 msgid "Reloading..." msgstr "" #: src/components/common/ServiceStatus.vue:93 #: src/views/project/ListView.vue:243 msgid "Reloaded successfully" msgstr "" #: src/components/common/ServiceStatus.vue:102 msgid "Setting autostart..." msgstr "" #: src/components/common/ServiceStatus.vue:109 msgid "Autostart enabled successfully" msgstr "" #: src/components/common/ServiceStatus.vue:118 msgid "Autostart disabled successfully" msgstr "" #: src/components/common/ServiceStatus.vue:134 #: src/views/apps/apache/IndexView.vue:56 #: src/views/apps/codeserver/IndexView.vue:31 #: src/views/apps/docker/IndexView.vue:191 #: src/views/apps/fail2ban/IndexView.vue:228 #: src/views/apps/gitea/IndexView.vue:29 #: src/views/apps/memcached/IndexView.vue:51 #: src/views/apps/minio/IndexView.vue:29 #: src/views/apps/mysql/MysqlIndex.vue:80 #: src/views/apps/nginx/NginxIndex.vue:476 #: src/views/apps/podman/IndexView.vue:39 #: src/views/apps/postgresql/IndexView.vue:79 #: src/views/apps/pureftpd/IndexView.vue:158 #: src/views/apps/redis/IndexView.vue:48 #: src/views/apps/rsync/IndexView.vue:191 #: src/views/apps/supervisor/IndexView.vue:298 #: src/views/container/ContainerView.vue:102 #: src/views/environment/PHPView.vue:192 msgid "Running Status" msgstr "" #: src/components/common/ServiceStatus.vue:141 msgid "Autostart On" msgstr "" #: src/components/common/ServiceStatus.vue:142 msgid "Autostart Off" msgstr "" #: src/components/common/ServiceStatus.vue:151 #: src/views/apps/supervisor/IndexView.vue:115 #: src/views/container/ComposeView.vue:173 #: src/views/container/ContainerView.vue:161 #: src/views/container/ContainerView.vue:558 #: src/views/project/ListView.vue:128 msgid "Start" msgstr "" #: src/components/common/ServiceStatus.vue:156 #: src/views/apps/supervisor/IndexView.vue:140 #: src/views/container/ComposeView.vue:212 #: src/views/container/ContainerView.vue:166 #: src/views/container/ContainerView.vue:561 #: src/views/project/ListView.vue:128 msgid "Stop" msgstr "" #: src/components/common/ServiceStatus.vue:159 msgid "Are you sure you want to stop %{ service }?" msgstr "" #: src/components/common/ServiceStatus.vue:162 #: src/views/apps/supervisor/IndexView.vue:168 #: src/views/container/ContainerView.vue:171 #: src/views/container/ContainerView.vue:564 #: src/views/home/IndexView.vue:475 #: src/views/project/ListView.vue:144 msgid "Restart" msgstr "" #: src/components/common/ServiceStatus.vue:170 #: src/layout/tab/components/ContextMenu.vue:34 #: src/views/project/ListView.vue:155 msgid "Reload" msgstr "" #: src/components/file-editor/EditorPane.vue:123 #: src/components/file-editor/EditorToolbar.vue:98 msgid "Unsaved Changes" msgstr "" #: src/components/file-editor/EditorPane.vue:124 msgid "This file has unsaved changes. Are you sure you want to close it?" msgstr "" #: src/components/file-editor/EditorPane.vue:215 #: src/layout/tab/components/ContextMenu.vue:52 msgid "Close Others" msgstr "" #: src/components/file-editor/EditorPane.vue:219 msgid "Close All" msgstr "" #: src/components/file-editor/EditorPane.vue:223 msgid "Close Saved" msgstr "" #: src/components/file-editor/EditorPane.vue:427 msgid "Select a file to edit" msgstr "" #: src/components/file-editor/EditorStatusBar.vue:40 #: src/components/file-editor/EditorStatusBar.vue:41 #: src/components/file-editor/EditorStatusBar.vue:49 msgid "Spaces" msgstr "" #: src/components/file-editor/EditorStatusBar.vue:42 #: src/components/file-editor/EditorStatusBar.vue:43 #: src/components/file-editor/EditorStatusBar.vue:49 msgid "Tabs" msgstr "" #: src/components/file-editor/EditorStatusBar.vue:103 msgid "Ln" msgstr "" #: src/components/file-editor/EditorStatusBar.vue:103 msgid "Col" msgstr "" #: src/components/file-editor/EditorStatusBar.vue:122 #: src/views/setting/SettingBase.vue:117 msgid "Language" msgstr "" #: src/components/file-editor/EditorStatusBar.vue:127 msgid "No file open" msgstr "" #: src/components/file-editor/EditorToolbar.vue:26 msgid "No file to save" msgstr "" #: src/components/file-editor/EditorToolbar.vue:31 #: src/components/file-editor/EditorToolbar.vue:50 msgid "No changes to save" msgstr "" #: src/components/file-editor/EditorToolbar.vue:80 msgid "All files saved successfully" msgstr "" #: src/components/file-editor/EditorToolbar.vue:83 msgid "Saved %{ success } files, %{ fail } failed" msgstr "" #: src/components/file-editor/EditorToolbar.vue:99 msgid "This file has unsaved changes. Refreshing will discard them. Continue?" msgstr "" #: src/components/file-editor/EditorToolbar.vue:100 #: src/components/file-editor/EditorToolbar.vue:200 #: src/components/file-editor/EditorToolbar.vue:205 #: src/components/file-editor/FileTree.vue:695 #: src/views/log/DatabaseLog.vue:108 #: src/views/log/HttpLog.vue:133 #: src/views/log/OperationLog.vue:106 #: src/views/toolbox/ProcessView.vue:329 msgid "Refresh" msgstr "" #: src/components/file-editor/EditorToolbar.vue:117 msgid "Refreshed successfully" msgstr "" #: src/components/file-editor/EditorToolbar.vue:179 msgid "Save (Ctrl+S)" msgstr "" #: src/components/file-editor/EditorToolbar.vue:184 #: src/views/apps/apache/IndexView.vue:72 #: src/views/apps/codeserver/IndexView.vue:46 #: src/views/apps/docker/IndexView.vue:458 #: src/views/apps/docker/IndexView.vue:472 #: src/views/apps/frp/IndexView.vue:63 #: src/views/apps/frp/IndexView.vue:78 #: src/views/apps/frp/IndexView.vue:91 #: src/views/apps/frp/IndexView.vue:106 #: src/views/apps/gitea/IndexView.vue:44 #: src/views/apps/memcached/IndexView.vue:59 #: src/views/apps/minio/IndexView.vue:44 #: src/views/apps/mysql/MysqlIndex.vue:100 #: src/views/apps/mysql/MysqlIndex.vue:120 #: src/views/apps/nginx/NginxIndex.vue:492 #: src/views/apps/phpmyadmin/IndexView.vue:66 #: src/views/apps/phpmyadmin/IndexView.vue:85 #: src/views/apps/podman/IndexView.vue:63 #: src/views/apps/podman/IndexView.vue:80 #: src/views/apps/postgresql/IndexView.vue:103 #: src/views/apps/postgresql/IndexView.vue:122 #: src/views/apps/postgresql/IndexView.vue:139 #: src/views/apps/pureftpd/IndexView.vue:165 #: src/views/apps/redis/IndexView.vue:63 #: src/views/apps/rsync/IndexView.vue:235 #: src/views/apps/supervisor/IndexView.vue:342 #: src/views/environment/GoView.vue:90 #: src/views/environment/NodejsView.vue:93 #: src/views/environment/PHPView.vue:238 #: src/views/environment/PHPView.vue:256 #: src/views/environment/PythonView.vue:97 #: src/views/project/EditModal.vue:575 #: src/views/setting/IndexView.vue:107 #: src/views/task/CronView.vue:259 #: src/views/toolbox/SshView.vue:239 #: src/views/toolbox/SystemView.vue:152 #: src/views/toolbox/SystemView.vue:176 #: src/views/toolbox/SystemView.vue:194 #: src/views/toolbox/SystemView.vue:232 #: src/views/toolbox/SystemView.vue:304 #: src/views/toolbox/WebHookView.vue:390 #: src/views/website/EditView.vue:1366 msgid "Save" msgstr "" #: src/components/file-editor/EditorToolbar.vue:190 msgid "Save All (Ctrl+Shift+S)" msgstr "" #: src/components/file-editor/EditorToolbar.vue:195 msgid "Save All" msgstr "" #: src/components/file-editor/EditorToolbar.vue:216 msgid "Search (Ctrl+F)" msgstr "" #: src/components/file-editor/EditorToolbar.vue:221 #: src/components/file-editor/FileTree.vue:717 msgid "Search" msgstr "" #: src/components/file-editor/EditorToolbar.vue:226 msgid "Replace (Ctrl+H)" msgstr "" #: src/components/file-editor/EditorToolbar.vue:231 msgid "Replace" msgstr "" #: src/components/file-editor/EditorToolbar.vue:236 msgid "Go to Line (Ctrl+G)" msgstr "" #: src/components/file-editor/EditorToolbar.vue:241 msgid "Go to" msgstr "" #: src/components/file-editor/EditorToolbar.vue:270 msgid "Toggle Word Wrap" msgstr "" #: src/components/file-editor/EditorToolbar.vue:281 msgid "Toggle Minimap" msgstr "" #: src/components/file-editor/EditorToolbar.vue:291 #: src/views/firewall/IndexView.vue:23 #: src/views/website/IndexView.vue:24 msgid "Settings" msgstr "" #: src/components/file-editor/FileEditorView.vue:141 msgid "Editor Settings" msgstr "" #: src/components/file-editor/FileEditorView.vue:145 #: src/views/setting/IndexView.vue:91 msgid "Basic" msgstr "" #: src/components/file-editor/FileEditorView.vue:147 msgid "Tab Size" msgstr "" #: src/components/file-editor/FileEditorView.vue:155 msgid "Use Spaces" msgstr "" #: src/components/file-editor/FileEditorView.vue:161 msgid "Font Size" msgstr "" #: src/components/file-editor/FileEditorView.vue:169 msgid "Word Wrap" msgstr "" #: src/components/file-editor/FileEditorView.vue:173 #: src/components/file-editor/FileEditorView.vue:196 msgid "Off" msgstr "" #: src/components/file-editor/FileEditorView.vue:174 #: src/components/file-editor/FileEditorView.vue:195 msgid "On" msgstr "" #: src/components/file-editor/FileEditorView.vue:175 msgid "Word Wrap Column" msgstr "" #: src/components/file-editor/FileEditorView.vue:176 msgid "Bounded" msgstr "" #: src/components/file-editor/FileEditorView.vue:181 msgid "Show Minimap" msgstr "" #: src/components/file-editor/FileEditorView.vue:189 msgid "Display" msgstr "" #: src/components/file-editor/FileEditorView.vue:191 msgid "Line Numbers" msgstr "" #: src/components/file-editor/FileEditorView.vue:197 msgid "Relative" msgstr "" #: src/components/file-editor/FileEditorView.vue:198 msgid "Interval" msgstr "" #: src/components/file-editor/FileEditorView.vue:203 msgid "Render Whitespace" msgstr "" #: src/components/file-editor/FileEditorView.vue:207 #: src/views/apps/docker/IndexView.vue:83 #: src/views/cert/CertView.vue:69 #: src/views/cert/CertView.vue:123 #: src/views/cert/CertView.vue:134 #: src/views/cert/CertView.vue:152 #: src/views/container/ContainerCreate.vue:51 #: src/views/database/ServerList.vue:80 #: src/views/database/ServerList.vue:95 #: src/views/database/UserList.vue:46 #: src/views/database/UserList.vue:86 #: src/views/firewall/ForwardView.vue:25 #: src/views/firewall/IpRuleView.vue:25 #: src/views/firewall/IpRuleView.vue:42 #: src/views/firewall/RuleView.vue:25 #: src/views/firewall/RuleView.vue:42 msgid "None" msgstr "" #: src/components/file-editor/FileEditorView.vue:208 msgid "Boundary" msgstr "" #: src/components/file-editor/FileEditorView.vue:209 msgid "Selection" msgstr "" #: src/components/file-editor/FileEditorView.vue:210 msgid "Trailing" msgstr "" #: src/components/file-editor/FileEditorView.vue:211 #: src/views/app/AppView.vue:229 #: src/views/app/EnvironmentView.vue:217 #: src/views/app/TemplateView.vue:72 #: src/views/firewall/RuleView.vue:150 #: src/views/project/IndexView.vue:21 msgid "All" msgstr "" #: src/components/file-editor/FileEditorView.vue:216 msgid "Bracket Colorization" msgstr "" #: src/components/file-editor/FileEditorView.vue:222 msgid "Indent Guides" msgstr "" #: src/components/file-editor/FileEditorView.vue:228 msgid "Code Folding" msgstr "" #: src/components/file-editor/FileEditorView.vue:236 msgid "Cursor" msgstr "" #: src/components/file-editor/FileEditorView.vue:238 msgid "Cursor Style" msgstr "" #: src/components/file-editor/FileEditorView.vue:242 msgid "Line" msgstr "" #: src/components/file-editor/FileEditorView.vue:243 msgid "Block" msgstr "" #: src/components/file-editor/FileEditorView.vue:244 msgid "Underline" msgstr "" #: src/components/file-editor/FileEditorView.vue:245 msgid "Line Thin" msgstr "" #: src/components/file-editor/FileEditorView.vue:246 msgid "Block Outline" msgstr "" #: src/components/file-editor/FileEditorView.vue:247 msgid "Underline Thin" msgstr "" #: src/components/file-editor/FileEditorView.vue:252 msgid "Cursor Blinking" msgstr "" #: src/components/file-editor/FileEditorView.vue:256 msgid "Blink" msgstr "" #: src/components/file-editor/FileEditorView.vue:257 msgid "Smooth" msgstr "" #: src/components/file-editor/FileEditorView.vue:258 msgid "Phase" msgstr "" #: src/components/file-editor/FileEditorView.vue:259 msgid "Expand" msgstr "" #: src/components/file-editor/FileEditorView.vue:260 msgid "Solid" msgstr "" #: src/components/file-editor/FileEditorView.vue:265 msgid "Smooth Scrolling" msgstr "" #: src/components/file-editor/FileEditorView.vue:273 msgid "Behavior" msgstr "" #: src/components/file-editor/FileEditorView.vue:275 msgid "Mouse Wheel Zoom" msgstr "" #: src/components/file-editor/FileEditorView.vue:281 msgid "Format On Paste" msgstr "" #: src/components/file-editor/FileEditorView.vue:287 msgid "Format On Type" msgstr "" #: src/components/file-editor/FileTree.vue:154 #: src/views/file/EditModal.vue:50 msgid "Failed to load file" msgstr "" #: src/components/file-editor/FileTree.vue:309 msgid "Failed to create" msgstr "" #: src/components/file-editor/FileTree.vue:378 #: src/views/file/ListView.vue:1405 #: src/views/file/ListView.vue:1426 msgid "Folder name" msgstr "" #: src/components/file-editor/FileTree.vue:378 #: src/views/file/ListView.vue:1405 #: src/views/file/ListView.vue:1426 msgid "File name" msgstr "" #: src/components/file-editor/FileTree.vue:477 #: src/views/container/ContainerView.vue:153 #: src/views/container/ContainerView.vue:616 #: src/views/file/ListView.vue:353 #: src/views/file/ListView.vue:1574 msgid "Rename" msgstr "" #: src/components/file-editor/FileTree.vue:478 #: src/components/file-editor/FileTree.vue:600 #: src/components/file-editor/FileTree.vue:602 #: src/views/apps/fail2ban/IndexView.vue:98 #: src/views/apps/nginx/NginxIndex.vue:218 #: src/views/apps/nginx/NginxIndex.vue:294 #: src/views/apps/nginx/NginxIndex.vue:709 #: src/views/apps/pureftpd/IndexView.vue:88 #: src/views/apps/rsync/IndexView.vue:105 #: src/views/apps/supervisor/IndexView.vue:195 #: src/views/backup/ListView.vue:99 #: src/views/backup/StorageView.vue:126 #: src/views/cert/AccountView.vue:127 #: src/views/cert/CertView.vue:303 #: src/views/cert/DnsView.vue:111 #: src/views/container/ComposeView.vue:243 #: src/views/container/ComposeView.vue:323 #: src/views/container/ContainerView.vue:191 #: src/views/container/ContainerView.vue:576 #: src/views/container/ImageView.vue:115 #: src/views/container/ImageView.vue:275 #: src/views/container/NetworkView.vue:135 #: src/views/container/NetworkView.vue:209 #: src/views/container/VolumeView.vue:88 #: src/views/container/VolumeView.vue:162 #: src/views/database/DatabaseList.vue:102 #: src/views/database/ServerList.vue:255 #: src/views/database/UserList.vue:190 #: src/views/environment/PHPView.vue:106 #: src/views/file/ListView.vue:310 #: src/views/file/ListView.vue:360 #: src/views/file/ListView.vue:1579 #: src/views/file/ToolBar.vue:272 #: src/views/firewall/ForwardView.vue:103 #: src/views/firewall/IpRuleView.vue:145 #: src/views/firewall/RuleView.vue:182 #: src/views/project/ListView.vue:198 #: src/views/project/ListView.vue:306 #: src/views/setting/SettingUser.vue:139 #: src/views/setting/TokenModal.vue:91 #: src/views/ssh/IndexView.vue:91 #: src/views/task/CronView.vue:149 #: src/views/task/TaskView.vue:97 #: src/views/toolbox/WebHookView.vue:179 #: src/views/website/ListView.vue:196 #: src/views/website/ListView.vue:290 msgid "Delete" msgstr "" #: src/components/file-editor/FileTree.vue:481 #: src/views/file/ListView.vue:344 #: src/views/file/ListView.vue:1569 #: src/views/monitor/IndexView.vue:498 #: src/views/toolbox/SshView.vue:301 msgid "Download" msgstr "" #: src/components/file-editor/FileTree.vue:565 msgid "Renamed successfully" msgstr "" #: src/components/file-editor/FileTree.vue:590 msgid "Failed to rename" msgstr "" #: src/components/file-editor/FileTree.vue:601 #: src/views/apps/nginx/NginxIndex.vue:207 #: src/views/apps/nginx/NginxIndex.vue:283 #: src/views/file/ListView.vue:1582 msgid "Are you sure you want to delete %{ name }?" msgstr "" #: src/components/file-editor/FileTree.vue:607 #: src/views/apps/fail2ban/IndexView.vue:196 #: src/views/apps/nginx/NginxIndex.vue:390 #: src/views/apps/nginx/NginxIndex.vue:467 #: src/views/apps/pureftpd/IndexView.vue:145 #: src/views/apps/rsync/IndexView.vue:158 #: src/views/apps/s3fs/IndexView.vue:89 #: src/views/apps/supervisor/IndexView.vue:261 #: src/views/backup/ListView.vue:148 #: src/views/backup/StorageView.vue:176 #: src/views/container/ImageView.vue:156 #: src/views/container/NetworkView.vue:176 #: src/views/container/VolumeView.vue:129 #: src/views/database/DatabaseList.vue:126 #: src/views/database/ServerList.vue:279 #: src/views/database/UserList.vue:214 #: src/views/file/ListView.vue:792 #: src/views/file/ListView.vue:812 #: src/views/file/ToolBar.vue:169 #: src/views/firewall/ForwardView.vue:129 #: src/views/firewall/ForwardView.vue:147 #: src/views/firewall/IpRuleView.vue:171 #: src/views/firewall/IpRuleView.vue:189 #: src/views/firewall/RuleView.vue:208 #: src/views/firewall/RuleView.vue:226 #: src/views/project/ListView.vue:274 #: src/views/project/ListView.vue:284 #: src/views/setting/SettingUser.vue:174 #: src/views/setting/TokenModal.vue:114 #: src/views/task/CronView.vue:191 #: src/views/task/TaskView.vue:122 #: src/views/toolbox/WebHookView.vue:236 #: src/views/website/ListView.vue:255 #: src/views/website/ListView.vue:265 msgid "Deleted successfully" msgstr "" #: src/components/file-editor/FileTree.vue:626 msgid "Failed to delete" msgstr "" #: src/components/file-editor/FileTree.vue:690 msgid "Go Up" msgstr "" #: src/components/file-editor/FileTree.vue:702 #: src/views/file/ListView.vue:291 msgid "New File" msgstr "" #: src/components/file-editor/FileTree.vue:703 #: src/views/file/ListView.vue:292 msgid "New Folder" msgstr "" #: src/components/file-editor/FileTree.vue:707 #: src/views/file/ToolBar.vue:230 msgid "New" msgstr "" #: src/components/file-editor/FileTree.vue:740 msgid "Enter path" msgstr "" #: src/components/file-editor/FileTree.vue:770 msgid "No results found" msgstr "" #: src/components/file-editor/FileTree.vue:795 msgid "No data" msgstr "" #: src/layout/header/components/FullScreen.vue:16 msgid "Fullscreen Display" msgstr "" #: src/layout/header/components/MenuCollapse.vue:17 msgid "Menu Zoom" msgstr "" #: src/layout/header/components/ReloadPage.vue:20 msgid "Refresh Tab" msgstr "" #: src/layout/header/components/TaskStatus.vue:23 msgid "Tasks Running" msgstr "" #: src/layout/header/components/TaskStatus.vue:23 #: src/views/task/IndexView.vue:24 msgid "Panel Tasks" msgstr "" #: src/layout/header/components/ThemeMode.vue:17 msgid "Switch Theme" msgstr "" #: src/layout/header/components/UserAvatar.vue:13 #: src/views/apps/pureftpd/IndexView.vue:65 #: src/views/apps/pureftpd/IndexView.vue:249 #: src/views/setting/PasswordModal.vue:26 #: src/views/setting/SettingUser.vue:117 msgid "Change Password" msgstr "" #: src/layout/header/components/UserAvatar.vue:18 msgid "Logout" msgstr "" #: src/layout/header/components/UserAvatar.vue:27 msgid "Confirm logout?" msgstr "" #: src/layout/header/components/UserAvatar.vue:28 msgid "Prompt" msgstr "" #: src/layout/header/components/UserAvatar.vue:35 msgid "Logged out successfully!" msgstr "" #: src/layout/header/components/UserAvatar.vue:48 #: src/views/cert/DnsView.vue:56 #: src/views/firewall/IpRuleView.vue:76 #: src/views/firewall/IpRuleView.vue:101 #: src/views/firewall/RuleView.vue:110 #: src/views/firewall/RuleView.vue:135 #: src/views/toolbox/DiskView.vue:172 msgid "Unknown" msgstr "" #: src/layout/tab/components/ContextMenu.vue:40 msgid "Pin" msgstr "" #: src/layout/tab/components/ContextMenu.vue:46 msgid "Unpin" msgstr "" #: src/layout/tab/components/ContextMenu.vue:58 msgid "Close Left" msgstr "" #: src/layout/tab/components/ContextMenu.vue:64 msgid "Close Right" msgstr "" #: src/locales/menu.ts:7 msgid "Apps" msgstr "" #: src/locales/menu.ts:8 #: src/views/task/CreateModal.vue:79 msgid "Backup" msgstr "" #: src/locales/menu.ts:9 #: src/views/cert/CertView.vue:486 #: src/views/cert/CertView.vue:563 #: src/views/cert/IndexView.vue:96 #: src/views/cert/UploadCertModal.vue:38 #: src/views/setting/SettingSafe.vue:290 #: src/views/website/EditView.vue:999 msgid "Certificate" msgstr "" #: src/locales/menu.ts:10 msgid "Container" msgstr "" #: src/locales/menu.ts:11 #: src/views/backup/ListView.vue:294 #: src/views/database/IndexView.vue:27 #: src/views/home/IndexView.vue:453 #: src/views/website/CreateModal.vue:170 msgid "Database" msgstr "" #: src/locales/menu.ts:12 msgid "Files" msgstr "" #: src/locales/menu.ts:13 msgid "Firewall" msgstr "" #: src/locales/menu.ts:14 msgid "Home" msgstr "" #: src/locales/menu.ts:16 msgid "Monitoring" msgstr "" #: src/locales/menu.ts:17 #: src/views/home/IndexView.vue:458 msgid "Project" msgstr "" #: src/locales/menu.ts:18 msgid "Setting" msgstr "" #: src/locales/menu.ts:20 msgid "Task" msgstr "" #: src/locales/menu.ts:21 msgid "Toolbox" msgstr "" #: src/locales/menu.ts:22 #: src/views/app/AppView.vue:93 #: src/views/app/EnvironmentView.vue:78 #: src/views/app/TemplateDeployModal.vue:651 #: src/views/home/IndexView.vue:479 #: src/views/setting/TokenModal.vue:299 msgid "Update" msgstr "" #: src/locales/menu.ts:23 #: src/views/apps/fail2ban/IndexView.vue:315 #: src/views/backup/IndexView.vue:38 #: src/views/backup/ListView.vue:251 #: src/views/backup/ListView.vue:287 #: src/views/cert/CertView.vue:455 #: src/views/cert/CertView.vue:538 #: src/views/cert/CreateCertModal.vue:90 #: src/views/home/IndexView.vue:449 #: src/views/task/CreateModal.vue:155 msgid "Website" msgstr "" #: src/locales/menu.ts:24 msgid "Website Edit" msgstr "" #: src/locales/menu.ts:26 msgid "Fail2ban Manager" msgstr "" #: src/locales/menu.ts:27 msgid "S3fs Manager" msgstr "" #: src/locales/menu.ts:28 msgid "Supervisor Manager" msgstr "" #: src/locales/menu.ts:29 msgid "Rsync Manager" msgstr "" #: src/locales/menu.ts:30 msgid "Frp Manager" msgstr "" #: src/router/routes/index.ts:18 #: src/views/login/IndexView.vue:222 msgid "Login" msgstr "" #: src/views/app/AppView.vue:17 #: src/views/app/AppView.vue:152 #: src/views/app/AppView.vue:157 #: src/views/app/EnvironmentView.vue:145 #: src/views/environment/PHPView.vue:79 msgid "Install" msgstr "" #: src/views/app/AppView.vue:34 msgid "App Name" msgstr "" #: src/views/app/AppView.vue:40 #: src/views/app/EnvironmentView.vue:33 #: src/views/environment/PHPView.vue:48 #: src/views/project/EditModal.vue:188 #: src/views/project/ListView.vue:42 msgid "Description" msgstr "" #: src/views/app/AppView.vue:46 #: src/views/app/EnvironmentView.vue:45 msgid "Installed Version" msgstr "" #: src/views/app/AppView.vue:52 msgid "Show in Home" msgstr "" #: src/views/app/AppView.vue:65 #: src/views/app/EnvironmentView.vue:51 #: src/views/apps/fail2ban/IndexView.vue:59 #: src/views/apps/fail2ban/IndexView.vue:118 #: src/views/apps/nginx/NginxIndex.vue:184 #: src/views/apps/nginx/NginxIndex.vue:260 #: src/views/apps/nginx/NginxIndex.vue:696 #: src/views/apps/pureftpd/IndexView.vue:46 #: src/views/apps/rsync/IndexView.vue:68 #: src/views/apps/s3fs/IndexView.vue:32 #: src/views/apps/supervisor/IndexView.vue:74 #: src/views/backup/ListView.vue:60 #: src/views/backup/StorageView.vue:89 #: src/views/cert/AccountView.vue:79 #: src/views/cert/CertView.vue:170 #: src/views/cert/DnsView.vue:64 #: src/views/container/ComposeView.vue:100 #: src/views/container/ContainerView.vue:109 #: src/views/container/ImageView.vue:90 #: src/views/container/NetworkView.vue:109 #: src/views/container/VolumeView.vue:63 #: src/views/database/DatabaseList.vue:78 #: src/views/database/ServerList.vue:163 #: src/views/database/UserList.vue:152 #: src/views/environment/PHPView.vue:55 #: src/views/file/ListView.vue:1387 #: src/views/firewall/ForwardView.vue:79 #: src/views/firewall/IpRuleView.vue:121 #: src/views/firewall/RuleView.vue:158 #: src/views/project/ListView.vue:115 #: src/views/setting/SettingUser.vue:85 #: src/views/setting/TokenModal.vue:52 #: src/views/task/CronView.vue:98 #: src/views/task/TaskView.vue:55 #: src/views/toolbox/DiskView.vue:340 #: src/views/toolbox/DiskView.vue:826 #: src/views/toolbox/WebHookView.vue:131 #: src/views/website/ListView.vue:124 msgid "Actions" msgstr "" #: src/views/app/AppView.vue:80 msgid "Updating app %{ app } may reset related configurations to default state, are you sure to continue?" msgstr "" #: src/views/app/AppView.vue:109 #: src/views/app/EnvironmentView.vue:94 msgid "Manage" msgstr "" #: src/views/app/AppView.vue:123 msgid "Reinstalling/Switching to a different web server will reset the configuration of all websites, are you sure to continue?" msgstr "" #: src/views/app/AppView.vue:127 msgid "Are you sure to uninstall app %{ app }?" msgstr "" #: src/views/app/AppView.vue:137 #: src/views/app/EnvironmentView.vue:118 msgid "Uninstall" msgstr "" #: src/views/app/AppView.vue:191 msgid "Setup successfully" msgstr "" #: src/views/app/AppView.vue:198 #: src/views/app/AppView.vue:206 #: src/views/app/EnvironmentView.vue:178 #: src/views/app/EnvironmentView.vue:186 #: src/views/app/EnvironmentView.vue:194 #: src/views/app/VersionModal.vue:34 msgid "Task submitted, please check the progress in background tasks" msgstr "" #: src/views/app/EnvironmentView.vue:39 msgid "Latest Version" msgstr "" #: src/views/app/EnvironmentView.vue:66 msgid "Are you sure to update environment %{ environment }?" msgstr "" #: src/views/app/EnvironmentView.vue:106 msgid "Are you sure to uninstall environment %{ environment }?" msgstr "" #: src/views/app/EnvironmentView.vue:133 msgid "Are you sure to install environment %{ environment }?" msgstr "" #: src/views/app/IndexView.vue:22 msgid "Cache updated successfully" msgstr "" #: src/views/app/IndexView.vue:33 msgid "Native App" msgstr "" #: src/views/app/IndexView.vue:34 msgid "Operating Environment" msgstr "" #: src/views/app/IndexView.vue:35 msgid "Container Template" msgstr "" #: src/views/app/IndexView.vue:38 msgid "Update Cache" msgstr "" #: src/views/app/TemplateDeployModal.vue:83 msgid "Please enter URL" msgstr "" #: src/views/app/TemplateDeployModal.vue:88 msgid "Please enter a valid URL" msgstr "" #: src/views/app/TemplateDeployModal.vue:99 msgid "This field is required" msgstr "" #: src/views/app/TemplateDeployModal.vue:183 msgid "Please enter compose name" msgstr "" #: src/views/app/TemplateDeployModal.vue:198 msgid "Please select a compose" msgstr "" #: src/views/app/TemplateDeployModal.vue:257 #: src/views/cert/AccountView.vue:162 #: src/views/cert/CertView.vue:337 #: src/views/cert/CertView.vue:354 #: src/views/cert/DnsView.vue:139 #: src/views/container/ComposeView.vue:287 msgid "Update successful" msgstr "" #: src/views/app/TemplateDeployModal.vue:327 msgid "Deploy Template" msgstr "" #: src/views/app/TemplateDeployModal.vue:338 #: src/views/app/TemplateDeployModal.vue:595 msgid "Deploy Mode" msgstr "" #: src/views/app/TemplateDeployModal.vue:339 msgid "Configuration" msgstr "" #: src/views/app/TemplateDeployModal.vue:340 msgid "Preview & Edit" msgstr "" #: src/views/app/TemplateDeployModal.vue:354 msgid "Create New Compose" msgstr "" #: src/views/app/TemplateDeployModal.vue:356 msgid "Create a new compose from this template" msgstr "" #: src/views/app/TemplateDeployModal.vue:371 msgid "Update Existing Compose" msgstr "" #: src/views/app/TemplateDeployModal.vue:374 msgid "Update an existing compose with this template" msgstr "" #: src/views/app/TemplateDeployModal.vue:392 #: src/views/app/TemplateDeployModal.vue:600 #: src/views/container/ComposeView.vue:361 msgid "Compose Name" msgstr "" #: src/views/app/TemplateDeployModal.vue:397 msgid "Enter compose name" msgstr "" #: src/views/app/TemplateDeployModal.vue:401 #: src/views/app/TemplateDeployModal.vue:491 msgid "Deploy Options" msgstr "" #: src/views/app/TemplateDeployModal.vue:405 #: src/views/app/TemplateDeployModal.vue:495 #: src/views/app/TemplateDeployModal.vue:603 msgid "Auto Start" msgstr "" #: src/views/app/TemplateDeployModal.vue:410 #: src/views/app/TemplateDeployModal.vue:608 msgid "Auto Firewall" msgstr "" #: src/views/app/TemplateDeployModal.vue:413 msgid "Automatically allow ports defined in compose" msgstr "" #: src/views/app/TemplateDeployModal.vue:421 #: src/views/app/TemplateDeployModal.vue:503 #: src/views/app/TemplateDeployModal.vue:581 #: src/views/app/TemplateDeployModal.vue:613 #: src/views/apps/minio/IndexView.vue:32 #: src/views/container/ComposeView.vue:367 #: src/views/container/ComposeView.vue:393 #: src/views/container/ContainerCreate.vue:454 #: src/views/project/EditModal.vue:373 #: src/views/toolbox/ProcessView.vue:440 msgid "Environment Variables" msgstr "" #: src/views/app/TemplateDeployModal.vue:435 #: src/views/app/TemplateDeployModal.vue:517 msgid "Select value" msgstr "" #: src/views/app/TemplateDeployModal.vue:480 msgid "Select Compose" msgstr "" #: src/views/app/TemplateDeployModal.vue:485 msgid "Select a compose to update" msgstr "" #: src/views/app/TemplateDeployModal.vue:557 msgid "Compose File" msgstr "" #: src/views/app/TemplateDeployModal.vue:566 msgid "Left side shows the original compose, right side shows the new compose. You can edit the right side." msgstr "" #: src/views/app/TemplateDeployModal.vue:585 #: src/views/container/ComposeView.vue:371 #: src/views/container/ComposeView.vue:397 msgid "Variable Name" msgstr "" #: src/views/app/TemplateDeployModal.vue:586 #: src/views/container/ComposeView.vue:372 #: src/views/container/ComposeView.vue:398 msgid "Variable Value" msgstr "" #: src/views/app/TemplateDeployModal.vue:597 msgid "Create New" msgstr "" #: src/views/app/TemplateDeployModal.vue:597 msgid "Update Existing" msgstr "" #: src/views/app/TemplateDeployModal.vue:605 #: src/views/app/TemplateDeployModal.vue:610 #: src/views/apps/nginx/NginxIndex.vue:180 #: src/views/file/ListView.vue:806 #: src/views/file/PropertyModal.vue:55 #: src/views/file/PropertyModal.vue:59 #: src/views/toolbox/WebHookView.vue:81 msgid "Yes" msgstr "" #: src/views/app/TemplateDeployModal.vue:605 #: src/views/app/TemplateDeployModal.vue:610 #: src/views/apps/nginx/NginxIndex.vue:180 #: src/views/file/ListView.vue:807 #: src/views/file/PropertyModal.vue:55 #: src/views/file/PropertyModal.vue:59 #: src/views/toolbox/WebHookView.vue:81 msgid "No" msgstr "" #: src/views/app/TemplateDeployModal.vue:614 msgid "variables" msgstr "" #: src/views/app/TemplateDeployModal.vue:621 msgid "Compose Content" msgstr "" #: src/views/app/TemplateDeployModal.vue:630 msgid "Previous" msgstr "" #: src/views/app/TemplateDeployModal.vue:639 #: src/views/app/TemplateDeployModal.vue:642 msgid "Next" msgstr "" #: src/views/app/TemplateDeployModal.vue:661 #: src/views/container/ComposeView.vue:408 msgid "Starting Compose" msgstr "" #: src/views/app/TemplateView.vue:127 #: src/views/cert/CertView.vue:208 msgid "Deploy" msgstr "" #: src/views/app/VersionModal.vue:79 msgid "Channel" msgstr "" #: src/views/app/VersionModal.vue:86 msgid "Version" msgstr "" #: src/views/app/VersionModal.vue:89 msgid "Please select a channel" msgstr "" #: src/views/app/VersionModal.vue:94 msgid "Release Log" msgstr "" #: src/views/apps/apache/IndexView.vue:26 #: src/views/apps/memcached/IndexView.vue:17 #: src/views/apps/mysql/MysqlIndex.vue:32 #: src/views/apps/nginx/NginxIndex.vue:130 #: src/views/apps/postgresql/IndexView.vue:34 #: src/views/apps/redis/IndexView.vue:24 #: src/views/environment/PHPView.vue:120 msgid "Property" msgstr "" #: src/views/apps/apache/IndexView.vue:33 #: src/views/apps/memcached/IndexView.vue:24 #: src/views/apps/mysql/MysqlIndex.vue:39 #: src/views/apps/nginx/NginxIndex.vue:137 #: src/views/apps/postgresql/IndexView.vue:41 #: src/views/apps/redis/IndexView.vue:31 #: src/views/environment/PHPView.vue:127 msgid "Current Value" msgstr "" #: src/views/apps/apache/IndexView.vue:48 #: src/views/apps/mysql/MysqlIndex.vue:54 #: src/views/apps/mysql/MysqlIndex.vue:60 #: src/views/apps/nginx/NginxIndex.vue:329 #: src/views/apps/postgresql/IndexView.vue:60 #: src/views/apps/supervisor/IndexView.vue:225 #: src/views/environment/PHPView.vue:166 #: src/views/environment/PHPView.vue:172 #: src/views/website/EditView.vue:173 msgid "Cleared successfully" msgstr "" #: src/views/apps/apache/IndexView.vue:59 #: src/views/apps/codeserver/IndexView.vue:34 #: src/views/apps/frp/IndexView.vue:75 #: src/views/apps/frp/IndexView.vue:103 #: src/views/apps/gitea/IndexView.vue:32 #: src/views/apps/mysql/MysqlIndex.vue:107 #: src/views/apps/nginx/NginxIndex.vue:479 #: src/views/apps/phpmyadmin/IndexView.vue:73 msgid "Modify Configuration" msgstr "" #: src/views/apps/apache/IndexView.vue:63 #: src/views/apps/nginx/NginxIndex.vue:483 msgid "This modifies the %{name} main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/apache/IndexView.vue:77 #: src/views/apps/memcached/IndexView.vue:64 #: src/views/apps/mysql/MysqlIndex.vue:125 #: src/views/apps/nginx/NginxIndex.vue:535 #: src/views/apps/postgresql/IndexView.vue:144 #: src/views/apps/redis/IndexView.vue:68 #: src/views/environment/PHPView.vue:261 #: src/views/home/IndexView.vue:490 msgid "Load Status" msgstr "" #: src/views/apps/apache/IndexView.vue:87 #: src/views/apps/codeserver/IndexView.vue:51 #: src/views/apps/docker/IndexView.vue:477 #: src/views/apps/fail2ban/IndexView.vue:282 #: src/views/apps/gitea/IndexView.vue:49 #: src/views/apps/memcached/IndexView.vue:74 #: src/views/apps/minio/IndexView.vue:49 #: src/views/apps/mysql/MysqlIndex.vue:135 #: src/views/apps/nginx/NginxIndex.vue:545 #: src/views/apps/podman/IndexView.vue:85 #: src/views/apps/postgresql/IndexView.vue:154 #: src/views/apps/redis/IndexView.vue:78 #: src/views/apps/rsync/IndexView.vue:240 #: src/views/apps/supervisor/IndexView.vue:347 #: src/views/environment/PHPView.vue:271 msgid "Runtime Logs" msgstr "" #: src/views/apps/apache/IndexView.vue:90 #: src/views/apps/nginx/NginxIndex.vue:548 #: src/views/environment/PHPView.vue:274 msgid "Error Logs" msgstr "" #: src/views/apps/apache/IndexView.vue:94 #: src/views/apps/mysql/MysqlIndex.vue:137 #: src/views/apps/nginx/NginxIndex.vue:552 #: src/views/apps/postgresql/IndexView.vue:158 #: src/views/apps/supervisor/IndexView.vue:354 #: src/views/environment/PHPView.vue:278 msgid "Clear Log" msgstr "" #: src/views/apps/codeserver/IndexView.vue:38 msgid "This modifies the Code Server configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/docker/IndexView.vue:63 #: src/views/apps/docker/IndexView.vue:70 msgid "Default" msgstr "" #: src/views/apps/docker/IndexView.vue:88 msgid "China - Millisecond" msgstr "" #: src/views/apps/docker/IndexView.vue:89 msgid "China - DaoCloud" msgstr "" #: src/views/apps/docker/IndexView.vue:91 msgid "China - Tencent (Internal only)" msgstr "" #: src/views/apps/docker/IndexView.vue:194 #: src/views/container/ContainerCreate.vue:191 #: src/views/project/EditModal.vue:177 #: src/views/website/EditView.vue:568 msgid "Basic Settings" msgstr "" #: src/views/apps/docker/IndexView.vue:198 msgid "Registry Mirrors" msgstr "" #: src/views/apps/docker/IndexView.vue:203 #: src/views/website/EditView.vue:1022 msgid "Presets" msgstr "" #: src/views/apps/docker/IndexView.vue:226 msgid "Configure registry mirrors to speed up image downloads. Domestic users can configure domestic mirrors." msgstr "" #: src/views/apps/docker/IndexView.vue:235 msgid "Enter mirror address, e.g., https://registry.example.com" msgstr "" #: src/views/apps/docker/IndexView.vue:239 #: src/views/apps/docker/IndexView.vue:392 #: src/views/apps/docker/IndexView.vue:420 #: src/views/apps/docker/IndexView.vue:445 #: src/views/apps/nginx/NginxIndex.vue:688 #: src/views/toolbox/SystemView.vue:297 msgid "Add" msgstr "" #: src/views/apps/docker/IndexView.vue:249 msgid "Log Configuration" msgstr "" #: src/views/apps/docker/IndexView.vue:253 msgid "Configure log driver and rotation settings. Setting max-size and max-file can prevent log files from growing indefinitely." msgstr "" #: src/views/apps/docker/IndexView.vue:259 msgid "Log Driver" msgstr "" #: src/views/apps/docker/IndexView.vue:263 msgid "Select log driver" msgstr "" #: src/views/apps/docker/IndexView.vue:269 msgid "Max Size" msgstr "" #: src/views/apps/docker/IndexView.vue:272 msgid "e.g., 10m, 100m, 1g" msgstr "" #: src/views/apps/docker/IndexView.vue:277 msgid "Max Files" msgstr "" #: src/views/apps/docker/IndexView.vue:280 msgid "e.g., 3, 5, 10" msgstr "" #: src/views/apps/docker/IndexView.vue:290 msgid "Runtime Options" msgstr "" #: src/views/apps/docker/IndexView.vue:294 msgid "Live Restore" msgstr "" #: src/views/apps/docker/IndexView.vue:297 msgid "Keep containers alive during daemon downtime" msgstr "" #: src/views/apps/docker/IndexView.vue:302 msgid "Cgroup Driver" msgstr "" #: src/views/apps/docker/IndexView.vue:306 msgid "Select cgroup driver" msgstr "" #: src/views/apps/docker/IndexView.vue:314 msgid "IPv6" msgstr "" #: src/views/apps/docker/IndexView.vue:317 msgid "Requires additional configuration." msgstr "" #: src/views/apps/docker/IndexView.vue:325 msgid "Docs" msgstr "" #: src/views/apps/docker/IndexView.vue:331 msgid "IP Forward" msgstr "" #: src/views/apps/docker/IndexView.vue:334 msgid "Enable IP forwarding" msgstr "" #: src/views/apps/docker/IndexView.vue:343 msgid "Firewall Configuration" msgstr "" #: src/views/apps/docker/IndexView.vue:347 msgid "Configure Docker firewall backend. nftables is experimental and does not support Swarm mode." msgstr "" #: src/views/apps/docker/IndexView.vue:353 msgid "Firewall Backend" msgstr "" #: src/views/apps/docker/IndexView.vue:357 msgid "Select firewall backend" msgstr "" #: src/views/apps/docker/IndexView.vue:366 msgid "Storage & Paths" msgstr "" #: src/views/apps/docker/IndexView.vue:368 msgid "Storage Driver" msgstr "" #: src/views/apps/docker/IndexView.vue:372 msgid "Select storage driver" msgstr "" #: src/views/apps/docker/IndexView.vue:376 msgid "Data Root" msgstr "" #: src/views/apps/docker/IndexView.vue:379 msgid "Docker data directory, default is /var/lib/docker" msgstr "" #: src/views/apps/docker/IndexView.vue:382 msgid "Socket/Hosts" msgstr "" #: src/views/apps/docker/IndexView.vue:388 msgid "e.g., unix:///var/run/docker.sock, tcp://0.0.0.0:2375" msgstr "" #: src/views/apps/docker/IndexView.vue:404 msgid "Network Configuration" msgstr "" #: src/views/apps/docker/IndexView.vue:406 msgid "Bridge IP" msgstr "" #: src/views/apps/docker/IndexView.vue:409 msgid "Default bridge network IP range, e.g., 172.17.0.1/16" msgstr "" #: src/views/apps/docker/IndexView.vue:412 msgid "DNS Servers" msgstr "" #: src/views/apps/docker/IndexView.vue:417 msgid "e.g., 8.8.8.8, 114.114.114.114" msgstr "" #: src/views/apps/docker/IndexView.vue:429 msgid "Insecure Registries" msgstr "" #: src/views/apps/docker/IndexView.vue:433 msgid "Insecure registries allow Docker to communicate with registries using HTTP or self-signed certificates. Use with caution." msgstr "" #: src/views/apps/docker/IndexView.vue:441 msgid "e.g., 192.168.1.100:5000" msgstr "" #: src/views/apps/docker/IndexView.vue:464 msgid "Configuration File" msgstr "" #: src/views/apps/docker/IndexView.vue:467 msgid "This modifies the Docker configuration file (/etc/docker/daemon.json)" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:43 #: src/views/apps/phpmyadmin/IndexView.vue:55 #: src/views/apps/supervisor/IndexView.vue:53 #: src/views/container/ComposeView.vue:84 #: src/views/container/ContainerView.vue:50 #: src/views/database/ServerList.vue:142 #: src/views/database/UserList.vue:131 #: src/views/firewall/RuleView.vue:61 #: src/views/log/HttpLog.vue:74 #: src/views/project/ListView.vue:57 #: src/views/task/TaskView.vue:22 #: src/views/toolbox/ProcessView.vue:137 #: src/views/toolbox/ProcessView.vue:394 msgid "Status" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:55 #: src/views/apps/fail2ban/IndexView.vue:358 msgid "Max Retries" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:56 #: src/views/apps/fail2ban/IndexView.vue:364 msgid "Ban Time" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:57 #: src/views/apps/fail2ban/IndexView.vue:361 msgid "Find Time" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:77 #: src/views/cert/CertView.vue:252 msgid "View" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:87 msgid "Are you sure you want to delete rule %{ name }?" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:131 msgid "Are you sure you want to unban %{ ip }?" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:141 msgid "Unban" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:188 #: src/views/apps/pureftpd/IndexView.vue:128 #: src/views/apps/rsync/IndexView.vue:150 #: src/views/apps/s3fs/IndexView.vue:82 #: src/views/apps/supervisor/IndexView.vue:233 #: src/views/database/CreateServerModal.vue:37 msgid "Added successfully" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:209 msgid "Unbanned successfully" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:231 msgid "IP Whitelist" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:236 msgid "IP whitelist, separated by commas" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:241 msgid "Save Whitelist" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:246 msgid "Rule Management" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:248 msgid "Rule List" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:277 #: src/views/apps/fail2ban/IndexView.vue:287 #: src/views/apps/fail2ban/IndexView.vue:291 msgid "Add Rule" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:297 msgid "If an IP exceeds the maximum retries within the find time (seconds), it will be banned for the ban time (seconds)" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:304 msgid "Protected ports are automatically obtained. If you modify the port corresponding to a rule, please delete and re-add the rule, otherwise protection may not be effective" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:311 #: src/views/backup/StorageView.vue:67 #: src/views/backup/StorageView.vue:227 #: src/views/backup/StorageView.vue:381 #: src/views/cert/CertView.vue:86 #: src/views/cert/DnsView.vue:38 #: src/views/cert/ObtainModal.vue:58 #: src/views/database/CreateServerModal.vue:63 #: src/views/database/DatabaseList.vue:12 #: src/views/database/ServerList.vue:45 #: src/views/database/UserList.vue:17 #: src/views/file/PropertyModal.vue:33 #: src/views/log/OperationLog.vue:57 #: src/views/project/ListView.vue:49 msgid "Type" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:316 #: src/views/apps/fail2ban/IndexView.vue:347 msgid "Service" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:321 #: src/views/apps/fail2ban/IndexView.vue:325 #: src/views/task/CreateModal.vue:169 #: src/views/task/CreateModal.vue:174 msgid "Select Website" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:328 msgid "Protection Mode" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:333 #: src/views/apps/pureftpd/IndexView.vue:39 #: src/views/backup/StorageView.vue:271 #: src/views/backup/StorageView.vue:325 #: src/views/backup/StorageView.vue:355 #: src/views/backup/StorageView.vue:419 #: src/views/backup/StorageView.vue:473 #: src/views/backup/StorageView.vue:503 #: src/views/log/HttpLog.vue:64 msgid "Path" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:340 #: src/views/apps/fail2ban/IndexView.vue:344 msgid "Protection Path" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:372 #: src/views/apps/fail2ban/IndexView.vue:376 msgid "View Rule" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:380 msgid "Rule Information" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:383 msgid "Currently Banned" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:387 msgid "Total Bans" msgstr "" #: src/views/apps/fail2ban/IndexView.vue:392 msgid "Ban List" msgstr "" #: src/views/apps/frp/IndexView.vue:60 #: src/views/apps/frp/IndexView.vue:88 #: src/views/project/CreateModal.vue:546 #: src/views/project/EditModal.vue:232 msgid "Run User" msgstr "" #: src/views/apps/frp/IndexView.vue:67 #: src/views/apps/frp/IndexView.vue:68 #: src/views/apps/frp/IndexView.vue:95 #: src/views/apps/frp/IndexView.vue:96 #: src/views/apps/rsync/IndexView.vue:53 #: src/views/apps/rsync/IndexView.vue:272 #: src/views/apps/rsync/IndexView.vue:326 #: src/views/database/IndexView.vue:28 #: src/views/setting/IndexView.vue:93 #: src/views/toolbox/ProcessView.vue:131 #: src/views/toolbox/ProcessView.vue:391 #: src/views/toolbox/WebHookView.vue:335 #: src/views/toolbox/WebHookView.vue:370 msgid "User" msgstr "" #: src/views/apps/frp/IndexView.vue:70 #: src/views/apps/frp/IndexView.vue:71 #: src/views/apps/frp/IndexView.vue:98 #: src/views/apps/frp/IndexView.vue:99 #: src/views/file/PermissionModal.vue:126 #: src/views/file/PermissionModal.vue:150 #: src/views/file/PropertyModal.vue:48 msgid "Group" msgstr "" #: src/views/apps/gitea/IndexView.vue:36 msgid "This modifies the Gitea configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/memcached/IndexView.vue:54 msgid "Service Configuration" msgstr "" #: src/views/apps/minio/IndexView.vue:36 msgid "This is modifying the MinIO environment variable file /etc/default/minio. If you do not understand the meaning of each parameter, please do not modify it arbitrarily!" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:66 #: src/views/apps/postgresql/IndexView.vue:65 #: src/views/apps/pureftpd/IndexView.vue:138 #: src/views/database/DatabaseList.vue:132 #: src/views/database/ServerList.vue:285 #: src/views/database/UpdateServerModal.vue:21 #: src/views/database/UpdateUserModal.vue:18 #: src/views/database/UserList.vue:220 #: src/views/file/PermissionModal.vue:55 #: src/views/setting/SettingUser.vue:162 #: src/views/setting/SettingUser.vue:168 #: src/views/task/CronView.vue:173 #: src/views/task/CronView.vue:201 #: src/views/toolbox/WebHookView.vue:211 #: src/views/toolbox/WebHookView.vue:282 #: src/views/website/ListView.vue:238 #: src/views/website/SettingView.vue:36 msgid "Modified successfully" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:72 #: src/views/apps/postgresql/IndexView.vue:71 #: src/views/database/ServerList.vue:104 #: src/views/database/UserList.vue:70 #: src/views/file/ListView.vue:867 #: src/views/file/ListView.vue:887 #: src/views/file/ToolBar.vue:130 #: src/views/file/ToolBar.vue:150 #: src/views/setting/TokenModal.vue:163 msgid "Copied successfully" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:83 #: src/views/toolbox/SshView.vue:263 msgid "Root Password" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:87 msgid "The \"root\" user password is used to manage the database system. Keep it safe!" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:96 #: src/views/apps/postgresql/IndexView.vue:99 #: src/views/database/ServerList.vue:108 #: src/views/database/UserList.vue:74 #: src/views/file/ListView.vue:306 #: src/views/file/ListView.vue:340 #: src/views/file/ListView.vue:980 #: src/views/file/ToolBar.vue:265 msgid "Copy" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:111 msgid "This modifies the %{ name } main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:141 msgid "Slow Query Log" msgstr "" #: src/views/apps/mysql/MysqlIndex.vue:143 #: src/views/environment/PHPView.vue:288 msgid "Clear Slow Log" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:154 msgid "Listen" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:161 msgid "Protocol" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:169 #: src/views/apps/nginx/NginxIndex.vue:588 #: src/views/website/EditView.vue:789 msgid "Proxy Pass" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:197 #: src/views/apps/nginx/NginxIndex.vue:273 #: src/views/backup/StorageView.vue:106 #: src/views/container/ComposeView.vue:122 #: src/views/file/ListView.vue:331 #: src/views/file/ListView.vue:1566 #: src/views/project/ListView.vue:179 #: src/views/ssh/IndexView.vue:69 #: src/views/task/CronView.vue:128 #: src/views/toolbox/WebHookView.vue:158 #: src/views/website/ListView.vue:139 msgid "Edit" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:239 msgid "Algorithm" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:245 msgid "Round Robin" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:249 #: src/views/apps/nginx/NginxIndex.vue:672 msgid "Servers" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:256 msgid " server(s)" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:335 msgid "Add Stream Server" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:353 msgid "Edit Stream Server" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:397 msgid "Add Stream Upstream" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:412 msgid "Edit Stream Upstream" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:428 msgid "Please enter server address" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:442 msgid "Please add at least one server" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:497 msgid "Stream" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:499 #: src/views/database/CreateDatabaseModal.vue:74 #: src/views/database/CreateUserModal.vue:80 #: src/views/database/DatabaseList.vue:42 #: src/views/database/IndexView.vue:29 #: src/views/database/UserList.vue:91 msgid "Server" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:503 #: src/views/database/CreateServerModal.vue:47 #: src/views/database/IndexView.vue:49 #: src/views/website/EditView.vue:729 msgid "Add Server" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:516 #: src/views/website/EditView.vue:621 msgid "Upstream" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:520 #: src/views/website/EditView.vue:745 msgid "Add Upstream" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:577 #: src/views/apps/nginx/NginxIndex.vue:655 msgid "Only letters, numbers, underscores and hyphens" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:580 msgid "Listen Address" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:585 msgid "e.g. 12345 or 0.0.0.0:12345" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:593 msgid "e.g. 127.0.0.1:3306 or upstream_name" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:596 msgid "UDP Protocol" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:599 msgid "Proxy Protocol" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:602 msgid "Proxy Timeout (seconds)" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:605 msgid "Connect Timeout (seconds)" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:608 msgid "Enable SSL" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:614 msgid "SSL Certificate Path" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:620 msgid "e.g. /path/to/cert.pem" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:626 msgid "SSL Private Key Path" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:632 msgid "e.g. /path/to/key.pem" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:658 #: src/views/website/EditView.vue:632 msgid "Load Balancing Algorithm" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:662 msgid "Round Robin (Default)" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:679 msgid "Server address, e.g. 127.0.0.1:3306" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:685 msgid "Options (optional), e.g. weight=5 backup" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:694 msgid "Address" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:695 #: src/views/container/NetworkView.vue:321 #: src/views/container/VolumeView.vue:220 #: src/views/toolbox/DiskView.vue:824 msgid "Options" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:715 msgid "No servers added yet" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:722 #: src/views/website/EditView.vue:660 #: src/views/website/EditView.vue:820 msgid "DNS Resolver" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:725 #: src/views/website/EditView.vue:663 #: src/views/website/EditView.vue:823 msgid "e.g., 8.8.8.8" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:731 #: src/views/website/EditView.vue:669 #: src/views/website/EditView.vue:829 msgid "Resolver Timeout" msgstr "" #: src/views/apps/nginx/NginxIndex.vue:744 #: src/views/website/EditView.vue:349 msgid "Seconds" msgstr "" #: src/views/apps/phpmyadmin/IndexView.vue:57 msgid "Access Information" msgstr "" #: src/views/apps/phpmyadmin/IndexView.vue:59 msgid "Access URL:" msgstr "" #: src/views/apps/phpmyadmin/IndexView.vue:62 msgid "Modify Port" msgstr "" #: src/views/apps/phpmyadmin/IndexView.vue:69 msgid "Modify phpMyAdmin access port" msgstr "" #: src/views/apps/phpmyadmin/IndexView.vue:77 msgid "This modifies the OpenResty configuration file for phpMyAdmin. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/podman/IndexView.vue:43 msgid "Podman is a daemonless container management tool. Being in a stopped state is normal and does not affect usage!" msgstr "" #: src/views/apps/podman/IndexView.vue:51 msgid "Registry Configuration" msgstr "" #: src/views/apps/podman/IndexView.vue:55 msgid "This modifies the Podman registry configuration file (/etc/containers/registries.conf)" msgstr "" #: src/views/apps/podman/IndexView.vue:68 msgid "Storage Configuration" msgstr "" #: src/views/apps/podman/IndexView.vue:72 msgid "This modifies the Podman storage configuration file (/etc/containers/storage.conf)" msgstr "" #: src/views/apps/postgresql/IndexView.vue:82 msgid "Super Password" msgstr "" #: src/views/apps/postgresql/IndexView.vue:86 msgid "The \"postgres\" superuser password is used to manage the database system. Keep it safe!" msgstr "" #: src/views/apps/postgresql/IndexView.vue:110 #: src/views/apps/redis/IndexView.vue:51 #: src/views/apps/rsync/IndexView.vue:223 #: src/views/apps/supervisor/IndexView.vue:330 #: src/views/environment/PHPView.vue:225 msgid "Main Configuration" msgstr "" #: src/views/apps/postgresql/IndexView.vue:114 msgid "This modifies the PostgreSQL main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/postgresql/IndexView.vue:127 msgid "User Configuration" msgstr "" #: src/views/apps/postgresql/IndexView.vue:131 msgid "This modifies the PostgreSQL user configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/postgresql/IndexView.vue:164 #: src/views/environment/PHPView.vue:284 msgid "Slow Logs" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:32 #: src/views/apps/pureftpd/IndexView.vue:214 #: src/views/backup/StorageView.vue:292 #: src/views/backup/StorageView.vue:341 #: src/views/backup/StorageView.vue:440 #: src/views/backup/StorageView.vue:489 #: src/views/container/ImageView.vue:386 #: src/views/database/CreateDatabaseModal.vue:105 #: src/views/database/CreateServerModal.vue:94 #: src/views/database/CreateUserModal.vue:88 #: src/views/database/ServerList.vue:75 #: src/views/database/UpdateServerModal.vue:86 #: src/views/database/UserList.vue:40 #: src/views/login/IndexView.vue:166 #: src/views/setting/CreateModal.vue:40 #: src/views/setting/SettingUser.vue:19 #: src/views/ssh/CreateModal.vue:85 #: src/views/ssh/UpdateModal.vue:91 #: src/views/website/EditView.vue:1228 msgid "Username" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:75 msgid "Are you sure you want to delete user %{ username }?" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:161 msgid "Port Settings" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:168 msgid "Modify Pure-Ftpd listening port" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:172 msgid "User Management" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:176 #: src/views/website/EditView.vue:1263 msgid "Add User" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:201 msgid "Run Log" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:206 #: src/views/apps/pureftpd/IndexView.vue:210 #: src/views/database/CreateDatabaseModal.vue:90 #: src/views/database/CreateUserModal.vue:66 #: src/views/database/IndexView.vue:42 #: src/views/setting/CreateModal.vue:32 #: src/views/setting/IndexView.vue:99 msgid "Create User" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:219 #: src/views/backup/StorageView.vue:295 #: src/views/backup/StorageView.vue:344 #: src/views/backup/StorageView.vue:443 #: src/views/backup/StorageView.vue:492 #: src/views/container/ImageView.vue:391 #: src/views/database/CreateDatabaseModal.vue:110 #: src/views/database/CreateUserModal.vue:93 msgid "Enter username" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:222 #: src/views/apps/pureftpd/IndexView.vue:253 #: src/views/apps/rsync/IndexView.vue:280 #: src/views/apps/rsync/IndexView.vue:334 #: src/views/backup/StorageView.vue:30 #: src/views/backup/StorageView.vue:303 #: src/views/backup/StorageView.vue:347 #: src/views/backup/StorageView.vue:451 #: src/views/backup/StorageView.vue:495 #: src/views/container/ImageView.vue:394 #: src/views/database/CreateDatabaseModal.vue:113 #: src/views/database/CreateServerModal.vue:102 #: src/views/database/CreateUserModal.vue:96 #: src/views/database/ServerList.vue:84 #: src/views/database/UpdateServerModal.vue:94 #: src/views/database/UpdateUserModal.vue:55 #: src/views/database/UserList.vue:50 #: src/views/login/IndexView.vue:175 #: src/views/setting/CreateModal.vue:47 #: src/views/setting/PasswordModal.vue:34 #: src/views/ssh/CreateModal.vue:79 #: src/views/ssh/CreateModal.vue:88 #: src/views/ssh/UpdateModal.vue:85 #: src/views/ssh/UpdateModal.vue:94 #: src/views/website/EditView.vue:1248 msgid "Password" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:229 #: src/views/apps/pureftpd/IndexView.vue:259 msgid "It is recommended to use the generator to generate a random password" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:233 #: src/views/apps/rsync/IndexView.vue:46 #: src/views/apps/rsync/IndexView.vue:264 #: src/views/apps/rsync/IndexView.vue:318 #: src/views/container/ComposeView.vue:64 #: src/views/file/PropertyModal.vue:34 #: src/views/project/ListView.vue:95 #: src/views/website/CreateModal.vue:227 #: src/views/website/ListView.vue:42 msgid "Directory" msgstr "" #: src/views/apps/pureftpd/IndexView.vue:238 msgid "Enter the directory authorized to the user" msgstr "" #: src/views/apps/redis/IndexView.vue:55 msgid "This modifies the Redis main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/rsync/IndexView.vue:60 #: src/views/apps/rsync/IndexView.vue:288 #: src/views/apps/rsync/IndexView.vue:343 #: src/views/backup/StorageView.vue:281 #: src/views/backup/StorageView.vue:335 #: src/views/backup/StorageView.vue:429 #: src/views/backup/StorageView.vue:483 #: src/views/database/CreateDatabaseModal.vue:127 #: src/views/database/CreateServerModal.vue:73 #: src/views/database/ServerList.vue:115 #: src/views/database/UpdateServerModal.vue:65 #: src/views/database/UserList.vue:81 #: src/views/ssh/CreateModal.vue:64 #: src/views/ssh/UpdateModal.vue:70 #: src/views/toolbox/SystemView.vue:181 msgid "Host" msgstr "" #: src/views/apps/rsync/IndexView.vue:66 #: src/views/apps/rsync/IndexView.vue:296 #: src/views/apps/rsync/IndexView.vue:351 #: src/views/database/CreateServerModal.vue:111 #: src/views/database/CreateUserModal.vue:132 #: src/views/database/DatabaseList.vue:57 #: src/views/database/ServerList.vue:125 #: src/views/database/UpdateServerModal.vue:103 #: src/views/database/UpdateUserModal.vue:70 #: src/views/database/UserList.vue:114 msgid "Comment" msgstr "" #: src/views/apps/rsync/IndexView.vue:82 #: src/views/apps/supervisor/IndexView.vue:101 msgid "Configure" msgstr "" #: src/views/apps/rsync/IndexView.vue:92 msgid "Are you sure you want to delete module %{ name }?" msgstr "" #: src/views/apps/rsync/IndexView.vue:194 #: src/views/environment/PHPView.vue:212 msgid "Module Management" msgstr "" #: src/views/apps/rsync/IndexView.vue:198 #: src/views/apps/rsync/IndexView.vue:248 msgid "Add Module" msgstr "" #: src/views/apps/rsync/IndexView.vue:227 msgid "This modifies the Rsync main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/rsync/IndexView.vue:261 #: src/views/apps/supervisor/IndexView.vue:378 msgid "Name cannot contain Chinese characters" msgstr "" #: src/views/apps/rsync/IndexView.vue:269 #: src/views/apps/rsync/IndexView.vue:323 msgid "Please enter absolute path" msgstr "" #: src/views/apps/rsync/IndexView.vue:277 #: src/views/apps/rsync/IndexView.vue:331 msgid "Enter module username" msgstr "" #: src/views/apps/rsync/IndexView.vue:285 #: src/views/apps/rsync/IndexView.vue:340 msgid "Enter module password" msgstr "" #: src/views/apps/rsync/IndexView.vue:293 #: src/views/apps/rsync/IndexView.vue:348 msgid "Enter allowed hosts, separate multiple hosts with spaces" msgstr "" #: src/views/apps/rsync/IndexView.vue:301 #: src/views/apps/rsync/IndexView.vue:356 msgid "Enter comments" msgstr "" #: src/views/apps/rsync/IndexView.vue:310 msgid "Module Configuration" msgstr "" #: src/views/apps/s3fs/IndexView.vue:24 #: src/views/toolbox/DiskView.vue:729 msgid "Mount Path" msgstr "" #: src/views/apps/s3fs/IndexView.vue:45 msgid "Are you sure you want to delete mount %{ path }?" msgstr "" #: src/views/apps/s3fs/IndexView.vue:57 #: src/views/toolbox/DiskView.vue:354 msgid "Unmount" msgstr "" #: src/views/apps/s3fs/IndexView.vue:103 #: src/views/apps/s3fs/IndexView.vue:128 #: src/views/apps/s3fs/IndexView.vue:132 msgid "Add Mount" msgstr "" #: src/views/apps/s3fs/IndexView.vue:141 msgid "Enter Bucket name (COS format: xxxx-ID)" msgstr "" #: src/views/apps/s3fs/IndexView.vue:149 msgid "Enter AK key" msgstr "" #: src/views/apps/s3fs/IndexView.vue:157 msgid "Enter SK key" msgstr "" #: src/views/apps/s3fs/IndexView.vue:160 msgid "Region Endpoint" msgstr "" #: src/views/apps/s3fs/IndexView.vue:166 msgid "Enter complete URL of region endpoint (e.g., https://oss-cn-beijing.aliyuncs.com)" msgstr "" #: src/views/apps/s3fs/IndexView.vue:172 msgid "Mount Directory" msgstr "" #: src/views/apps/s3fs/IndexView.vue:177 msgid "Enter mount directory (e.g., /oss)" msgstr "" #: src/views/apps/supervisor/IndexView.vue:67 msgid "Uptime" msgstr "" #: src/views/apps/supervisor/IndexView.vue:127 msgid "Are you sure you want to stop process %{ name }?" msgstr "" #: src/views/apps/supervisor/IndexView.vue:155 msgid "Are you sure you want to restart process %{ name }?" msgstr "" #: src/views/apps/supervisor/IndexView.vue:182 msgid "Are you sure you want to delete process %{ name }?" msgstr "" #: src/views/apps/supervisor/IndexView.vue:301 msgid "Process Management" msgstr "" #: src/views/apps/supervisor/IndexView.vue:305 #: src/views/apps/supervisor/IndexView.vue:365 msgid "Add Process" msgstr "" #: src/views/apps/supervisor/IndexView.vue:334 msgid "This modifies the Supervisor main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/apps/supervisor/IndexView.vue:350 msgid "Daemon Logs" msgstr "" #: src/views/apps/supervisor/IndexView.vue:381 #: src/views/project/CreateModal.vue:563 #: src/views/project/EditModal.vue:250 msgid "Start Command" msgstr "" #: src/views/apps/supervisor/IndexView.vue:386 msgid "Please enter absolute path for files in start command" msgstr "" #: src/views/apps/supervisor/IndexView.vue:389 #: src/views/project/EditModal.vue:214 #: src/views/toolbox/ProcessView.vue:426 msgid "Working Directory" msgstr "" #: src/views/apps/supervisor/IndexView.vue:394 msgid "Please enter absolute path for working directory" msgstr "" #: src/views/apps/supervisor/IndexView.vue:397 #: src/views/toolbox/WebHookView.vue:59 msgid "Run As User" msgstr "" #: src/views/apps/supervisor/IndexView.vue:402 msgid "Usually www is sufficient" msgstr "" #: src/views/apps/supervisor/IndexView.vue:405 msgid "Number of Processes" msgstr "" #: src/views/apps/supervisor/IndexView.vue:415 msgid "Process Configuration" msgstr "" #: src/views/backup/IndexView.vue:41 msgid "Storage" msgstr "" #: src/views/backup/ListView.vue:38 msgid "Filename" msgstr "" #: src/views/backup/ListView.vue:51 #: src/views/database/ServerList.vue:154 #: src/views/database/UserList.vue:143 msgid "Update Date" msgstr "" #: src/views/backup/ListView.vue:88 msgid "Are you sure you want to delete this backup?" msgstr "" #: src/views/backup/ListView.vue:131 msgid "Restoring..." msgstr "" #: src/views/backup/ListView.vue:138 msgid "Restored successfully" msgstr "" #: src/views/backup/ListView.vue:206 msgid "Only local backups are displayed here. Remote backups are stored in the corresponding backup storage." msgstr "" #: src/views/backup/ListView.vue:213 #: src/views/backup/ListView.vue:243 msgid "Create Backup" msgstr "" #: src/views/backup/ListView.vue:216 #: src/views/backup/UploadModal.vue:39 msgid "Upload Backup" msgstr "" #: src/views/backup/ListView.vue:255 #: src/views/backup/ListView.vue:291 msgid "Select website" msgstr "" #: src/views/backup/ListView.vue:258 #: src/views/database/CreateDatabaseModal.vue:82 #: src/views/database/DatabaseList.vue:35 #: src/views/task/CreateModal.vue:179 #: src/views/task/CreateModal.vue:181 #: src/views/website/CreateModal.vue:191 #: src/views/website/CreateModal.vue:196 msgid "Database Name" msgstr "" #: src/views/backup/ListView.vue:263 #: src/views/database/CreateDatabaseModal.vue:87 #: src/views/database/CreateUserModal.vue:129 #: src/views/database/UpdateUserModal.vue:67 msgid "Enter database name" msgstr "" #: src/views/backup/ListView.vue:266 #: src/views/task/CreateModal.vue:183 msgid "Backup Storage" msgstr "" #: src/views/backup/ListView.vue:270 #: src/views/task/CreateModal.vue:187 msgid "Select backup storage" msgstr "" #: src/views/backup/ListView.vue:279 msgid "Restore Backup" msgstr "" #: src/views/backup/StorageView.vue:31 #: src/views/backup/StorageView.vue:315 #: src/views/backup/StorageView.vue:463 #: src/views/cert/CertView.vue:498 #: src/views/cert/CertView.vue:566 #: src/views/cert/UploadCertModal.vue:46 #: src/views/setting/SettingSafe.vue:297 #: src/views/ssh/CreateModal.vue:80 #: src/views/ssh/CreateModal.vue:91 #: src/views/ssh/UpdateModal.vue:86 #: src/views/ssh/UpdateModal.vue:97 #: src/views/website/EditView.vue:1007 msgid "Private Key" msgstr "" #: src/views/backup/StorageView.vue:72 msgid "Local" msgstr "" #: src/views/backup/StorageView.vue:81 msgid "Created At" msgstr "" #: src/views/backup/StorageView.vue:115 msgid "Are you sure you want to delete this storage?" msgstr "" #: src/views/backup/StorageView.vue:169 #: src/views/setting/PasswordModal.vue:16 #: src/views/setting/TokenModal.vue:181 #: src/views/setting/TwoFaModal.vue:24 #: src/views/ssh/UpdateModal.vue:31 msgid "Updated successfully" msgstr "" #: src/views/backup/StorageView.vue:188 #: src/views/backup/StorageView.vue:216 msgid "Add Storage" msgstr "" #: src/views/backup/StorageView.vue:225 #: src/views/backup/StorageView.vue:379 msgid "Enter storage name" msgstr "" #: src/views/backup/StorageView.vue:233 #: src/views/backup/StorageView.vue:387 msgid "Access Key" msgstr "" #: src/views/backup/StorageView.vue:236 #: src/views/backup/StorageView.vue:390 msgid "Enter access key" msgstr "" #: src/views/backup/StorageView.vue:239 #: src/views/backup/StorageView.vue:393 msgid "Secret Key" msgstr "" #: src/views/backup/StorageView.vue:244 #: src/views/backup/StorageView.vue:398 msgid "Enter secret key" msgstr "" #: src/views/backup/StorageView.vue:247 #: src/views/backup/StorageView.vue:401 msgid "Style" msgstr "" #: src/views/backup/StorageView.vue:250 msgid "Region" msgstr "" #: src/views/backup/StorageView.vue:253 msgid "Enter region (e.g., us-east-1)" msgstr "" #: src/views/backup/StorageView.vue:256 #: src/views/backup/StorageView.vue:404 msgid "Endpoint" msgstr "" #: src/views/backup/StorageView.vue:259 #: src/views/backup/StorageView.vue:407 msgid "Enter endpoint URL" msgstr "" #: src/views/backup/StorageView.vue:262 #: src/views/backup/StorageView.vue:410 msgid "Scheme" msgstr "" #: src/views/backup/StorageView.vue:265 #: src/views/backup/StorageView.vue:413 msgid "Bucket" msgstr "" #: src/views/backup/StorageView.vue:268 #: src/views/backup/StorageView.vue:416 msgid "Enter bucket name" msgstr "" #: src/views/backup/StorageView.vue:274 #: src/views/backup/StorageView.vue:358 #: src/views/backup/StorageView.vue:422 #: src/views/backup/StorageView.vue:506 msgid "Enter path (optional)" msgstr "" #: src/views/backup/StorageView.vue:282 #: src/views/backup/StorageView.vue:430 msgid "Enter host" msgstr "" #: src/views/backup/StorageView.vue:284 #: src/views/backup/StorageView.vue:432 #: src/views/database/CreateServerModal.vue:84 #: src/views/database/UpdateServerModal.vue:76 #: src/views/firewall/ForwardView.vue:31 #: src/views/firewall/RuleView.vue:48 #: src/views/setting/SettingBase.vue:123 #: src/views/ssh/CreateModal.vue:70 #: src/views/ssh/UpdateModal.vue:76 #: src/views/website/CreateModal.vue:146 msgid "Port" msgstr "" #: src/views/backup/StorageView.vue:289 #: src/views/backup/StorageView.vue:437 msgid "Enter port" msgstr "" #: src/views/backup/StorageView.vue:298 #: src/views/backup/StorageView.vue:446 msgid "Auth Type" msgstr "" #: src/views/backup/StorageView.vue:310 #: src/views/backup/StorageView.vue:352 #: src/views/backup/StorageView.vue:458 #: src/views/backup/StorageView.vue:500 #: src/views/container/ImageView.vue:400 #: src/views/database/CreateDatabaseModal.vue:120 #: src/views/database/CreateUserModal.vue:103 #: src/views/database/UpdateUserModal.vue:61 msgid "Enter password" msgstr "" #: src/views/backup/StorageView.vue:322 #: src/views/backup/StorageView.vue:470 msgid "Enter private key" msgstr "" #: src/views/backup/StorageView.vue:328 #: src/views/backup/StorageView.vue:476 msgid "Enter remote path" msgstr "" #: src/views/backup/StorageView.vue:338 #: src/views/backup/StorageView.vue:486 msgid "Enter WebDAV URL" msgstr "" #: src/views/backup/StorageView.vue:370 msgid "Edit Storage" msgstr "" #: src/views/backup/UploadModal.vue:20 msgid "Upload %{ filename } successfully" msgstr "" #: src/views/backup/UploadModal.vue:51 #: src/views/file/UploadModal.vue:490 msgid "Click or drag files to this area to upload" msgstr "" #: src/views/backup/UploadModal.vue:53 msgid "For large files, it is recommended to use SFTP or other methods to upload" msgstr "" #: src/views/cert/AccountView.vue:44 #: src/views/cert/AccountView.vue:243 #: src/views/cert/CreateAccountModal.vue:100 #: src/views/setting/CreateModal.vue:56 #: src/views/setting/SettingUser.vue:36 msgid "Email" msgstr "" #: src/views/cert/AccountView.vue:72 #: src/views/cert/AccountView.vue:235 #: src/views/cert/CertView.vue:447 #: src/views/cert/CreateAccountModal.vue:92 #: src/views/cert/CreateCertModal.vue:82 msgid "Key Type" msgstr "" #: src/views/cert/AccountView.vue:101 #: src/views/cert/CertView.vue:277 #: src/views/cert/DnsView.vue:85 #: src/views/database/ServerList.vue:223 #: src/views/database/UserList.vue:169 #: src/views/file/PermissionModal.vue:154 #: src/views/setting/TokenModal.vue:69 msgid "Modify" msgstr "" #: src/views/cert/AccountView.vue:109 #: src/views/cert/CertView.vue:286 #: src/views/cert/DnsView.vue:94 msgid "Deletion successful" msgstr "" #: src/views/cert/AccountView.vue:116 msgid "Are you sure you want to delete the account?" msgstr "" #: src/views/cert/AccountView.vue:150 #: src/views/cert/CreateAccountModal.vue:39 msgid "Registering account with CA, please wait patiently" msgstr "" #: src/views/cert/AccountView.vue:207 msgid "Modify Account" msgstr "" #: src/views/cert/AccountView.vue:215 #: src/views/cert/CreateAccountModal.vue:72 msgid "LiteSSL, Google and SSL.com require obtaining EAB (KID and HMAC) from their official websites first" msgstr "" #: src/views/cert/AccountView.vue:221 #: src/views/cert/CreateAccountModal.vue:78 msgid "Google is not accessible in mainland China, other CAs depend on network conditions, recommend using Let's Encrypt" msgstr "" #: src/views/cert/AccountView.vue:227 #: src/views/cert/CreateAccountModal.vue:84 msgid "CA" msgstr "" #: src/views/cert/AccountView.vue:230 #: src/views/cert/CreateAccountModal.vue:87 msgid "Select CA" msgstr "" #: src/views/cert/AccountView.vue:238 #: src/views/cert/CertView.vue:450 #: src/views/cert/CreateAccountModal.vue:95 #: src/views/cert/CreateCertModal.vue:85 msgid "Select key type" msgstr "" #: src/views/cert/AccountView.vue:248 #: src/views/cert/CreateAccountModal.vue:105 msgid "Enter email address" msgstr "" #: src/views/cert/AccountView.vue:256 #: src/views/cert/CreateAccountModal.vue:113 msgid "Enter KID" msgstr "" #: src/views/cert/AccountView.vue:264 #: src/views/cert/CreateAccountModal.vue:121 msgid "Enter HMAC" msgstr "" #: src/views/cert/CertView.vue:63 #: src/views/cert/CertView.vue:439 #: src/views/cert/CreateCertModal.vue:74 #: src/views/cert/ObtainModal.vue:57 #: src/views/project/CreateModal.vue:583 #: src/views/website/CreateModal.vue:135 #: src/views/website/EditView.vue:527 msgid "Domain" msgstr "" #: src/views/cert/CertView.vue:108 #: src/views/file/ToolBar.vue:232 #: src/views/file/UploadModal.vue:459 #: src/views/monitor/IndexView.vue:492 msgid "Upload" msgstr "" #: src/views/cert/CertView.vue:116 msgid "Associated Account" msgstr "" #: src/views/cert/CertView.vue:129 #: src/views/website/EditView.vue:930 msgid "Issuer" msgstr "" #: src/views/cert/CertView.vue:138 #: src/views/setting/TokenModal.vue:43 #: src/views/setting/TokenModal.vue:256 #: src/views/setting/TokenModal.vue:289 msgid "Expiration Time" msgstr "" #: src/views/cert/CertView.vue:147 msgid "Next Renewal Time" msgstr "" #: src/views/cert/CertView.vue:156 msgid "Auto Renewal" msgstr "" #: src/views/cert/CertView.vue:189 #: src/views/cert/ObtainModal.vue:78 msgid "Issue" msgstr "" #: src/views/cert/CertView.vue:220 #: src/views/cert/ObtainModal.vue:24 #: src/views/cert/ObtainModal.vue:81 #: src/views/website/EditView.vue:146 msgid "Please wait..." msgstr "" #: src/views/cert/CertView.vue:226 msgid "Renewal successful" msgstr "" #: src/views/cert/CertView.vue:234 msgid "Renewal" msgstr "" #: src/views/cert/CertView.vue:292 msgid "Are you sure you want to delete the certificate?" msgstr "" #: src/views/cert/CertView.vue:378 msgid "Deployment successful" msgstr "" #: src/views/cert/CertView.vue:424 msgid "Modify Certificate" msgstr "" #: src/views/cert/CertView.vue:433 msgid "You can automatically issue and deploy certificates by selecting any website/DNS, or manually enter domain names and set DNS resolution to issue certificates, or fill in deployment scripts to automatically deploy certificates." msgstr "" #: src/views/cert/CertView.vue:458 #: src/views/cert/CreateCertModal.vue:93 msgid "Select website for certificate deployment" msgstr "" #: src/views/cert/CertView.vue:466 #: src/views/cert/CreateCertModal.vue:98 #: src/views/cert/IndexView.vue:97 msgid "Account" msgstr "" #: src/views/cert/CertView.vue:470 #: src/views/cert/CreateCertModal.vue:101 msgid "Select account for certificate issuance" msgstr "" #: src/views/cert/CertView.vue:475 #: src/views/cert/CreateCertModal.vue:106 #: src/views/cert/CreateDnsModal.vue:59 #: src/views/cert/DnsView.vue:196 #: src/views/cert/IndexView.vue:98 msgid "DNS" msgstr "" #: src/views/cert/CertView.vue:478 #: src/views/cert/CreateCertModal.vue:109 msgid "Select DNS for certificate issuance" msgstr "" #: src/views/cert/CertView.vue:491 #: src/views/cert/UploadCertModal.vue:42 #: src/views/website/EditView.vue:1003 msgid "Enter the content of the PEM certificate file" msgstr "" #: src/views/cert/CertView.vue:503 #: src/views/cert/UploadCertModal.vue:50 #: src/views/website/EditView.vue:1011 msgid "Enter the content of the KEY private key file" msgstr "" #: src/views/cert/CertView.vue:510 msgid "Deployment Script" msgstr "" #: src/views/cert/CertView.vue:516 msgid "The {cert} and {key} in the script will be replaced with the certificate and private key content" msgstr "" #: src/views/cert/CertView.vue:530 msgid "Deploy Certificate" msgstr "" #: src/views/cert/CertView.vue:541 msgid "Select websites to deploy the certificate" msgstr "" #: src/views/cert/CertView.vue:554 msgid "View Certificate" msgstr "" #: src/views/cert/CreateAccountModal.vue:64 #: src/views/cert/IndexView.vue:110 msgid "Create Account" msgstr "" #: src/views/cert/CreateCertModal.vue:59 #: src/views/cert/IndexView.vue:107 msgid "Create Certificate" msgstr "" #: src/views/cert/CreateCertModal.vue:68 msgid "You can automatically issue and deploy certificates by selecting either Website or DNS, or you can manually enter domain names and set up DNS resolution to issue certificates" msgstr "" #: src/views/cert/CreateDnsModal.vue:44 #: src/views/cert/IndexView.vue:113 msgid "Create DNS" msgstr "" #: src/views/cert/CreateDnsModal.vue:52 msgid "Comment Name" msgstr "" #: src/views/cert/CreateDnsModal.vue:56 msgid "Enter comment name" msgstr "" #: src/views/cert/CreateDnsModal.vue:62 #: src/views/cert/DnsView.vue:199 msgid "Select DNS" msgstr "" #: src/views/cert/CreateDnsModal.vue:71 #: src/views/cert/DnsView.vue:208 msgid "Enter Aliyun Access Key" msgstr "" #: src/views/cert/CreateDnsModal.vue:78 #: src/views/cert/DnsView.vue:215 msgid "Enter Aliyun Secret Key" msgstr "" #: src/views/cert/CreateDnsModal.vue:85 #: src/views/cert/DnsView.vue:222 msgid "Enter Tencent Cloud SecretId" msgstr "" #: src/views/cert/CreateDnsModal.vue:92 #: src/views/cert/DnsView.vue:229 msgid "Enter Tencent Cloud SecretKey" msgstr "" #: src/views/cert/CreateDnsModal.vue:99 #: src/views/cert/DnsView.vue:236 msgid "Enter Huawei Cloud AccessKeyId" msgstr "" #: src/views/cert/CreateDnsModal.vue:106 #: src/views/cert/DnsView.vue:243 msgid "Enter Huawei Cloud SecretAccessKey" msgstr "" #: src/views/cert/CreateDnsModal.vue:113 #: src/views/cert/DnsView.vue:250 msgid "Enter West.cn Username" msgstr "" #: src/views/cert/CreateDnsModal.vue:120 #: src/views/cert/DnsView.vue:257 msgid "Enter West.cn API Password" msgstr "" #: src/views/cert/CreateDnsModal.vue:127 #: src/views/cert/DnsView.vue:264 msgid "Enter Cloudflare API Key" msgstr "" #: src/views/cert/CreateDnsModal.vue:134 #: src/views/cert/DnsView.vue:271 msgid "Enter G-Core API Key" msgstr "" #: src/views/cert/CreateDnsModal.vue:141 #: src/views/cert/DnsView.vue:278 msgid "Enter Porkbun API Key" msgstr "" #: src/views/cert/CreateDnsModal.vue:148 #: src/views/cert/DnsView.vue:285 msgid "Enter Porkbun Secret Key" msgstr "" #: src/views/cert/CreateDnsModal.vue:155 #: src/views/cert/DnsView.vue:292 msgid "Enter NameSilo API Token" msgstr "" #: src/views/cert/CreateDnsModal.vue:162 #: src/views/cert/DnsView.vue:299 msgid "Enter ClouDNS Auth ID (use Sub Auth ID by adding sub-prefix)" msgstr "" #: src/views/cert/CreateDnsModal.vue:169 #: src/views/cert/DnsView.vue:306 msgid "Enter ClouDNS Auth Password" msgstr "" #: src/views/cert/DnsView.vue:31 #: src/views/cert/DnsView.vue:189 msgid "Note Name" msgstr "" #: src/views/cert/DnsView.vue:100 msgid "Are you sure you want to delete the DNS?" msgstr "" #: src/views/cert/DnsView.vue:181 msgid "Modify DNS" msgstr "" #: src/views/cert/DnsView.vue:193 msgid "Enter note name" msgstr "" #: src/views/cert/IndexView.vue:104 #: src/views/cert/UploadCertModal.vue:30 msgid "Upload Certificate" msgstr "" #: src/views/cert/ObtainModal.vue:18 msgid "Automatic" msgstr "" #: src/views/cert/ObtainModal.vue:19 msgid "Manual" msgstr "" #: src/views/cert/ObtainModal.vue:20 msgid "Self-signed" msgstr "" #: src/views/cert/ObtainModal.vue:33 #: src/views/cert/ObtainModal.vue:89 #: src/views/cert/ObtainModal.vue:107 msgid "Issuance successful" msgstr "" #: src/views/cert/ObtainModal.vue:42 msgid "Please set up DNS resolution for the domain first, then continue with the issuance" msgstr "" #: src/views/cert/ObtainModal.vue:48 msgid "DNS Records to Set" msgstr "" #: src/views/cert/ObtainModal.vue:59 msgid "Host Record" msgstr "" #: src/views/cert/ObtainModal.vue:60 msgid "Record Value" msgstr "" #: src/views/cert/ObtainModal.vue:120 msgid "Issue Certificate" msgstr "" #: src/views/cert/ObtainModal.vue:127 msgid "Issuance Mode" msgstr "" #: src/views/container/ComposeView.vue:91 #: src/views/container/ImageView.vue:81 #: src/views/container/NetworkView.vue:100 #: src/views/container/VolumeView.vue:54 #: src/views/setting/SettingUser.vue:76 #: src/views/setting/TokenModal.vue:34 #: src/views/task/CronView.vue:79 #: src/views/task/TaskView.vue:37 #: src/views/toolbox/WebHookView.vue:121 msgid "Creation Time" msgstr "" #: src/views/container/ComposeView.vue:147 msgid "Are you sure you want to start compose %{ name }?" msgstr "" #: src/views/container/ComposeView.vue:158 msgid "Force pull images" msgstr "" #: src/views/container/ComposeView.vue:190 #: src/views/container/ContainerView.vue:279 #: src/views/container/ContainerView.vue:340 msgid "Stop successful" msgstr "" #: src/views/container/ComposeView.vue:199 msgid "Are you sure you want to stop compose %{ name }?" msgstr "" #: src/views/container/ComposeView.vue:224 #: src/views/container/ComposeView.vue:306 #: src/views/container/ContainerView.vue:314 #: src/views/container/ContainerView.vue:367 #: src/views/container/ImageView.vue:139 #: src/views/container/NetworkView.vue:159 #: src/views/container/VolumeView.vue:112 msgid "Delete successful" msgstr "" #: src/views/container/ComposeView.vue:230 msgid "Are you sure you want to delete compose %{ name }?" msgstr "" #: src/views/container/ComposeView.vue:318 #: src/views/container/ComposeView.vue:354 msgid "Create Compose" msgstr "" #: src/views/container/ComposeView.vue:326 msgid "Are you sure you want to delete the selected composes?" msgstr "" #: src/views/container/ComposeView.vue:364 #: src/views/container/ComposeView.vue:390 #: src/views/container/IndexView.vue:23 msgid "Compose" msgstr "" #: src/views/container/ComposeView.vue:383 msgid "Edit Compose" msgstr "" #: src/views/container/ContainerCreate.vue:52 msgid "Always" msgstr "" #: src/views/container/ContainerCreate.vue:53 msgid "On failure (default 5 retries)" msgstr "" #: src/views/container/ContainerCreate.vue:54 msgid "Unless stopped" msgstr "" #: src/views/container/ContainerCreate.vue:63 msgid "Read-Write" msgstr "" #: src/views/container/ContainerCreate.vue:64 msgid "Read-Only" msgstr "" #: src/views/container/ContainerCreate.vue:123 #: src/views/container/ImageView.vue:179 msgid "Please enter image name" msgstr "" #: src/views/container/ContainerCreate.vue:180 #: src/views/container/ContainerView.vue:551 msgid "Create Container" msgstr "" #: src/views/container/ContainerCreate.vue:193 #: src/views/container/ContainerView.vue:43 msgid "Container Name" msgstr "" #: src/views/container/ContainerCreate.vue:198 msgid "Optional, auto-generated if empty" msgstr "" #: src/views/container/ContainerCreate.vue:202 #: src/views/container/ContainerView.vue:70 #: src/views/container/ImageView.vue:57 msgid "Image" msgstr "" #: src/views/container/ContainerCreate.vue:207 msgid "e.g., nginx:latest, mysql:8.0" msgstr "" #: src/views/container/ContainerCreate.vue:211 #: src/views/home/IndexView.vue:147 #: src/views/home/IndexView.vue:834 #: src/views/monitor/IndexView.vue:851 msgid "Network" msgstr "" #: src/views/container/ContainerCreate.vue:215 msgid "Select network" msgstr "" #: src/views/container/ContainerCreate.vue:219 #: src/views/project/EditModal.vue:291 msgid "Restart Policy" msgstr "" #: src/views/container/ContainerCreate.vue:223 msgid "Select restart policy" msgstr "" #: src/views/container/ContainerCreate.vue:227 msgid "Container Options" msgstr "" #: src/views/container/ContainerCreate.vue:231 msgid "TTY (-t)" msgstr "" #: src/views/container/ContainerCreate.vue:236 msgid "STDIN (-i)" msgstr "" #: src/views/container/ContainerCreate.vue:241 msgid "Auto Remove" msgstr "" #: src/views/container/ContainerCreate.vue:246 msgid "Privileged" msgstr "" #: src/views/container/ContainerCreate.vue:255 #: src/views/container/ContainerCreate.vue:266 msgid "Port Mapping" msgstr "" #: src/views/container/ContainerCreate.vue:257 msgid "Port Mode" msgstr "" #: src/views/container/ContainerCreate.vue:259 msgid "Map Ports" msgstr "" #: src/views/container/ContainerCreate.vue:260 msgid "Expose All" msgstr "" #: src/views/container/ContainerCreate.vue:278 msgid "IP (optional)" msgstr "" #: src/views/container/ContainerCreate.vue:287 msgid "Host Start" msgstr "" #: src/views/container/ContainerCreate.vue:296 msgid "Host End" msgstr "" #: src/views/container/ContainerCreate.vue:305 msgid "Container Start" msgstr "" #: src/views/container/ContainerCreate.vue:314 msgid "Container End" msgstr "" #: src/views/container/ContainerCreate.vue:329 msgid "All exposed ports in the image will be automatically mapped to random host ports." msgstr "" #: src/views/container/ContainerCreate.vue:338 #: src/views/container/IndexView.vue:26 msgid "Volumes" msgstr "" #: src/views/container/ContainerCreate.vue:340 msgid "Volume Mounts" msgstr "" #: src/views/container/ContainerCreate.vue:350 msgid "Host path" msgstr "" #: src/views/container/ContainerCreate.vue:356 msgid "Container path" msgstr "" #: src/views/container/ContainerCreate.vue:371 msgid "Mount host directories or volumes into the container. Use absolute paths for host directories." msgstr "" #: src/views/container/ContainerCreate.vue:380 #: src/views/project/EditModal.vue:451 msgid "Resource Limits" msgstr "" #: src/views/container/ContainerCreate.vue:384 msgid "Set resource limits to prevent the container from consuming too many system resources. Set to 0 for no limit." msgstr "" #: src/views/container/ContainerCreate.vue:392 msgid "Memory (MB)" msgstr "" #: src/views/container/ContainerCreate.vue:397 #: src/views/container/ContainerCreate.vue:409 msgid "0 = no limit" msgstr "" #: src/views/container/ContainerCreate.vue:402 #: src/views/container/ContainerCreate.vue:431 msgid "CPU Cores" msgstr "" #: src/views/container/ContainerCreate.vue:414 #: src/views/container/ContainerCreate.vue:438 msgid "CPU Shares" msgstr "" #: src/views/container/ContainerCreate.vue:426 msgid "Resource Limit Description" msgstr "" #: src/views/container/ContainerCreate.vue:428 #: src/views/home/IndexView.vue:565 #: src/views/monitor/IndexView.vue:435 #: src/views/monitor/IndexView.vue:451 #: src/views/monitor/IndexView.vue:728 #: src/views/toolbox/BenchmarkView.vue:177 #: src/views/toolbox/ProcessView.vue:155 msgid "Memory" msgstr "" #: src/views/container/ContainerCreate.vue:429 msgid "Maximum memory the container can use, in MB. 0 means no limit." msgstr "" #: src/views/container/ContainerCreate.vue:433 msgid "Number of CPU cores the container can use. 0.5 means half a core, 2 means 2 cores." msgstr "" #: src/views/container/ContainerCreate.vue:440 msgid "Relative CPU weight. Default is 1024. Higher values get more CPU time when competing." msgstr "" #: src/views/container/ContainerCreate.vue:452 msgid "Environment" msgstr "" #: src/views/container/ContainerCreate.vue:464 #: src/views/project/EditModal.vue:383 msgid "Variable name" msgstr "" #: src/views/container/ContainerCreate.vue:470 #: src/views/project/EditModal.vue:389 msgid "Variable value" msgstr "" #: src/views/container/ContainerCreate.vue:478 msgid "Startup Commands" msgstr "" #: src/views/container/ContainerCreate.vue:480 msgid "Command" msgstr "" #: src/views/container/ContainerCreate.vue:483 msgid "Command argument" msgstr "" #: src/views/container/ContainerCreate.vue:487 msgid "Override the default CMD of the image" msgstr "" #: src/views/container/ContainerCreate.vue:492 msgid "Entrypoint" msgstr "" #: src/views/container/ContainerCreate.vue:495 msgid "Entrypoint argument" msgstr "" #: src/views/container/ContainerCreate.vue:499 msgid "Override the default ENTRYPOINT of the image" msgstr "" #: src/views/container/ContainerCreate.vue:504 #: src/views/container/NetworkView.vue:313 #: src/views/container/VolumeView.vue:212 msgid "Labels" msgstr "" #: src/views/container/ContainerCreate.vue:506 msgid "Container Labels" msgstr "" #: src/views/container/ContainerCreate.vue:516 msgid "Label name" msgstr "" #: src/views/container/ContainerCreate.vue:522 msgid "Label value" msgstr "" #: src/views/container/ContainerView.vue:81 msgid "Ports (Host->Container)" msgstr "" #: src/views/container/ContainerView.vue:176 #: src/views/container/ContainerView.vue:567 msgid "Force Stop" msgstr "" #: src/views/container/ContainerView.vue:181 #: src/views/container/ContainerView.vue:570 msgid "Pause" msgstr "" #: src/views/container/ContainerView.vue:186 #: src/views/container/ContainerView.vue:573 msgid "Resume" msgstr "" #: src/views/container/ContainerView.vue:231 #: src/views/file/ListView.vue:1590 msgid "More" msgstr "" #: src/views/container/ContainerView.vue:264 msgid "Rename successful" msgstr "" #: src/views/container/ContainerView.vue:272 #: src/views/container/ContainerView.vue:331 msgid "Start successful" msgstr "" #: src/views/container/ContainerView.vue:286 #: src/views/container/ContainerView.vue:349 msgid "Restart successful" msgstr "" #: src/views/container/ContainerView.vue:293 #: src/views/container/ContainerView.vue:358 msgid "Force stop successful" msgstr "" #: src/views/container/ContainerView.vue:300 #: src/views/container/ContainerView.vue:376 msgid "Pause successful" msgstr "" #: src/views/container/ContainerView.vue:307 #: src/views/container/ContainerView.vue:385 msgid "Resume successful" msgstr "" #: src/views/container/ContainerView.vue:321 #: src/views/container/ImageView.vue:146 #: src/views/container/NetworkView.vue:166 #: src/views/container/VolumeView.vue:119 msgid "Cleanup successful" msgstr "" #: src/views/container/ContainerView.vue:401 msgid "Terminal container not found" msgstr "" #: src/views/container/ContainerView.vue:484 msgid "Failed to connect to container terminal" msgstr "" #: src/views/container/ContainerView.vue:554 msgid "Cleanup Containers" msgstr "" #: src/views/container/ContainerView.vue:623 msgid "New Name" msgstr "" #: src/views/container/ContainerView.vue:628 msgid "Enter new name" msgstr "" #: src/views/container/ImagePullModal.vue:42 #: src/views/container/ImageView.vue:185 msgid "Connecting..." msgstr "" #: src/views/container/ImagePullModal.vue:48 #: src/views/container/ImageView.vue:195 msgid "Pulling image..." msgstr "" #: src/views/container/ImagePullModal.vue:61 #: src/views/container/ImageView.vue:208 msgid "Pull completed" msgstr "" #: src/views/container/ImagePullModal.vue:139 msgid "Pulling Image" msgstr "" #: src/views/container/ImagePullModal.vue:193 #: src/views/container/ImageView.vue:361 msgid "Pull Failed" msgstr "" #: src/views/container/ImagePullModal.vue:199 #: src/views/container/ImageView.vue:367 msgid "Retry" msgstr "" #: src/views/container/ImageView.vue:50 msgid "Container Count" msgstr "" #: src/views/container/ImageView.vue:105 #: src/views/container/NetworkView.vue:124 #: src/views/container/VolumeView.vue:78 #: src/views/firewall/ForwardView.vue:92 #: src/views/firewall/IpRuleView.vue:134 #: src/views/firewall/RuleView.vue:171 #: src/views/task/TaskView.vue:86 msgid "Are you sure you want to delete?" msgstr "" #: src/views/container/ImageView.vue:212 msgid "Pull successful" msgstr "" #: src/views/container/ImageView.vue:268 #: src/views/container/ImageView.vue:306 msgid "Pull Image" msgstr "" #: src/views/container/ImageView.vue:270 msgid "Cleanup Images" msgstr "" #: src/views/container/ImageView.vue:278 msgid "Are you sure you want to delete the selected images?" msgstr "" #: src/views/container/ImageView.vue:375 msgid "Image Name" msgstr "" #: src/views/container/ImageView.vue:380 msgid "docker.io/php:8.3-fpm" msgstr "" #: src/views/container/ImageView.vue:383 msgid "Authentication" msgstr "" #: src/views/container/IndexView.vue:22 msgid "Containers" msgstr "" #: src/views/container/IndexView.vue:24 msgid "Images" msgstr "" #: src/views/container/IndexView.vue:25 msgid "Networks" msgstr "" #: src/views/container/NetworkView.vue:52 #: src/views/container/NetworkView.vue:250 #: src/views/container/VolumeView.vue:33 #: src/views/container/VolumeView.vue:203 msgid "Driver" msgstr "" #: src/views/container/NetworkView.vue:59 #: src/views/container/VolumeView.vue:40 #: src/views/website/EditView.vue:1309 msgid "Scope" msgstr "" #: src/views/container/NetworkView.vue:66 #: src/views/container/NetworkView.vue:262 #: src/views/container/NetworkView.vue:289 msgid "Subnet" msgstr "" #: src/views/container/NetworkView.vue:83 #: src/views/container/NetworkView.vue:270 #: src/views/container/NetworkView.vue:297 msgid "Gateway" msgstr "" #: src/views/container/NetworkView.vue:201 #: src/views/container/NetworkView.vue:240 msgid "Create Network" msgstr "" #: src/views/container/NetworkView.vue:204 msgid "Cleanup Networks" msgstr "" #: src/views/container/NetworkView.vue:212 msgid "Are you sure you want to delete the selected networks?" msgstr "" #: src/views/container/NetworkView.vue:247 msgid "Network Name" msgstr "" #: src/views/container/NetworkView.vue:267 #: src/views/container/NetworkView.vue:283 msgid "172.16.10.0/24" msgstr "" #: src/views/container/NetworkView.vue:275 msgid "172.16.10.254" msgstr "" #: src/views/container/NetworkView.vue:278 #: src/views/container/NetworkView.vue:305 msgid "IP Range" msgstr "" #: src/views/container/NetworkView.vue:294 msgid "2408:400e::/48" msgstr "" #: src/views/container/NetworkView.vue:302 msgid "2408:400e::1" msgstr "" #: src/views/container/NetworkView.vue:310 msgid "2408:400e::/64" msgstr "" #: src/views/container/NetworkView.vue:317 #: src/views/container/VolumeView.vue:216 msgid "Label Name" msgstr "" #: src/views/container/NetworkView.vue:318 #: src/views/container/VolumeView.vue:217 msgid "Label Value" msgstr "" #: src/views/container/NetworkView.vue:325 #: src/views/container/VolumeView.vue:224 msgid "Option Name" msgstr "" #: src/views/container/NetworkView.vue:326 #: src/views/container/VolumeView.vue:225 msgid "Option Value" msgstr "" #: src/views/container/VolumeView.vue:47 #: src/views/home/IndexView.vue:680 #: src/views/toolbox/DiskView.vue:324 #: src/views/toolbox/DiskView.vue:822 msgid "Mount Point" msgstr "" #: src/views/container/VolumeView.vue:154 #: src/views/container/VolumeView.vue:193 msgid "Create Volume" msgstr "" #: src/views/container/VolumeView.vue:157 msgid "Cleanup Volumes" msgstr "" #: src/views/container/VolumeView.vue:165 msgid "Are you sure you want to delete the selected volumes?" msgstr "" #: src/views/container/VolumeView.vue:200 msgid "Volume Name" msgstr "" #: src/views/database/CreateDatabaseModal.vue:21 #: src/views/database/CreateUserModal.vue:21 msgid "Local (localhost)" msgstr "" #: src/views/database/CreateDatabaseModal.vue:22 #: src/views/database/CreateUserModal.vue:22 msgid "All (%)" msgstr "" #: src/views/database/CreateDatabaseModal.vue:23 #: src/views/database/CreateUserModal.vue:23 msgid "Specific" msgstr "" #: src/views/database/CreateDatabaseModal.vue:66 #: src/views/database/IndexView.vue:39 msgid "Create Database" msgstr "" #: src/views/database/CreateDatabaseModal.vue:78 #: src/views/database/CreateUserModal.vue:84 msgid "Select server" msgstr "" #: src/views/database/CreateDatabaseModal.vue:96 msgid "Authorized User" msgstr "" #: src/views/database/CreateDatabaseModal.vue:102 msgid "Enter authorized username (leave empty for no authorization)" msgstr "" #: src/views/database/CreateDatabaseModal.vue:123 #: src/views/database/CreateUserModal.vue:106 msgid "Generate" msgstr "" #: src/views/database/CreateDatabaseModal.vue:131 #: src/views/database/CreateUserModal.vue:114 msgid "Select host" msgstr "" #: src/views/database/CreateDatabaseModal.vue:138 #: src/views/database/CreateUserModal.vue:118 msgid "Specific Host" msgstr "" #: src/views/database/CreateDatabaseModal.vue:144 #: src/views/database/CreateUserModal.vue:123 msgid "Enter supported host address" msgstr "" #: src/views/database/CreateServerModal.vue:60 #: src/views/database/UpdateServerModal.vue:60 msgid "Enter database server name" msgstr "" #: src/views/database/CreateServerModal.vue:67 msgid "Select database type" msgstr "" #: src/views/database/CreateServerModal.vue:78 #: src/views/database/UpdateServerModal.vue:70 msgid "Enter database server host" msgstr "" #: src/views/database/CreateServerModal.vue:89 #: src/views/database/UpdateServerModal.vue:81 msgid "Enter database server port" msgstr "" #: src/views/database/CreateServerModal.vue:99 #: src/views/database/UpdateServerModal.vue:91 msgid "Enter database server username" msgstr "" #: src/views/database/CreateServerModal.vue:108 #: src/views/database/UpdateServerModal.vue:100 msgid "Enter database server password" msgstr "" #: src/views/database/CreateServerModal.vue:116 #: src/views/database/UpdateServerModal.vue:108 msgid "Enter database server comment" msgstr "" #: src/views/database/CreateUserModal.vue:76 #: src/views/database/UpdateUserModal.vue:51 msgid "If the privilege databases does not exist, it will be created automatically." msgstr "" #: src/views/database/CreateUserModal.vue:110 msgid "Host (MySQL only)" msgstr "" #: src/views/database/CreateUserModal.vue:126 #: src/views/database/UpdateUserModal.vue:64 #: src/views/database/UserList.vue:99 msgid "Privileges" msgstr "" #: src/views/database/CreateUserModal.vue:137 #: src/views/database/UpdateUserModal.vue:75 msgid "Enter database user comment" msgstr "" #: src/views/database/DatabaseList.vue:47 msgid "Encoding" msgstr "" #: src/views/database/DatabaseList.vue:69 msgid "MySQL does not support database comments" msgstr "" #: src/views/database/DatabaseList.vue:91 msgid "Are you sure you want to delete this database?" msgstr "" #: src/views/database/ServerList.vue:37 msgid "Unsupported database type" msgstr "" #: src/views/database/ServerList.vue:149 #: src/views/database/UserList.vue:138 msgid "Valid" msgstr "" #: src/views/database/ServerList.vue:149 #: src/views/database/UserList.vue:138 msgid "Invalid" msgstr "" #: src/views/database/ServerList.vue:186 #: src/views/toolbox/SystemView.vue:92 msgid "Synchronized successfully" msgstr "" #: src/views/database/ServerList.vue:192 msgid "Are you sure you want to synchronize database users (excluding password) to the panel?" msgstr "" #: src/views/database/ServerList.vue:205 msgid "Sync" msgstr "" #: src/views/database/ServerList.vue:233 msgid "Built-in servers cannot be deleted. If you need to delete them, please uninstall the corresponding app" msgstr "" #: src/views/database/ServerList.vue:244 msgid "Are you sure you want to delete the server?" msgstr "" #: src/views/database/UpdateServerModal.vue:47 msgid "Modify Server" msgstr "" #: src/views/database/UpdateUserModal.vue:41 msgid "Modify User" msgstr "" #: src/views/database/UserList.vue:61 msgid "Not saved" msgstr "" #: src/views/database/UserList.vue:179 msgid "Are you sure you want to delete the user?" msgstr "" #: src/views/environment/GoView.vue:16 msgid "Official (proxy.golang.org)" msgstr "" #: src/views/environment/GoView.vue:17 msgid "China - Qiniu (goproxy.cn)" msgstr "" #: src/views/environment/GoView.vue:19 #: src/views/environment/PythonView.vue:18 msgid "China - Alibaba (mirrors.aliyun.com)" msgstr "" #: src/views/environment/GoView.vue:23 #: src/views/environment/NodejsView.vue:22 #: src/views/environment/PythonView.vue:22 msgid "China - Tencent (mirrors.tencent.com)" msgstr "" #: src/views/environment/GoView.vue:46 #: src/views/environment/JavaView.vue:13 #: src/views/environment/NodejsView.vue:49 #: src/views/environment/PHPView.vue:136 #: src/views/environment/PythonView.vue:53 msgid "Set successfully" msgstr "" #: src/views/environment/GoView.vue:64 #: src/views/environment/JavaView.vue:27 #: src/views/environment/NodejsView.vue:67 #: src/views/environment/PHPView.vue:201 #: src/views/environment/PythonView.vue:71 msgid "Set as CLI Default Version" msgstr "" #: src/views/environment/GoView.vue:69 msgid "Proxy Settings" msgstr "" #: src/views/environment/GoView.vue:74 msgid "GOPROXY is used to configure the Go module proxy. Using a domestic mirror can speed up dependency downloads." msgstr "" #: src/views/environment/GoView.vue:79 msgid "Proxy Address" msgstr "" #: src/views/environment/GoView.vue:85 msgid "Select or enter proxy address" msgstr "" #: src/views/environment/JavaView.vue:31 msgid "Amazon Corretto is a no-cost, multiplatform, production-ready distribution of the Open Java Development Kit (OpenJDK)." msgstr "" #: src/views/environment/NodejsView.vue:16 msgid "Official (registry.npmjs.org)" msgstr "" #: src/views/environment/NodejsView.vue:18 msgid "China - npmmirror (npmmirror.com)" msgstr "" #: src/views/environment/NodejsView.vue:26 msgid "China - Huawei (repo.huaweicloud.com)" msgstr "" #: src/views/environment/NodejsView.vue:72 msgid "Registry Settings" msgstr "" #: src/views/environment/NodejsView.vue:77 msgid "npm registry is used to configure the npm package source. Using a domestic mirror can speed up package downloads." msgstr "" #: src/views/environment/NodejsView.vue:82 msgid "Registry Address" msgstr "" #: src/views/environment/NodejsView.vue:88 msgid "Select or enter registry address" msgstr "" #: src/views/environment/PHPView.vue:41 msgid "Module Name" msgstr "" #: src/views/environment/PHPView.vue:69 msgid "Are you sure you want to install %{ name }?" msgstr "" #: src/views/environment/PHPView.vue:94 msgid "Are you sure you want to uninstall %{ name }?" msgstr "" #: src/views/environment/PHPView.vue:178 #: src/views/environment/PHPView.vue:184 msgid "Task submitted, please check progress in background tasks" msgstr "" #: src/views/environment/PHPView.vue:204 msgid "View PHPInfo" msgstr "" #: src/views/environment/PHPView.vue:229 msgid "This modifies the PHP %{ version } main configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/environment/PHPView.vue:243 msgid "FPM Configuration" msgstr "" #: src/views/environment/PHPView.vue:247 msgid "This modifies the PHP %{ version } FPM configuration file. If you do not understand the meaning of each parameter, please do not modify it randomly!" msgstr "" #: src/views/environment/PHPView.vue:300 msgid "PHPInfo" msgstr "" #: src/views/environment/PythonView.vue:16 msgid "Official (pypi.org)" msgstr "" #: src/views/environment/PythonView.vue:26 msgid "China - Tsinghua (tuna.tsinghua.edu.cn)" msgstr "" #: src/views/environment/PythonView.vue:30 msgid "China - USTC (pypi.mirrors.ustc.edu.cn)" msgstr "" #: src/views/environment/PythonView.vue:76 msgid "Mirror Settings" msgstr "" #: src/views/environment/PythonView.vue:81 msgid "pip mirror is used to configure the Python package source. Using a domestic mirror can speed up package downloads." msgstr "" #: src/views/environment/PythonView.vue:86 msgid "Mirror Address" msgstr "" #: src/views/environment/PythonView.vue:92 msgid "Select or enter mirror address" msgstr "" #: src/views/error-page/NotFound.vue:11 msgid "Sorry, the page you visited does not exist." msgstr "" #: src/views/error-page/NotFound.vue:19 msgid "Back to Home" msgstr "" #: src/views/file/CompressModal.vue:41 msgid "Compressing..." msgstr "" #: src/views/file/CompressModal.vue:49 msgid "Compressed successfully" msgstr "" #: src/views/file/CompressModal.vue:73 #: src/views/file/CompressModal.vue:105 #: src/views/file/ListView.vue:308 #: src/views/file/ListView.vue:344 #: src/views/file/ListView.vue:983 #: src/views/file/ListView.vue:1560 #: src/views/file/ToolBar.vue:267 msgid "Compress" msgstr "" #: src/views/file/CompressModal.vue:81 msgid "Files to compress" msgstr "" #: src/views/file/CompressModal.vue:84 msgid "Compress to" msgstr "" #: src/views/file/CompressModal.vue:87 msgid "Format" msgstr "" #: src/views/file/EditModal.vue:97 msgid "File Editor" msgstr "" #: src/views/file/ListView.vue:238 #: src/views/file/ListView.vue:734 #: src/views/file/ListView.vue:802 #: src/views/file/ListView.vue:850 #: src/views/file/ToolBar.vue:113 msgid "Warning" msgstr "" #: src/views/file/ListView.vue:239 msgid "%{ name } has immutable attribute. The panel will temporarily remove the immutable attribute, perform the operation, and then restore the immutable attribute. Do you want to continue?" msgstr "" #: src/views/file/ListView.vue:243 #: src/views/file/UploadModal.vue:334 #: src/views/file/UploadModal.vue:443 msgid "Continue" msgstr "" #: src/views/file/ListView.vue:296 #: src/views/file/ListView.vue:314 #: src/views/file/ListView.vue:364 #: src/views/file/ToolBar.vue:262 msgid "Paste" msgstr "" #: src/views/file/ListView.vue:307 #: src/views/file/ListView.vue:341 #: src/views/file/ListView.vue:981 #: src/views/file/ToolBar.vue:266 msgid "Move" msgstr "" #: src/views/file/ListView.vue:309 #: src/views/file/ListView.vue:342 #: src/views/file/ListView.vue:982 #: src/views/file/ListView.vue:1378 #: src/views/file/PermissionModal.vue:144 #: src/views/file/PropertyModal.vue:42 #: src/views/file/ToolBar.vue:268 msgid "Permission" msgstr "" #: src/views/file/ListView.vue:326 #: src/views/file/ListView.vue:1547 msgid "Open" msgstr "" #: src/views/file/ListView.vue:328 #: src/views/file/ListView.vue:1566 msgid "Preview" msgstr "" #: src/views/file/ListView.vue:330 #: src/views/file/ListView.vue:348 #: src/views/file/ListView.vue:988 #: src/views/file/ListView.vue:1670 msgid "Uncompress" msgstr "" #: src/views/file/ListView.vue:359 #: src/views/file/ListView.vue:998 #: src/views/file/PropertyModal.vue:11 msgid "Properties" msgstr "" #: src/views/file/ListView.vue:645 #: src/views/file/ToolBar.vue:62 #: src/views/file/ToolBar.vue:79 msgid "Marked successfully, please navigate to the destination path to paste" msgstr "" #: src/views/file/ListView.vue:735 msgid "There are items with the same name. Do you want to overwrite?" msgstr "" #: src/views/file/ListView.vue:736 #: src/views/file/ListView.vue:860 #: src/views/file/ToolBar.vue:123 msgid "Overwrite" msgstr "" #: src/views/file/ListView.vue:743 #: src/views/file/ListView.vue:762 msgid "Renamed %{ source } to %{ target } successfully" msgstr "" #: src/views/file/ListView.vue:798 msgid "Some files are immutable and cannot be deleted" msgstr "" #: src/views/file/ListView.vue:803 msgid "Are you sure you want to delete %{count} items?" msgstr "" #: src/views/file/ListView.vue:822 msgid "Path copied to clipboard" msgstr "" #: src/views/file/ListView.vue:829 #: src/views/file/ToolBar.vue:89 msgid "Please mark the files/folders to copy or move first" msgstr "" #: src/views/file/ListView.vue:851 #: src/views/file/ToolBar.vue:114 msgid "There are items with the same name %{ items } Do you want to overwrite?" msgstr "" #: src/views/file/ListView.vue:873 #: src/views/file/ListView.vue:893 #: src/views/file/ToolBar.vue:136 #: src/views/file/ToolBar.vue:156 msgid "Moved successfully" msgstr "" #: src/views/file/ListView.vue:879 #: src/views/file/ToolBar.vue:142 msgid "Canceled" msgstr "" #: src/views/file/ListView.vue:991 msgid "Copy Path" msgstr "" #: src/views/file/ListView.vue:1233 msgid "Uncompressing..." msgstr "" #: src/views/file/ListView.vue:1240 msgid "Uncompressed successfully" msgstr "" #: src/views/file/ListView.vue:1601 msgid "No files" msgstr "" #: src/views/file/ListView.vue:1611 msgid "%{count} item(s) selected" msgstr "" #: src/views/file/ListView.vue:1614 msgid "Clear" msgstr "" #: src/views/file/ListView.vue:1619 msgid "%{count} item(s)" msgstr "" #: src/views/file/ListView.vue:1658 msgid "Uncompress - %{ file }" msgstr "" #: src/views/file/ListView.vue:1666 msgid "Uncompress to" msgstr "" #: src/views/file/ListView.vue:1678 #: src/views/file/ToolBar.vue:305 msgid "Terminal - %{ path }" msgstr "" #: src/views/file/PathInput.vue:139 msgid "Hide hidden files" msgstr "" #: src/views/file/PathInput.vue:139 msgid "Show hidden files" msgstr "" #: src/views/file/PathInput.vue:167 msgid "Enter search content" msgstr "" #: src/views/file/PathInput.vue:170 msgid "Include subdirectories" msgstr "" #: src/views/file/PermissionModal.vue:93 msgid "Modify permissions" msgstr "" #: src/views/file/PermissionModal.vue:96 msgid "Batch modify permissions" msgstr "" #: src/views/file/PermissionModal.vue:97 msgid "Modify permissions - %{ path }" msgstr "" #: src/views/file/PermissionModal.vue:117 #: src/views/file/PermissionModal.vue:147 #: src/views/file/PropertyModal.vue:45 msgid "Owner" msgstr "" #: src/views/file/PermissionModal.vue:119 #: src/views/file/PermissionModal.vue:128 #: src/views/file/PermissionModal.vue:137 #: src/views/home/IndexView.vue:171 #: src/views/home/IndexView.vue:187 #: src/views/home/IndexView.vue:879 #: src/views/monitor/IndexView.vue:535 msgid "Read" msgstr "" #: src/views/file/PermissionModal.vue:120 #: src/views/file/PermissionModal.vue:129 #: src/views/file/PermissionModal.vue:138 #: src/views/home/IndexView.vue:171 #: src/views/home/IndexView.vue:211 #: src/views/home/IndexView.vue:880 #: src/views/monitor/IndexView.vue:544 msgid "Write" msgstr "" #: src/views/file/PermissionModal.vue:121 #: src/views/file/PermissionModal.vue:130 #: src/views/file/PermissionModal.vue:139 msgid "Execute" msgstr "" #: src/views/file/PermissionModal.vue:135 msgid "Others" msgstr "" #: src/views/file/PreviewModal.vue:31 msgid "Preview - " msgstr "" #: src/views/file/PropertyModal.vue:12 msgid "Properties - %{ name }" msgstr "" #: src/views/file/PropertyModal.vue:30 msgid "Full Path" msgstr "" #: src/views/file/PropertyModal.vue:36 msgid "Symlink" msgstr "" #: src/views/file/PropertyModal.vue:54 msgid "Hidden" msgstr "" #: src/views/file/PropertyModal.vue:57 msgid "Immutable" msgstr "" #: src/views/file/ToolBar.vue:45 msgid "Download task created successfully" msgstr "" #: src/views/file/ToolBar.vue:51 msgid "Please select files/folders to copy" msgstr "" #: src/views/file/ToolBar.vue:68 msgid "Please select files/folders to move" msgstr "" #: src/views/file/ToolBar.vue:208 msgid "Sort" msgstr "" #: src/views/file/ToolBar.vue:233 #: src/views/file/ToolBar.vue:284 msgid "Remote Download" msgstr "" #: src/views/file/ToolBar.vue:252 msgid "Switch to grid view" msgstr "" #: src/views/file/ToolBar.vue:253 msgid "Switch to list view" msgstr "" #: src/views/file/ToolBar.vue:275 msgid "Are you sure you want to delete in bulk?" msgstr "" #: src/views/file/ToolBar.vue:292 msgid "Download URL" msgstr "" #: src/views/file/ToolBar.vue:295 msgid "Save as" msgstr "" #: src/views/file/UploadModal.vue:301 #: src/views/file/UploadModal.vue:403 msgid "Upload %{ fileName } successful" msgstr "" #: src/views/file/UploadModal.vue:329 #: src/views/file/UploadModal.vue:438 msgid "Confirm Upload" msgstr "" #: src/views/file/UploadModal.vue:330 #: src/views/file/UploadModal.vue:439 msgid "You are about to upload %{count} files. This may take a while. Do you want to continue?" msgstr "" #: src/views/file/UploadModal.vue:475 msgid "Preparing..." msgstr "" #: src/views/file/UploadModal.vue:493 msgid "For large files, it is recommended to use SFTP and other methods to upload" msgstr "" #: src/views/firewall/CreateForwardModal.vue:50 #: src/views/firewall/ForwardView.vue:163 msgid "Create Forwarding" msgstr "" #: src/views/firewall/CreateForwardModal.vue:58 #: src/views/firewall/CreateIpModal.vue:100 #: src/views/firewall/CreateModal.vue:112 #: src/views/firewall/ForwardView.vue:14 #: src/views/firewall/IpRuleView.vue:14 #: src/views/firewall/RuleView.vue:14 msgid "Transport Protocol" msgstr "" #: src/views/firewall/CreateForwardModal.vue:61 #: src/views/firewall/ForwardView.vue:43 msgid "Target IP" msgstr "" #: src/views/firewall/CreateForwardModal.vue:66 msgid "Source Port" msgstr "" #: src/views/firewall/CreateForwardModal.vue:76 #: src/views/firewall/ForwardView.vue:61 msgid "Target Port" msgstr "" #: src/views/firewall/CreateIpModal.vue:38 #: src/views/firewall/CreateModal.vue:38 #: src/views/firewall/IpRuleView.vue:68 #: src/views/firewall/RuleView.vue:102 msgid "Accept" msgstr "" #: src/views/firewall/CreateIpModal.vue:42 #: src/views/firewall/CreateModal.vue:42 #: src/views/firewall/IpRuleView.vue:70 #: src/views/firewall/RuleView.vue:104 msgid "Drop" msgstr "" #: src/views/firewall/CreateIpModal.vue:46 #: src/views/firewall/CreateModal.vue:46 #: src/views/firewall/IpRuleView.vue:72 #: src/views/firewall/RuleView.vue:106 msgid "Reject" msgstr "" #: src/views/firewall/CreateIpModal.vue:53 #: src/views/firewall/CreateModal.vue:53 #: src/views/firewall/IpRuleView.vue:97 #: src/views/firewall/RuleView.vue:131 msgid "Inbound" msgstr "" #: src/views/firewall/CreateIpModal.vue:57 #: src/views/firewall/CreateModal.vue:57 #: src/views/firewall/IpRuleView.vue:99 #: src/views/firewall/RuleView.vue:133 msgid "Outbound" msgstr "" #: src/views/firewall/CreateIpModal.vue:81 #: src/views/firewall/CreateModal.vue:93 msgid "%{ address } created successfully" msgstr "" #: src/views/firewall/CreateIpModal.vue:92 #: src/views/firewall/CreateModal.vue:104 #: src/views/firewall/IpRuleView.vue:205 #: src/views/firewall/RuleView.vue:242 msgid "Create Rule" msgstr "" #: src/views/firewall/CreateIpModal.vue:103 #: src/views/firewall/CreateModal.vue:115 #: src/views/firewall/IpRuleView.vue:31 #: src/views/firewall/RuleView.vue:31 msgid "Network Protocol" msgstr "" #: src/views/firewall/CreateIpModal.vue:106 msgid "IP Address" msgstr "" #: src/views/firewall/CreateIpModal.vue:110 #: src/views/firewall/CreateModal.vue:144 msgid "IP or IP range: 172.16.0.1 or 172.16.0.0/16" msgstr "" #: src/views/firewall/CreateIpModal.vue:113 #: src/views/firewall/CreateModal.vue:147 #: src/views/firewall/IpRuleView.vue:48 #: src/views/firewall/RuleView.vue:82 msgid "Strategy" msgstr "" #: src/views/firewall/CreateIpModal.vue:116 #: src/views/firewall/CreateModal.vue:150 #: src/views/firewall/IpRuleView.vue:84 #: src/views/firewall/RuleView.vue:118 msgid "Direction" msgstr "" #: src/views/firewall/CreateModal.vue:120 msgid "Start Port" msgstr "" #: src/views/firewall/CreateModal.vue:130 msgid "End Port" msgstr "" #: src/views/firewall/CreateModal.vue:140 #: src/views/firewall/IpRuleView.vue:109 #: src/views/firewall/RuleView.vue:143 #: src/views/website/EditView.vue:1090 msgid "Target" msgstr "" #: src/views/firewall/ForwardView.vue:135 #: src/views/firewall/IpRuleView.vue:177 #: src/views/firewall/RuleView.vue:214 msgid "Please select rules to delete" msgstr "" #: src/views/firewall/ForwardView.vue:168 #: src/views/firewall/IpRuleView.vue:210 #: src/views/firewall/RuleView.vue:247 msgid "Batch Delete" msgstr "" #: src/views/firewall/ForwardView.vue:171 #: src/views/firewall/IpRuleView.vue:213 #: src/views/firewall/RuleView.vue:250 msgid "Are you sure you want to batch delete?" msgstr "" #: src/views/firewall/IndexView.vue:20 msgid "Port Rules" msgstr "" #: src/views/firewall/IndexView.vue:21 msgid "IP Rules" msgstr "" #: src/views/firewall/IndexView.vue:22 msgid "Port Forwarding" msgstr "" #: src/views/firewall/IpRuleView.vue:74 #: src/views/firewall/RuleView.vue:108 msgid "Mark" msgstr "" #: src/views/firewall/RuleView.vue:73 msgid "In Use" msgstr "" #: src/views/firewall/RuleView.vue:75 msgid "Not Used" msgstr "" #: src/views/firewall/SettingView.vue:21 #: src/views/firewall/SettingView.vue:27 msgid "Settings saved successfully" msgstr "" #: src/views/firewall/SettingView.vue:34 msgid "System Firewall" msgstr "" #: src/views/firewall/SettingView.vue:37 msgid "Allow Ping" msgstr "" #: src/views/home/IndexView.vue:74 msgid "Order updated" msgstr "" #: src/views/home/IndexView.vue:135 msgid "Running blocked" msgstr "" #: src/views/home/IndexView.vue:137 msgid "Running slowly" msgstr "" #: src/views/home/IndexView.vue:139 msgid "Running normally" msgstr "" #: src/views/home/IndexView.vue:141 msgid "Running smoothly" msgstr "" #: src/views/home/IndexView.vue:147 #: src/views/home/IndexView.vue:835 #: src/views/home/IndexView.vue:855 #: src/views/toolbox/BenchmarkView.vue:203 #: src/views/toolbox/DiskView.vue:798 #: src/views/toolbox/IndexView.vue:26 msgid "Disk" msgstr "" #: src/views/home/IndexView.vue:170 #: src/views/home/IndexView.vue:187 msgid "Send" msgstr "" #: src/views/home/IndexView.vue:170 #: src/views/home/IndexView.vue:211 msgid "Receive" msgstr "" #: src/views/home/IndexView.vue:179 msgid "Unit %{unit}" msgstr "" #: src/views/home/IndexView.vue:193 #: src/views/home/IndexView.vue:217 #: src/views/monitor/IndexView.vue:361 #: src/views/monitor/IndexView.vue:414 #: src/views/monitor/IndexView.vue:460 msgid "Maximum" msgstr "" #: src/views/home/IndexView.vue:194 #: src/views/home/IndexView.vue:218 #: src/views/monitor/IndexView.vue:362 #: src/views/monitor/IndexView.vue:415 #: src/views/monitor/IndexView.vue:461 msgid "Minimum" msgstr "" #: src/views/home/IndexView.vue:198 #: src/views/home/IndexView.vue:222 #: src/views/monitor/IndexView.vue:366 #: src/views/monitor/IndexView.vue:419 #: src/views/monitor/IndexView.vue:465 msgid "Average" msgstr "" #: src/views/home/IndexView.vue:330 msgid "Panel restarting..." msgstr "" #: src/views/home/IndexView.vue:332 msgid "Panel restarted successfully" msgstr "" #: src/views/home/IndexView.vue:344 msgid "Current version is the latest" msgstr "" #: src/views/home/IndexView.vue:426 msgid "Your operating system %{ os_name } has reached its end-of-life. Please consider upgrading to a supported version to ensure optimal performance and security." msgstr "" #: src/views/home/IndexView.vue:437 msgid "Your operating system %{ os_name } is not officially supported. Some features may not work as expected. Please consider using a supported operating system for the best experience." msgstr "" #: src/views/home/IndexView.vue:462 #: src/views/task/IndexView.vue:23 msgid "Scheduled Tasks" msgstr "" #: src/views/home/IndexView.vue:471 msgid "Sponsor Support" msgstr "" #: src/views/home/IndexView.vue:477 msgid "Are you sure you want to restart the panel?" msgstr "" #: src/views/home/IndexView.vue:485 msgid "Resource Overview" msgstr "" #: src/views/home/IndexView.vue:503 msgid "Last 1 minute" msgstr "" #: src/views/home/IndexView.vue:510 msgid "Last 5 minutes" msgstr "" #: src/views/home/IndexView.vue:517 msgid "Last 15 minutes" msgstr "" #: src/views/home/IndexView.vue:536 #: src/views/home/IndexView.vue:548 msgid "cores" msgstr "" #: src/views/home/IndexView.vue:542 msgid "Model" msgstr "" #: src/views/home/IndexView.vue:546 msgid "Parameters" msgstr "" #: src/views/home/IndexView.vue:549 msgid "cache" msgstr "" #: src/views/home/IndexView.vue:555 #: src/views/monitor/IndexView.vue:405 #: src/views/toolbox/DiskView.vue:301 msgid "Usage" msgstr "" #: src/views/home/IndexView.vue:556 msgid "Frequency" msgstr "" #: src/views/home/IndexView.vue:578 msgid "Active" msgstr "" #: src/views/home/IndexView.vue:584 #: src/views/project/ListView.vue:74 msgid "Inactive" msgstr "" #: src/views/home/IndexView.vue:590 #: src/views/toolbox/DiskView.vue:254 msgid "Free" msgstr "" #: src/views/home/IndexView.vue:596 msgid "Shared" msgstr "" #: src/views/home/IndexView.vue:602 msgid "Committed" msgstr "" #: src/views/home/IndexView.vue:608 msgid "Commit Limit" msgstr "" #: src/views/home/IndexView.vue:614 msgid "SWAP Size" msgstr "" #: src/views/home/IndexView.vue:620 msgid "SWAP Used" msgstr "" #: src/views/home/IndexView.vue:626 msgid "SWAP Available" msgstr "" #: src/views/home/IndexView.vue:632 msgid "Physical Memory Size" msgstr "" #: src/views/home/IndexView.vue:638 msgid "Physical Memory Used" msgstr "" #: src/views/home/IndexView.vue:644 msgid "Physical Memory Available" msgstr "" #: src/views/home/IndexView.vue:684 msgid "File System" msgstr "" #: src/views/home/IndexView.vue:688 msgid "Inodes Usage" msgstr "" #: src/views/home/IndexView.vue:692 msgid "Inodes Total" msgstr "" #: src/views/home/IndexView.vue:696 msgid "Inodes Used" msgstr "" #: src/views/home/IndexView.vue:700 msgid "Inodes Available" msgstr "" #: src/views/home/IndexView.vue:718 msgid "Quick Apps" msgstr "" #: src/views/home/IndexView.vue:761 msgid "You have not set any apps to display here!" msgstr "" #: src/views/home/IndexView.vue:765 msgid "Environment Information" msgstr "" #: src/views/home/IndexView.vue:768 #: src/views/toolbox/SystemView.vue:183 msgid "System Hostname" msgstr "" #: src/views/home/IndexView.vue:774 msgid "System Version" msgstr "" #: src/views/home/IndexView.vue:783 msgid "System Kernel Version" msgstr "" #: src/views/home/IndexView.vue:789 msgid "System Uptime" msgstr "" #: src/views/home/IndexView.vue:795 msgid "Panel Internal Version" msgstr "" #: src/views/home/IndexView.vue:807 msgid "Panel Compile Information" msgstr "" #: src/views/home/IndexView.vue:824 msgid "Real-time Monitoring" msgstr "" #: src/views/home/IndexView.vue:838 msgid "Unit" msgstr "" #: src/views/home/IndexView.vue:846 msgid "Network Card" msgstr "" #: src/views/home/IndexView.vue:866 msgid "Total Sent" msgstr "" #: src/views/home/IndexView.vue:868 msgid "Total Received" msgstr "" #: src/views/home/IndexView.vue:871 msgid "Real-time Sent" msgstr "" #: src/views/home/IndexView.vue:875 msgid "Real-time Received" msgstr "" #: src/views/home/IndexView.vue:882 msgid "Real-time Read/Write" msgstr "" #: src/views/home/IndexView.vue:885 msgid "Read/Write Latency" msgstr "" #: src/views/home/UpdateView.vue:24 msgid "Update Panel" msgstr "" #: src/views/home/UpdateView.vue:25 msgid "Are you sure you want to update the panel?" msgstr "" #: src/views/home/UpdateView.vue:29 msgid "Panel updating..." msgstr "" #: src/views/home/UpdateView.vue:40 msgid "Panel updated successfully" msgstr "" #: src/views/home/UpdateView.vue:47 msgid "Update canceled" msgstr "" #: src/views/home/UpdateView.vue:73 msgid "Update Now" msgstr "" #: src/views/home/UpdateView.vue:80 msgid "Loading update information, please wait a moment" msgstr "" #: src/views/log/DatabaseLog.vue:31 #: src/views/log/HttpLog.vue:39 #: src/views/log/OperationLog.vue:34 #: src/views/toolbox/SystemView.vue:197 msgid "Time" msgstr "" #: src/views/log/DatabaseLog.vue:40 #: src/views/log/OperationLog.vue:43 msgid "Level" msgstr "" #: src/views/log/DatabaseLog.vue:54 msgid "Query" msgstr "" #: src/views/log/DatabaseLog.vue:64 #: src/views/log/HttpLog.vue:86 msgid "Duration" msgstr "" #: src/views/log/DatabaseLog.vue:77 msgid "Rows" msgstr "" #: src/views/log/DatabaseLog.vue:95 #: src/views/log/HttpLog.vue:120 #: src/views/log/OperationLog.vue:93 msgid "Show entries" msgstr "" #: src/views/log/HttpLog.vue:48 msgid "Method" msgstr "" #: src/views/log/HttpLog.vue:100 msgid "Client IP" msgstr "" #: src/views/log/IndexView.vue:22 msgid "Operation Log" msgstr "" #: src/views/log/IndexView.vue:23 msgid "Database Log" msgstr "" #: src/views/log/IndexView.vue:24 msgid "HTTP Log" msgstr "" #: src/views/log/OperationLog.vue:65 msgid "Operator" msgstr "" #: src/views/log/OperationLog.vue:70 #: src/views/toolbox/IndexView.vue:24 msgid "System" msgstr "" #: src/views/log/OperationLog.vue:76 msgid "Message" msgstr "" #: src/views/login/IndexView.vue:67 msgid "Please enter username and password" msgstr "" #: src/views/login/IndexView.vue:72 msgid "Please enter captcha code" msgstr "" #: src/views/login/IndexView.vue:77 msgid "Failed to get encryption public key, please refresh the page and try again" msgstr "" #: src/views/login/IndexView.vue:92 msgid "Login successful!" msgstr "" #: src/views/login/IndexView.vue:186 msgid "2FA Code" msgstr "" #: src/views/login/IndexView.vue:196 msgid "Captcha Code" msgstr "" #: src/views/login/IndexView.vue:211 msgid "Safe Login" msgstr "" #: src/views/login/IndexView.vue:212 msgid "Remember Me" msgstr "" #: src/views/monitor/IndexView.vue:355 msgid "1 minute" msgstr "" #: src/views/monitor/IndexView.vue:370 msgid "5 minutes" msgstr "" #: src/views/monitor/IndexView.vue:376 msgid "15 minutes" msgstr "" #: src/views/monitor/IndexView.vue:395 msgid "Usage %" msgstr "" #: src/views/monitor/IndexView.vue:441 msgid "Unit MB" msgstr "" #: src/views/monitor/IndexView.vue:573 #: src/views/monitor/IndexView.vue:579 msgid "Operation successful" msgstr "" #: src/views/monitor/IndexView.vue:590 msgid "Enable Monitoring" msgstr "" #: src/views/monitor/IndexView.vue:594 msgid "Save Days" msgstr "" #: src/views/monitor/IndexView.vue:596 msgid "days" msgstr "" #: src/views/monitor/IndexView.vue:608 msgid "Clear Monitoring Records" msgstr "" #: src/views/monitor/IndexView.vue:611 #: src/views/website/EditView.vue:1374 msgid "Are you sure you want to clear?" msgstr "" #: src/views/monitor/IndexView.vue:622 msgid "Load" msgstr "" #: src/views/monitor/IndexView.vue:628 #: src/views/monitor/IndexView.vue:682 #: src/views/monitor/IndexView.vue:734 #: src/views/monitor/IndexView.vue:790 #: src/views/monitor/IndexView.vue:857 msgid "Yesterday" msgstr "" #: src/views/monitor/IndexView.vue:634 #: src/views/monitor/IndexView.vue:688 #: src/views/monitor/IndexView.vue:740 #: src/views/monitor/IndexView.vue:796 #: src/views/monitor/IndexView.vue:863 msgid "Today" msgstr "" #: src/views/monitor/IndexView.vue:640 #: src/views/monitor/IndexView.vue:694 #: src/views/monitor/IndexView.vue:746 #: src/views/monitor/IndexView.vue:802 #: src/views/monitor/IndexView.vue:869 msgid "Last 7 Days" msgstr "" #: src/views/monitor/IndexView.vue:784 msgid "Disk I/O" msgstr "" #: src/views/project/CreateModal.vue:16 msgid "Source Code" msgstr "" #: src/views/project/CreateModal.vue:17 msgid "Binary" msgstr "" #: src/views/project/CreateModal.vue:272 msgid "Please enter at least one domain" msgstr "" #: src/views/project/CreateModal.vue:276 msgid "Please enter the project port" msgstr "" #: src/views/project/CreateModal.vue:287 msgid "Auto-created for project: %{ name }" msgstr "" #: src/views/project/CreateModal.vue:307 msgid "Project created successfully" msgstr "" #: src/views/project/CreateModal.vue:350 msgid "Create General Project" msgstr "" #: src/views/project/CreateModal.vue:351 msgid "Create Go Project" msgstr "" #: src/views/project/CreateModal.vue:352 msgid "Create Java Project" msgstr "" #: src/views/project/CreateModal.vue:353 msgid "Create Node.js Project" msgstr "" #: src/views/project/CreateModal.vue:354 msgid "Create PHP Project" msgstr "" #: src/views/project/CreateModal.vue:355 msgid "Create Python Project" msgstr "" #: src/views/project/CreateModal.vue:357 #: src/views/project/ListView.vue:301 msgid "Create Project" msgstr "" #: src/views/project/CreateModal.vue:373 #: src/views/project/EditModal.vue:179 msgid "Project Name" msgstr "" #: src/views/project/CreateModal.vue:378 #: src/views/project/EditModal.vue:184 msgid "Project name, used as service identifier" msgstr "" #: src/views/project/CreateModal.vue:382 #: src/views/project/EditModal.vue:198 msgid "Project Directory" msgstr "" #: src/views/project/CreateModal.vue:389 msgid "Project root directory (if left empty, defaults to project directory/project name)" msgstr "" #: src/views/project/CreateModal.vue:404 msgid "Run Mode" msgstr "" #: src/views/project/CreateModal.vue:419 msgid "Go Version" msgstr "" #: src/views/project/CreateModal.vue:423 msgid "Select Go Version" msgstr "" #: src/views/project/CreateModal.vue:429 msgid "Entry File" msgstr "" #: src/views/project/CreateModal.vue:434 msgid "e.g., main.go, cmd/server/main.go" msgstr "" #: src/views/project/CreateModal.vue:446 msgid "Java Version" msgstr "" #: src/views/project/CreateModal.vue:450 msgid "Select Java Version" msgstr "" #: src/views/project/CreateModal.vue:456 #: src/views/project/CreateModal.vue:482 #: src/views/project/CreateModal.vue:508 #: src/views/project/CreateModal.vue:534 msgid "Framework" msgstr "" #: src/views/project/CreateModal.vue:460 #: src/views/project/CreateModal.vue:486 #: src/views/project/CreateModal.vue:512 #: src/views/project/CreateModal.vue:538 msgid "Select Framework" msgstr "" #: src/views/project/CreateModal.vue:472 msgid "Node.js Version" msgstr "" #: src/views/project/CreateModal.vue:476 msgid "Select Node.js Version" msgstr "" #: src/views/project/CreateModal.vue:498 #: src/views/website/CreateModal.vue:158 #: src/views/website/EditView.vue:587 msgid "PHP Version" msgstr "" #: src/views/project/CreateModal.vue:502 #: src/views/website/CreateModal.vue:162 #: src/views/website/EditView.vue:592 msgid "Select PHP Version" msgstr "" #: src/views/project/CreateModal.vue:524 msgid "Python Version" msgstr "" #: src/views/project/CreateModal.vue:528 msgid "Select Python Version" msgstr "" #: src/views/project/CreateModal.vue:554 #: src/views/project/EditModal.vue:240 msgid "Select User" msgstr "" #: src/views/project/CreateModal.vue:559 msgid "Select www user if no special requirements" msgstr "" #: src/views/project/CreateModal.vue:568 #: src/views/project/EditModal.vue:255 msgid "e.g., php artisan serve, node app.js" msgstr "" #: src/views/project/CreateModal.vue:571 #: src/views/website/IndexView.vue:21 msgid "Reverse Proxy" msgstr "" #: src/views/project/CreateModal.vue:575 msgid "Automatically create a reverse proxy website for this project" msgstr "" #: src/views/project/CreateModal.vue:593 msgid "Project Port" msgstr "" #: src/views/project/CreateModal.vue:599 msgid "e.g., 3000" msgstr "" #: src/views/project/EditModal.vue:52 msgid "No restart" msgstr "" #: src/views/project/EditModal.vue:53 msgid "Always restart" msgstr "" #: src/views/project/EditModal.vue:54 msgid "Restart on failure" msgstr "" #: src/views/project/EditModal.vue:55 msgid "Restart on abnormal" msgstr "" #: src/views/project/EditModal.vue:56 msgid "Restart on abort" msgstr "" #: src/views/project/EditModal.vue:57 msgid "Restart on success" msgstr "" #: src/views/project/EditModal.vue:66 msgid "File (append)" msgstr "" #: src/views/project/EditModal.vue:67 msgid "File (truncate)" msgstr "" #: src/views/project/EditModal.vue:72 #: src/views/setting/SettingSafe.vue:262 msgid "Disabled" msgstr "" #: src/views/project/EditModal.vue:166 msgid "Edit Project - %{ name }" msgstr "" #: src/views/project/EditModal.vue:194 msgid "Project description" msgstr "" #: src/views/project/EditModal.vue:204 msgid "Project root directory" msgstr "" #: src/views/project/EditModal.vue:221 msgid "Working directory (optional, defaults to project directory)" msgstr "" #: src/views/project/EditModal.vue:248 msgid "Runtime Settings" msgstr "" #: src/views/project/EditModal.vue:258 msgid "Pre-start Command" msgstr "" #: src/views/project/EditModal.vue:263 msgid "Command to run before starting (optional)" msgstr "" #: src/views/project/EditModal.vue:266 msgid "Post-start Command" msgstr "" #: src/views/project/EditModal.vue:271 msgid "Command to run after starting (optional)" msgstr "" #: src/views/project/EditModal.vue:274 msgid "Stop Command" msgstr "" #: src/views/project/EditModal.vue:279 msgid "Custom stop command (optional)" msgstr "" #: src/views/project/EditModal.vue:282 msgid "Reload Command" msgstr "" #: src/views/project/EditModal.vue:287 msgid "Custom reload command (optional)" msgstr "" #: src/views/project/EditModal.vue:295 msgid "Restart Strategy" msgstr "" #: src/views/project/EditModal.vue:304 msgid "Restart Interval" msgstr "" #: src/views/project/EditModal.vue:309 msgid "e.g., 5s, 1min" msgstr "" #: src/views/project/EditModal.vue:316 msgid "Max Restarts" msgstr "" #: src/views/project/EditModal.vue:326 msgid "Start Timeout (s)" msgstr "" #: src/views/project/EditModal.vue:336 msgid "Stop Timeout (s)" msgstr "" #: src/views/project/EditModal.vue:347 msgid "Other" msgstr "" #: src/views/project/EditModal.vue:351 msgid "Standard Output" msgstr "" #: src/views/project/EditModal.vue:362 msgid "Standard Error" msgstr "" #: src/views/project/EditModal.vue:400 msgid "Dependencies" msgstr "" #: src/views/project/EditModal.vue:404 msgid "Configure service dependencies to control startup order. Common services: network.target, mysql.service, redis.service" msgstr "" #: src/views/project/EditModal.vue:410 msgid "Requires" msgstr "" #: src/views/project/EditModal.vue:415 msgid "Strong dependencies, service will fail if these are not available" msgstr "" #: src/views/project/EditModal.vue:421 msgid "Wants" msgstr "" #: src/views/project/EditModal.vue:425 msgid "Weak dependencies, service will still start if these fail" msgstr "" #: src/views/project/EditModal.vue:430 msgid "After" msgstr "" #: src/views/project/EditModal.vue:434 msgid "Start this service after the specified services" msgstr "" #: src/views/project/EditModal.vue:439 msgid "Before" msgstr "" #: src/views/project/EditModal.vue:443 msgid "Start this service before the specified services" msgstr "" #: src/views/project/EditModal.vue:455 msgid "Set resource limits to prevent the service from consuming too many system resources" msgstr "" #: src/views/project/EditModal.vue:463 msgid "Memory Limit (MB)" msgstr "" #: src/views/project/EditModal.vue:469 msgid "0 means no limit" msgstr "" #: src/views/project/EditModal.vue:473 msgid "Set to 0 to disable memory limit" msgstr "" #: src/views/project/EditModal.vue:479 msgid "CPU Quota" msgstr "" #: src/views/project/EditModal.vue:484 msgid "e.g., 50% or 200%" msgstr "" #: src/views/project/EditModal.vue:488 msgid "100% = 1 CPU core, 200% = 2 cores" msgstr "" #: src/views/project/EditModal.vue:498 msgid "Security Settings" msgstr "" #: src/views/project/EditModal.vue:502 msgid "Security settings can enhance service isolation but may affect functionality. Please test thoroughly before enabling." msgstr "" #: src/views/project/EditModal.vue:508 msgid "Privilege Control" msgstr "" #: src/views/project/EditModal.vue:512 msgid "No New Privileges" msgstr "" #: src/views/project/EditModal.vue:517 msgid "Protect /tmp" msgstr "" #: src/views/project/EditModal.vue:522 msgid "Protect /home" msgstr "" #: src/views/project/EditModal.vue:528 msgid "Protect System" msgstr "" #: src/views/project/EditModal.vue:537 msgid "true: /usr, /boot read-only; full: + /etc read-only; strict: entire filesystem read-only" msgstr "" #: src/views/project/EditModal.vue:545 msgid "Path Access Control" msgstr "" #: src/views/project/EditModal.vue:547 msgid "Read-Write Paths" msgstr "" #: src/views/project/EditModal.vue:551 msgid "Paths that the service can read and write to" msgstr "" #: src/views/project/EditModal.vue:556 msgid "Read-Only Paths" msgstr "" #: src/views/project/EditModal.vue:560 msgid "Paths that the service can only read from" msgstr "" #: src/views/project/IndexView.vue:22 #: src/views/project/ListView.vue:24 msgid "General" msgstr "" #: src/views/project/IndexView.vue:23 msgid "Go" msgstr "" #: src/views/project/IndexView.vue:24 msgid "Java" msgstr "" #: src/views/project/IndexView.vue:25 msgid "Node.js" msgstr "" #: src/views/project/IndexView.vue:26 #: src/views/website/IndexView.vue:22 msgid "PHP" msgstr "" #: src/views/project/IndexView.vue:27 msgid "Python" msgstr "" #: src/views/project/ListView.vue:72 #: src/views/task/TaskView.vue:32 msgid "Failed" msgstr "" #: src/views/project/ListView.vue:82 msgid "Autostart" msgstr "" #: src/views/project/ListView.vue:189 msgid "Are you sure you want to delete project %{ name }?" msgstr "" #: src/views/project/ListView.vue:251 msgid "Autostart enabled" msgstr "" #: src/views/project/ListView.vue:256 msgid "Autostart disabled" msgstr "" #: src/views/project/ListView.vue:309 msgid "Are you sure you want to delete the selected projects?" msgstr "" #: src/views/setting/CreateModal.vue:44 msgid "Enter user name" msgstr "" #: src/views/setting/CreateModal.vue:53 #: src/views/setting/PasswordModal.vue:40 msgid "Enter user password" msgstr "" #: src/views/setting/CreateModal.vue:60 msgid "Enter user email" msgstr "" #: src/views/setting/IndexView.vue:69 msgid "Panel is restarting, page will refresh in 5 seconds" msgstr "" #: src/views/setting/IndexView.vue:92 msgid "Safe" msgstr "" #: src/views/setting/SettingBase.vue:56 msgid "Stable" msgstr "" #: src/views/setting/SettingBase.vue:60 msgid "Beta" msgstr "" #: src/views/setting/SettingBase.vue:114 #: src/views/setting/SettingBase.vue:115 msgid "Panel Name" msgstr "" #: src/views/setting/SettingBase.vue:120 msgid "Update Channel" msgstr "" #: src/views/setting/SettingBase.vue:124 msgid "8888" msgstr "" #: src/views/setting/SettingBase.vue:126 msgid "Default Website Directory" msgstr "" #: src/views/setting/SettingBase.vue:128 msgid "/opt/ace/sites" msgstr "" #: src/views/setting/SettingBase.vue:136 msgid "Default Backup Directory" msgstr "" #: src/views/setting/SettingBase.vue:138 msgid "/opt/ace/backup" msgstr "" #: src/views/setting/SettingBase.vue:146 msgid "Default Project Directory" msgstr "" #: src/views/setting/SettingBase.vue:150 msgid "/opt/ace/projects" msgstr "" #: src/views/setting/SettingBase.vue:159 msgid "Custom Logo" msgstr "" #: src/views/setting/SettingBase.vue:162 msgid "Please enter the complete URL" msgstr "" #: src/views/setting/SettingBase.vue:165 msgid "Hide Menu" msgstr "" #: src/views/setting/SettingSafe.vue:42 msgid "Login Timeout" msgstr "" #: src/views/setting/SettingSafe.vue:47 msgid "Set the maximum lifetime (in minutes) of the login state, after which you need to log in again" msgstr "" #: src/views/setting/SettingSafe.vue:55 msgid "120" msgstr "" #: src/views/setting/SettingSafe.vue:61 msgid "minutes" msgstr "" #: src/views/setting/SettingSafe.vue:70 msgid "Access Entrance" msgstr "" #: src/views/setting/SettingSafe.vue:75 msgid "Set the access entrance of the panel (e.g. /mypanel) to prevent some malicious access. Leave blank to disable (not recommended)" msgstr "" #: src/views/setting/SettingSafe.vue:88 msgid "Entrance Error Page" msgstr "" #: src/views/setting/SettingSafe.vue:93 msgid "Set the error page to display when accessing with wrong entrance. 418 shows teapot page, Nginx 404 shows nginx style 404 page, Close Connection will close the connection immediately" msgstr "" #: src/views/setting/SettingSafe.vue:102 #: src/views/setting/SettingSafe.vue:106 msgid "418 I'm a teapot" msgstr "" #: src/views/setting/SettingSafe.vue:103 msgid "Nginx 404" msgstr "" #: src/views/setting/SettingSafe.vue:104 msgid "Close Connection" msgstr "" #: src/views/setting/SettingSafe.vue:114 msgid "Login Captcha" msgstr "" #: src/views/setting/SettingSafe.vue:119 msgid "When enabled, a captcha will be required after 3 failed login attempts to prevent brute force attacks" msgstr "" #: src/views/setting/SettingSafe.vue:132 msgid "Request IP Header" msgstr "" #: src/views/setting/SettingSafe.vue:137 msgid "Set the header that carries the real IP of the client, useful when using CDN or reverse proxy. Leave blank to use the client IP directly" msgstr "" #: src/views/setting/SettingSafe.vue:143 msgid "X-Real-IP" msgstr "" #: src/views/setting/SettingSafe.vue:150 msgid "Bind Domain" msgstr "" #: src/views/setting/SettingSafe.vue:155 msgid "Restrict panel access to the specified domain names. Leave blank to allow access from any domain" msgstr "" #: src/views/setting/SettingSafe.vue:172 msgid "Bind IP" msgstr "" #: src/views/setting/SettingSafe.vue:177 msgid "Restrict panel access to the specified IP addresses. Leave blank to allow access from any IP" msgstr "" #: src/views/setting/SettingSafe.vue:190 msgid "Bind UA" msgstr "" #: src/views/setting/SettingSafe.vue:195 msgid "Restrict panel access to the specified User-Agent strings. Leave blank to allow access from any User-Agent" msgstr "" #: src/views/setting/SettingSafe.vue:212 msgid "Offline Mode" msgstr "" #: src/views/setting/SettingSafe.vue:217 msgid "When enabled, the panel will not attempt to connect to external services for updates or other features. This may limit some functionalities" msgstr "" #: src/views/setting/SettingSafe.vue:230 msgid "Auto Update" msgstr "" #: src/views/setting/SettingSafe.vue:235 msgid "When enabled, the panel will automatically check for and install updates when they are available. It is recommended to keep this enabled to ensure you have the latest features and security patches" msgstr "" #: src/views/setting/SettingSafe.vue:248 msgid "Panel HTTPS" msgstr "" #: src/views/setting/SettingSafe.vue:253 msgid "Enable HTTPS for the panel. ACME will automatically obtain and renew the certificate daily (requires panel accessible via public IP). Custom allows you to provide your own certificate" msgstr "" #: src/views/setting/SettingSafe.vue:263 msgid "ACME (Auto)" msgstr "" #: src/views/setting/SettingSafe.vue:264 msgid "Custom Certificate" msgstr "" #: src/views/setting/SettingSafe.vue:272 #: src/views/setting/SettingSafe.vue:277 msgid "Panel Public IP" msgstr "" #: src/views/setting/SettingSafe.vue:282 msgid "Panel public IP is used to issue HTTPS certificates using ACME. Ensure that the entered IP address is accessible from the public network." msgstr "" #: src/views/setting/SettingUser.vue:53 msgid "2FA" msgstr "" #: src/views/setting/SettingUser.vue:67 msgid "Disabled successfully" msgstr "" #: src/views/setting/SettingUser.vue:102 #: src/views/setting/TokenModal.vue:202 msgid "Access Tokens" msgstr "" #: src/views/setting/SettingUser.vue:128 msgid "Are you sure you want to delete this user?" msgstr "" #: src/views/setting/TokenModal.vue:27 msgid "ID" msgstr "" #: src/views/setting/TokenModal.vue:80 msgid "Are you sure you want to delete this access token?" msgstr "" #: src/views/setting/TokenModal.vue:142 msgid "Token is only displayed once, please save it before closing the dialog." msgstr "" #: src/views/setting/TokenModal.vue:159 msgid "Copy and close" msgstr "" #: src/views/setting/TokenModal.vue:166 msgid "Copy failed" msgstr "" #: src/views/setting/TokenModal.vue:212 #: src/views/setting/TokenModal.vue:240 msgid "Create Access Token" msgstr "" #: src/views/setting/TokenModal.vue:249 #: src/views/setting/TokenModal.vue:282 msgid "IP White List" msgstr "" #: src/views/setting/TokenModal.vue:252 #: src/views/setting/TokenModal.vue:285 msgid "127.0.0.1" msgstr "" #: src/views/setting/TokenModal.vue:260 #: src/views/setting/TokenModal.vue:293 msgid "Please select the expiration time" msgstr "" #: src/views/setting/TokenModal.vue:273 msgid "Modify Access Token" msgstr "" #: src/views/setting/TwoFaModal.vue:46 msgid "Enable 2FA" msgstr "" #: src/views/setting/TwoFaModal.vue:57 msgid "QR Code" msgstr "" #: src/views/setting/TwoFaModal.vue:62 msgid "Scan the QR code with your 2FA app and enter the code below" msgstr "" #: src/views/setting/TwoFaModal.vue:66 msgid "If you cannot scan the QR code, please enter the URL below in your 2FA app" msgstr "" #: src/views/setting/TwoFaModal.vue:79 msgid "Code" msgstr "" #: src/views/setting/TwoFaModal.vue:83 msgid "Enter the code" msgstr "" #: src/views/ssh/CreateModal.vue:52 #: src/views/ssh/IndexView.vue:281 msgid "Create Host" msgstr "" #: src/views/ssh/CreateModal.vue:75 #: src/views/ssh/UpdateModal.vue:81 msgid "Authentication Method" msgstr "" #: src/views/ssh/CreateModal.vue:94 #: src/views/ssh/UpdateModal.vue:100 msgid "Passphrase" msgstr "" #: src/views/ssh/CreateModal.vue:99 #: src/views/ssh/UpdateModal.vue:105 msgid "Leave empty if key has no passphrase" msgstr "" #: src/views/ssh/CreateModal.vue:102 #: src/views/ssh/UpdateModal.vue:108 msgid "Remarks" msgstr "" #: src/views/ssh/IndexView.vue:41 msgid "Please create a host first" msgstr "" #: src/views/ssh/IndexView.vue:80 msgid "Are you sure you want to delete this host?" msgstr "" #: src/views/ssh/IndexView.vue:194 msgid "Connection closed. Please refresh." msgstr "" #: src/views/ssh/IndexView.vue:199 msgid "Connection error. Please refresh." msgstr "" #: src/views/ssh/UpdateModal.vue:58 msgid "Update Host" msgstr "" #: src/views/task/CreateModal.vue:22 msgid "# Enter your script content here" msgstr "" #: src/views/task/CreateModal.vue:75 msgid "Backup Website" msgstr "" #: src/views/task/CreateModal.vue:76 msgid "Backup MySQL" msgstr "" #: src/views/task/CreateModal.vue:77 msgid "Backup PostgreSQL" msgstr "" #: src/views/task/CreateModal.vue:83 #: src/views/task/CreateModal.vue:84 #: src/views/task/CreateModal.vue:138 #: src/views/task/CronView.vue:48 msgid "Log Rotation" msgstr "" #: src/views/task/CreateModal.vue:125 msgid "Create Scheduled Task" msgstr "" #: src/views/task/CreateModal.vue:132 #: src/views/task/CronView.vue:32 msgid "Task Type" msgstr "" #: src/views/task/CreateModal.vue:136 #: src/views/task/CronView.vue:45 msgid "Run Script" msgstr "" #: src/views/task/CreateModal.vue:137 #: src/views/task/CronView.vue:47 msgid "Backup Data" msgstr "" #: src/views/task/CreateModal.vue:143 #: src/views/task/CreateModal.vue:144 #: src/views/task/CronView.vue:25 #: src/views/task/CronView.vue:250 #: src/views/task/CronView.vue:251 #: src/views/task/TaskView.vue:15 msgid "Task Name" msgstr "" #: src/views/task/CreateModal.vue:146 #: src/views/task/CronView.vue:69 #: src/views/task/CronView.vue:253 msgid "Task Schedule" msgstr "" #: src/views/task/CreateModal.vue:150 msgid "Script Content" msgstr "" #: src/views/task/CreateModal.vue:153 msgid "Backup Type" msgstr "" #: src/views/task/CreateModal.vue:157 msgid "MySQL Database" msgstr "" #: src/views/task/CreateModal.vue:160 msgid "PostgreSQL Database" msgstr "" #: src/views/task/CreateModal.vue:190 msgid "Retention Count" msgstr "" #: src/views/task/CronView.vue:55 #: src/views/toolbox/WebHookView.vue:87 #: src/views/toolbox/WebHookView.vue:382 msgid "Enabled" msgstr "" #: src/views/task/CronView.vue:89 msgid "Last Update Time" msgstr "" #: src/views/task/CronView.vue:138 msgid "Are you sure you want to delete this task?" msgstr "" #: src/views/task/CronView.vue:243 msgid "Edit Task" msgstr "" #: src/views/task/IndexView.vue:30 msgid "Create Task" msgstr "" #: src/views/task/TaskView.vue:28 msgid "Completed" msgstr "" #: src/views/task/TaskView.vue:30 #: src/views/toolbox/ProcessView.vue:53 #: src/views/toolbox/ProcessView.vue:92 msgid "Waiting" msgstr "" #: src/views/task/TaskView.vue:46 msgid "Completion Time" msgstr "" #: src/views/task/TaskView.vue:134 msgid "If logs cannot be loaded, please disable ad blockers!" msgstr "" #: src/views/toolbox/BenchmarkView.vue:12 #: src/views/toolbox/BenchmarkView.vue:117 msgid "CPU" msgstr "" #: src/views/toolbox/BenchmarkView.vue:43 #: src/views/toolbox/BenchmarkView.vue:44 #: src/views/toolbox/BenchmarkView.vue:50 #: src/views/toolbox/BenchmarkView.vue:51 #: src/views/toolbox/BenchmarkView.vue:54 #: src/views/toolbox/BenchmarkView.vue:55 #: src/views/toolbox/BenchmarkView.vue:58 #: src/views/toolbox/BenchmarkView.vue:59 #: src/views/toolbox/BenchmarkView.vue:113 #: src/views/toolbox/BenchmarkView.vue:173 #: src/views/toolbox/BenchmarkView.vue:199 msgid "Pending benchmark" msgstr "" #: src/views/toolbox/BenchmarkView.vue:89 msgid "Benchmark results are for reference only and may differ from actual performance due to system resource scheduling, caching, and other factors!" msgstr "" #: src/views/toolbox/BenchmarkView.vue:96 msgid "Benchmarking in progress, it may take some time..." msgstr "" #: src/views/toolbox/BenchmarkView.vue:99 msgid "Current project: %{ current }" msgstr "" #: src/views/toolbox/BenchmarkView.vue:122 msgid "Image Processing" msgstr "" #: src/views/toolbox/BenchmarkView.vue:128 msgid "Machine Learning" msgstr "" #: src/views/toolbox/BenchmarkView.vue:134 msgid "Program Compilation" msgstr "" #: src/views/toolbox/BenchmarkView.vue:140 msgid "AES Encryption" msgstr "" #: src/views/toolbox/BenchmarkView.vue:146 msgid "Compression/Decompression" msgstr "" #: src/views/toolbox/BenchmarkView.vue:152 msgid "Physics Simulation" msgstr "" #: src/views/toolbox/BenchmarkView.vue:158 msgid "JSON Parsing" msgstr "" #: src/views/toolbox/BenchmarkView.vue:182 msgid "Memory Bandwidth" msgstr "" #: src/views/toolbox/BenchmarkView.vue:186 msgid "Memory Latency" msgstr "" #: src/views/toolbox/BenchmarkView.vue:208 msgid "4KB Read" msgstr "" #: src/views/toolbox/BenchmarkView.vue:214 msgid "4KB Write" msgstr "" #: src/views/toolbox/BenchmarkView.vue:220 msgid "64KB Read" msgstr "" #: src/views/toolbox/BenchmarkView.vue:226 msgid "64KB Write" msgstr "" #: src/views/toolbox/BenchmarkView.vue:232 msgid "1MB Read" msgstr "" #: src/views/toolbox/BenchmarkView.vue:238 msgid "1MB Write" msgstr "" #: src/views/toolbox/BenchmarkView.vue:257 msgid "Benchmarking..." msgstr "" #: src/views/toolbox/BenchmarkView.vue:257 msgid "Start Benchmark" msgstr "" #: src/views/toolbox/DiskView.vue:109 msgid "Failed to parse disk data, please refresh and try again" msgstr "" #: src/views/toolbox/DiskView.vue:270 msgid "Partition Name" msgstr "" #: src/views/toolbox/DiskView.vue:283 msgid "Used" msgstr "" #: src/views/toolbox/DiskView.vue:292 msgid "Available" msgstr "" #: src/views/toolbox/DiskView.vue:309 msgid "Not Mounted" msgstr "" #: src/views/toolbox/DiskView.vue:332 #: src/views/toolbox/DiskView.vue:823 msgid "Filesystem" msgstr "" #: src/views/toolbox/DiskView.vue:385 #: src/views/toolbox/DiskView.vue:537 #: src/views/toolbox/DiskView.vue:581 #: src/views/toolbox/DiskView.vue:630 msgid "Please fill in all fields" msgstr "" #: src/views/toolbox/DiskView.vue:390 msgid "Are you sure you want to mount %{ device } to %{ path } and write to fstab for auto-mount on boot?" msgstr "" #: src/views/toolbox/DiskView.vue:397 msgid "Are you sure you want to mount %{ device } to %{ path }?" msgstr "" #: src/views/toolbox/DiskView.vue:411 msgid "Mounted successfully" msgstr "" #: src/views/toolbox/DiskView.vue:429 msgid "Are you sure you want to unmount this partition?" msgstr "" #: src/views/toolbox/DiskView.vue:434 msgid "Unmounted successfully" msgstr "" #: src/views/toolbox/DiskView.vue:444 #: src/views/toolbox/DiskView.vue:495 msgid "Please select a device" msgstr "" #: src/views/toolbox/DiskView.vue:449 #: src/views/toolbox/DiskView.vue:474 #: src/views/toolbox/DiskView.vue:519 #: src/views/toolbox/DiskView.vue:562 #: src/views/toolbox/DiskView.vue:611 #: src/views/toolbox/DiskView.vue:658 msgid "Dangerous Operation" msgstr "" #: src/views/toolbox/DiskView.vue:450 msgid "Formatting will erase all data on the partition. This operation is irreversible. Are you sure?" msgstr "" #: src/views/toolbox/DiskView.vue:453 msgid "Confirm Format" msgstr "" #: src/views/toolbox/DiskView.vue:457 msgid "Formatted successfully" msgstr "" #: src/views/toolbox/DiskView.vue:469 msgid "Please enter disk name" msgstr "" #: src/views/toolbox/DiskView.vue:475 msgid "This will delete all partitions on %{ device } and create a single partition. All data will be permanently lost. Are you absolutely sure?" msgstr "" #: src/views/toolbox/DiskView.vue:479 msgid "Confirm Initialize" msgstr "" #: src/views/toolbox/DiskView.vue:483 msgid "Disk initialized successfully" msgstr "" #: src/views/toolbox/DiskView.vue:501 msgid "Are you sure you want to create a physical volume on %{ device }?" msgstr "" #: src/views/toolbox/DiskView.vue:508 msgid "Physical volume created successfully" msgstr "" #: src/views/toolbox/DiskView.vue:520 msgid "Are you sure you want to remove the physical volume %{ device }?" msgstr "" #: src/views/toolbox/DiskView.vue:527 msgid "Physical volume removed successfully" msgstr "" #: src/views/toolbox/DiskView.vue:543 msgid "Are you sure you want to create volume group %{ name }?" msgstr "" #: src/views/toolbox/DiskView.vue:550 msgid "Volume group created successfully" msgstr "" #: src/views/toolbox/DiskView.vue:563 msgid "Are you sure you want to remove the volume group %{ name }? All logical volumes in this group will be deleted!" msgstr "" #: src/views/toolbox/DiskView.vue:571 msgid "Volume group removed successfully" msgstr "" #: src/views/toolbox/DiskView.vue:587 msgid "Are you sure you want to create logical volume %{ name } with %{ size }GB?" msgstr "" #: src/views/toolbox/DiskView.vue:598 msgid "Logical volume created successfully" msgstr "" #: src/views/toolbox/DiskView.vue:612 msgid "Are you sure you want to remove the logical volume %{ path }? All data on this volume will be lost!" msgstr "" #: src/views/toolbox/DiskView.vue:620 msgid "Logical volume removed successfully" msgstr "" #: src/views/toolbox/DiskView.vue:636 msgid "Are you sure you want to extend %{ path } by %{ size }GB?" msgstr "" #: src/views/toolbox/DiskView.vue:645 msgid "Logical volume extended successfully" msgstr "" #: src/views/toolbox/DiskView.vue:659 msgid "Are you sure you want to remove the fstab entry for %{ mountPoint }? This will prevent auto-mount on boot." msgstr "" #: src/views/toolbox/DiskView.vue:667 msgid "Fstab entry removed successfully" msgstr "" #: src/views/toolbox/DiskView.vue:678 msgid "Disk Management" msgstr "" #: src/views/toolbox/DiskView.vue:684 msgid "Disk Name: " msgstr "" #: src/views/toolbox/DiskView.vue:686 msgid "System Disk" msgstr "" #: src/views/toolbox/DiskView.vue:692 msgid "Size: " msgstr "" #: src/views/toolbox/DiskView.vue:693 msgid "Partitions: " msgstr "" #: src/views/toolbox/DiskView.vue:694 msgid "Disk Type: " msgstr "" #: src/views/toolbox/DiskView.vue:709 msgid "This is the system disk and cannot be operated on." msgstr "" #: src/views/toolbox/DiskView.vue:714 msgid "No disks found" msgstr "" #: src/views/toolbox/DiskView.vue:717 msgid "Mount Partition" msgstr "" #: src/views/toolbox/DiskView.vue:720 #: src/views/toolbox/DiskView.vue:765 msgid "Partition" msgstr "" #: src/views/toolbox/DiskView.vue:724 #: src/views/toolbox/DiskView.vue:769 msgid "Select partition" msgstr "" #: src/views/toolbox/DiskView.vue:732 msgid "e.g., /mnt/data" msgstr "" #: src/views/toolbox/DiskView.vue:736 msgid "Mount Options" msgstr "" #: src/views/toolbox/DiskView.vue:739 msgid "e.g., defaults,noatime" msgstr "" #: src/views/toolbox/DiskView.vue:743 msgid "Auto-mount on boot" msgstr "" #: src/views/toolbox/DiskView.vue:747 msgid "Mount" msgstr "" #: src/views/toolbox/DiskView.vue:753 msgid "When enabled, the partition UUID will be written to /etc/fstab for automatic mounting on system boot." msgstr "" #: src/views/toolbox/DiskView.vue:760 msgid "Format Partition" msgstr "" #: src/views/toolbox/DiskView.vue:762 msgid "Warning: Formatting will erase all data!" msgstr "" #: src/views/toolbox/DiskView.vue:774 #: src/views/toolbox/DiskView.vue:807 msgid "Filesystem Type" msgstr "" #: src/views/toolbox/DiskView.vue:783 msgctxt "disk action" msgid "Format" msgstr "" #: src/views/toolbox/DiskView.vue:789 msgid "Initialize Disk" msgstr "" #: src/views/toolbox/DiskView.vue:792 msgid "Warning: This will delete all partitions and create a single partition. All data will be lost!" msgstr "" #: src/views/toolbox/DiskView.vue:802 msgid "Select disk" msgstr "" #: src/views/toolbox/DiskView.vue:811 msgid "Initialize" msgstr "" #: src/views/toolbox/DiskView.vue:816 msgid "Auto-mount Configuration (fstab)" msgstr "" #: src/views/toolbox/DiskView.vue:821 #: src/views/toolbox/DiskView.vue:879 msgid "Device" msgstr "" #: src/views/toolbox/DiskView.vue:839 #: src/views/toolbox/DiskView.vue:869 #: src/views/toolbox/DiskView.vue:907 #: src/views/toolbox/DiskView.vue:952 #: src/views/website/EditView.vue:725 #: src/views/website/EditView.vue:885 #: src/views/website/EditView.vue:1259 msgid "Remove" msgstr "" #: src/views/toolbox/DiskView.vue:849 msgid "No fstab entries" msgstr "" #: src/views/toolbox/DiskView.vue:856 msgid "LVM Management" msgstr "" #: src/views/toolbox/DiskView.vue:858 #: src/views/toolbox/DiskView.vue:924 msgid "Physical Volumes" msgstr "" #: src/views/toolbox/DiskView.vue:875 msgid "No physical volumes" msgstr "" #: src/views/toolbox/DiskView.vue:883 msgid "Select device" msgstr "" #: src/views/toolbox/DiskView.vue:889 msgid "Create PV" msgstr "" #: src/views/toolbox/DiskView.vue:895 msgid "Volume Groups" msgstr "" #: src/views/toolbox/DiskView.vue:913 msgid "No volume groups" msgstr "" #: src/views/toolbox/DiskView.vue:917 msgid "VG Name" msgstr "" #: src/views/toolbox/DiskView.vue:920 msgid "Enter VG name" msgstr "" #: src/views/toolbox/DiskView.vue:928 msgid "Select PVs" msgstr "" #: src/views/toolbox/DiskView.vue:935 msgid "Create VG" msgstr "" #: src/views/toolbox/DiskView.vue:941 msgid "Logical Volumes" msgstr "" #: src/views/toolbox/DiskView.vue:958 msgid "No logical volumes" msgstr "" #: src/views/toolbox/DiskView.vue:962 msgid "LV Name" msgstr "" #: src/views/toolbox/DiskView.vue:965 msgid "Enter LV name" msgstr "" #: src/views/toolbox/DiskView.vue:969 msgid "Volume Group" msgstr "" #: src/views/toolbox/DiskView.vue:973 msgid "Select VG" msgstr "" #: src/views/toolbox/DiskView.vue:978 msgid "Size (GB)" msgstr "" #: src/views/toolbox/DiskView.vue:982 msgid "Create LV" msgstr "" #: src/views/toolbox/DiskView.vue:988 msgid "Extend Logical Volume" msgstr "" #: src/views/toolbox/DiskView.vue:990 msgid "Logical Volume" msgstr "" #: src/views/toolbox/DiskView.vue:994 msgid "Select LV" msgstr "" #: src/views/toolbox/DiskView.vue:999 msgid "Extend Size (GB)" msgstr "" #: src/views/toolbox/DiskView.vue:1002 msgid "Auto Resize Filesystem" msgstr "" #: src/views/toolbox/DiskView.vue:1006 msgid "Extend LV" msgstr "" #: src/views/toolbox/IndexView.vue:23 msgid "Process" msgstr "" #: src/views/toolbox/IndexView.vue:27 msgid "Log Clean" msgstr "" #: src/views/toolbox/IndexView.vue:28 msgid "WebHook" msgstr "" #: src/views/toolbox/IndexView.vue:29 msgid "Benchmark" msgstr "" #: src/views/toolbox/LogView.vue:38 msgid "Panel Logs" msgstr "" #: src/views/toolbox/LogView.vue:39 msgid "Panel runtime logs" msgstr "" #: src/views/toolbox/LogView.vue:44 msgid "Website Logs" msgstr "" #: src/views/toolbox/LogView.vue:45 msgid "Website access and error logs" msgstr "" #: src/views/toolbox/LogView.vue:50 msgid "MySQL Logs" msgstr "" #: src/views/toolbox/LogView.vue:51 msgid "MySQL slow query logs and binary logs" msgstr "" #: src/views/toolbox/LogView.vue:56 msgid "Docker" msgstr "" #: src/views/toolbox/LogView.vue:57 msgid "Docker container logs and unused images" msgstr "" #: src/views/toolbox/LogView.vue:62 msgid "System Logs" msgstr "" #: src/views/toolbox/LogView.vue:63 msgid "System logs and journal logs" msgstr "" #: src/views/toolbox/LogView.vue:88 msgid "Scan failed" msgstr "" #: src/views/toolbox/LogView.vue:100 msgid "Cleaned: %{ size }" msgstr "" #: src/views/toolbox/LogView.vue:104 msgid "Clean failed" msgstr "" #: src/views/toolbox/LogView.vue:144 msgid "Scan All" msgstr "" #: src/views/toolbox/LogView.vue:155 msgid "Clean All" msgstr "" #: src/views/toolbox/LogView.vue:172 msgid "Scan" msgstr "" #: src/views/toolbox/LogView.vue:184 msgid "Clean" msgstr "" #: src/views/toolbox/LogView.vue:195 msgid "Scanning..." msgstr "" #: src/views/toolbox/LogView.vue:201 msgid "No logs found" msgstr "" #: src/views/toolbox/LogView.vue:219 msgid "Click Scan to check logs" msgstr "" #: src/views/toolbox/ProcessView.vue:47 msgid "All Status" msgstr "" #: src/views/toolbox/ProcessView.vue:49 #: src/views/toolbox/ProcessView.vue:84 msgid "Sleeping" msgstr "" #: src/views/toolbox/ProcessView.vue:51 #: src/views/toolbox/ProcessView.vue:88 msgid "Idle" msgstr "" #: src/views/toolbox/ProcessView.vue:52 #: src/views/toolbox/ProcessView.vue:90 msgid "Zombie" msgstr "" #: src/views/toolbox/ProcessView.vue:54 #: src/views/toolbox/ProcessView.vue:94 msgid "Locked" msgstr "" #: src/views/toolbox/ProcessView.vue:61 msgid "View Details" msgstr "" #: src/views/toolbox/ProcessView.vue:63 msgid "Terminate (SIGTERM)" msgstr "" #: src/views/toolbox/ProcessView.vue:64 msgid "Kill (SIGKILL)" msgstr "" #: src/views/toolbox/ProcessView.vue:66 msgid "Stop (SIGSTOP)" msgstr "" #: src/views/toolbox/ProcessView.vue:67 msgid "Continue (SIGCONT)" msgstr "" #: src/views/toolbox/ProcessView.vue:69 msgid "Interrupt (SIGINT)" msgstr "" #: src/views/toolbox/ProcessView.vue:70 msgid "Hang Up (SIGHUP)" msgstr "" #: src/views/toolbox/ProcessView.vue:71 msgid "User Signal 1 (SIGUSR1)" msgstr "" #: src/views/toolbox/ProcessView.vue:72 msgid "User Signal 2 (SIGUSR2)" msgstr "" #: src/views/toolbox/ProcessView.vue:82 msgid "Blocked" msgstr "" #: src/views/toolbox/ProcessView.vue:117 #: src/views/toolbox/ProcessView.vue:385 msgid "Parent PID" msgstr "" #: src/views/toolbox/ProcessView.vue:124 #: src/views/toolbox/ProcessView.vue:397 msgid "Threads" msgstr "" #: src/views/toolbox/ProcessView.vue:165 #: src/views/toolbox/ProcessView.vue:418 msgid "Start Time" msgstr "" #: src/views/toolbox/ProcessView.vue:237 msgid "Are you sure you want to send %{ signal } to process %{ pid }?" msgstr "" #: src/views/toolbox/ProcessView.vue:247 msgid "Signal %{ signal } has been sent to process %{ pid }" msgstr "" #: src/views/toolbox/ProcessView.vue:315 msgid "Search by PID or name" msgstr "" #: src/views/toolbox/ProcessView.vue:374 msgid "Process Details" msgstr "" #: src/views/toolbox/ProcessView.vue:403 msgid "Memory (RSS)" msgstr "" #: src/views/toolbox/ProcessView.vue:406 msgid "Virtual Memory" msgstr "" #: src/views/toolbox/ProcessView.vue:409 msgid "Swap" msgstr "" #: src/views/toolbox/ProcessView.vue:412 msgid "Disk Read" msgstr "" #: src/views/toolbox/ProcessView.vue:415 msgid "Disk Write" msgstr "" #: src/views/toolbox/ProcessView.vue:421 msgid "Executable Path" msgstr "" #: src/views/toolbox/ProcessView.vue:431 msgid "Command Line" msgstr "" #: src/views/toolbox/ProcessView.vue:448 msgid "No environment variables" msgstr "" #: src/views/toolbox/ProcessView.vue:456 msgid "Open Files" msgstr "" #: src/views/toolbox/ProcessView.vue:464 msgid "No open files" msgstr "" #: src/views/toolbox/ProcessView.vue:472 msgid "Network Connections" msgstr "" #: src/views/toolbox/ProcessView.vue:485 msgid "No network connections" msgstr "" #: src/views/toolbox/SshView.vue:36 msgid "Allow SSH login" msgstr "" #: src/views/toolbox/SshView.vue:37 msgid "Disable SSH login" msgstr "" #: src/views/toolbox/SshView.vue:39 msgid "Only allow key login" msgstr "" #: src/views/toolbox/SshView.vue:43 msgid "Only allow key login with predefined commands" msgstr "" #: src/views/toolbox/SshView.vue:72 msgid "SSH port updated" msgstr "" #: src/views/toolbox/SshView.vue:90 msgid "Password authentication updated" msgstr "" #: src/views/toolbox/SshView.vue:102 msgid "Key authentication updated" msgstr "" #: src/views/toolbox/SshView.vue:114 msgid "Root login setting updated" msgstr "" #: src/views/toolbox/SshView.vue:123 msgid "Please enter a password" msgstr "" #: src/views/toolbox/SshView.vue:130 msgid "Root password updated" msgstr "" #: src/views/toolbox/SshView.vue:150 #: src/views/toolbox/SshView.vue:164 msgid "SSH key generated" msgstr "" #: src/views/toolbox/SshView.vue:173 msgid "No SSH key found" msgstr "" #: src/views/toolbox/SshView.vue:202 msgid "SSH Settings" msgstr "" #: src/views/toolbox/SshView.vue:207 msgid "SSH Password Login" msgstr "" #: src/views/toolbox/SshView.vue:214 msgid "Allow password authentication for SSH login" msgstr "" #: src/views/toolbox/SshView.vue:219 msgid "SSH Key Login" msgstr "" #: src/views/toolbox/SshView.vue:226 msgid "Allow key authentication for SSH login" msgstr "" #: src/views/toolbox/SshView.vue:231 msgid "SSH Port" msgstr "" #: src/views/toolbox/SshView.vue:242 msgid "Current SSH port, default is 22" msgstr "" #: src/views/toolbox/SshView.vue:248 msgid "Root Settings" msgstr "" #: src/views/toolbox/SshView.vue:252 msgid "Root Password Login Setting" msgstr "" #: src/views/toolbox/SshView.vue:269 msgid "Enter new password" msgstr "" #: src/views/toolbox/SshView.vue:282 msgid "Reset" msgstr "" #: src/views/toolbox/SshView.vue:287 msgid "It is recommended to use a complex password. Refresh will clear the password field." msgstr "" #: src/views/toolbox/SshView.vue:296 msgid "Root Key" msgstr "" #: src/views/toolbox/SshView.vue:298 msgid "View Key" msgstr "" #: src/views/toolbox/SshView.vue:306 msgid "Recommended to use key login with password disabled for higher security" msgstr "" #: src/views/toolbox/SshView.vue:319 msgid "Root Private Key" msgstr "" #: src/views/toolbox/SshView.vue:326 msgid "This is the private key of the root user. Keep it safe and use it to login to this server." msgstr "" #: src/views/toolbox/SshView.vue:336 msgid "No private key generated" msgstr "" #: src/views/toolbox/SshView.vue:340 msgid "Regenerate" msgstr "" #: src/views/toolbox/SshView.vue:343 msgid "Download Private Key" msgstr "" #: src/views/toolbox/SystemView.vue:117 msgid "At least one NTP server is required" msgstr "" #: src/views/toolbox/SystemView.vue:134 msgid "Current DNS manager: %{ manager }" msgstr "" #: src/views/toolbox/SystemView.vue:140 msgid "DNS modifications will revert to default after system restart." msgstr "" #: src/views/toolbox/SystemView.vue:144 msgid "Enter primary DNS server" msgstr "" #: src/views/toolbox/SystemView.vue:147 msgid "Enter secondary DNS server" msgstr "" #: src/views/toolbox/SystemView.vue:161 msgid "System total %{ total }, used %{ used }, free %{ free }" msgstr "" #: src/views/toolbox/SystemView.vue:169 msgid "Panel SWAP Size" msgstr "" #: src/views/toolbox/SystemView.vue:186 msgid "Enter hostname, e.g. myserver" msgstr "" #: src/views/toolbox/SystemView.vue:189 msgid "Hosts" msgstr "" #: src/views/toolbox/SystemView.vue:201 msgid "After manually changing the time, it may still be overwritten by system automatic time synchronization." msgstr "" #: src/views/toolbox/SystemView.vue:207 msgid "Select Timezone" msgstr "" #: src/views/toolbox/SystemView.vue:210 msgid "Please select a timezone" msgstr "" #: src/views/toolbox/SystemView.vue:214 msgid "Modify Time" msgstr "" #: src/views/toolbox/SystemView.vue:217 msgid "NTP Server" msgstr "" #: src/views/toolbox/SystemView.vue:221 msgid "Optional, leave empty to use default servers" msgstr "" #: src/views/toolbox/SystemView.vue:225 msgid "Configure Default Servers" msgstr "" #: src/views/toolbox/SystemView.vue:235 msgid "Synchronize Time" msgstr "" #: src/views/toolbox/SystemView.vue:246 msgid "System NTP Server Configuration" msgstr "" #: src/views/toolbox/SystemView.vue:255 msgid "Unable to detect NTP service. Please ensure chrony or systemd-timesyncd is installed." msgstr "" #: src/views/toolbox/SystemView.vue:262 msgid "Current NTP service: %{ service }. Changes will be applied to system configuration." msgstr "" #: src/views/toolbox/SystemView.vue:275 msgid "Enter NTP server address" msgstr "" #: src/views/toolbox/SystemView.vue:300 msgid "Reset to Default" msgstr "" #: src/views/toolbox/WebHookView.vue:69 #: src/views/toolbox/WebHookView.vue:341 #: src/views/toolbox/WebHookView.vue:376 msgid "Raw Output" msgstr "" #: src/views/toolbox/WebHookView.vue:101 msgid "Call Count" msgstr "" #: src/views/toolbox/WebHookView.vue:108 msgid "Last Call" msgstr "" #: src/views/toolbox/WebHookView.vue:146 msgid "Copy URL" msgstr "" #: src/views/toolbox/WebHookView.vue:168 msgid "Are you sure you want to delete this WebHook?" msgstr "" #: src/views/toolbox/WebHookView.vue:218 msgid "URL copied to clipboard" msgstr "" #: src/views/toolbox/WebHookView.vue:243 #: src/views/toolbox/WebHookView.vue:265 msgid "Please enter a name" msgstr "" #: src/views/toolbox/WebHookView.vue:247 #: src/views/toolbox/WebHookView.vue:269 msgid "Please enter a script" msgstr "" #: src/views/toolbox/WebHookView.vue:296 #: src/views/toolbox/WebHookView.vue:325 msgid "Create WebHook" msgstr "" #: src/views/toolbox/WebHookView.vue:333 #: src/views/toolbox/WebHookView.vue:368 msgid "Enter WebHook name" msgstr "" #: src/views/toolbox/WebHookView.vue:338 #: src/views/toolbox/WebHookView.vue:373 msgid "User to run the script (default: root)" msgstr "" #: src/views/toolbox/WebHookView.vue:344 #: src/views/toolbox/WebHookView.vue:379 msgid "Return script output as raw text instead of JSON" msgstr "" #: src/views/toolbox/WebHookView.vue:347 #: src/views/toolbox/WebHookView.vue:385 msgid "Script" msgstr "" #: src/views/toolbox/WebHookView.vue:360 msgid "Edit WebHook" msgstr "" #: src/views/website/BulkCreateModal.vue:23 msgid "The format is incorrect, please check" msgstr "" #: src/views/website/BulkCreateModal.vue:61 #: src/views/website/CreateModal.vue:66 msgid "Website %{ name } created successfully" msgstr "" #: src/views/website/BulkCreateModal.vue:79 #: src/views/website/ListView.vue:285 msgid "Bulk Create Website" msgstr "" #: src/views/website/BulkCreateModal.vue:90 msgid "Please enter the website name, domain, port, path, and remark in the text area below, one per line." msgstr "" #: src/views/website/BulkCreateModal.vue:98 msgid "name|domain|port|path|remark" msgstr "" #: src/views/website/BulkCreateModal.vue:103 msgid "Name: The name of the website, which will be displayed in the website list, must be unique." msgstr "" #: src/views/website/BulkCreateModal.vue:110 msgid "Domain: The domain name of the website, multiple domains can be separated by commas." msgstr "" #: src/views/website/BulkCreateModal.vue:117 msgid "Port: The port number of the website, multiple ports can be separated by commas." msgstr "" #: src/views/website/BulkCreateModal.vue:123 msgid "Path: The path of the website, can be empty to use the default path." msgstr "" #: src/views/website/BulkCreateModal.vue:126 msgid "Remark: The remark of the website, can be empty." msgstr "" #: src/views/website/CreateModal.vue:39 #: src/views/website/EditView.vue:63 msgid "Not used" msgstr "" #: src/views/website/CreateModal.vue:114 #: src/views/website/ListView.vue:282 msgid "Create Website" msgstr "" #: src/views/website/CreateModal.vue:129 msgid "Must use English for the website name, it cannot be modified after setting" msgstr "" #: src/views/website/CreateModal.vue:174 msgid "Select Database" msgstr "" #: src/views/website/CreateModal.vue:202 #: src/views/website/CreateModal.vue:207 msgid "Database User" msgstr "" #: src/views/website/CreateModal.vue:216 #: src/views/website/CreateModal.vue:222 msgid "Database Password" msgstr "" #: src/views/website/CreateModal.vue:234 msgid "Website root directory (if left empty, defaults to website directory/website name/public)" msgstr "" #: src/views/website/CreateModal.vue:246 msgid "Proxy Target" msgstr "" #: src/views/website/CreateModal.vue:251 msgid "Proxy target address (e.g., http://127.0.0.1:3000)" msgstr "" #: src/views/website/CreateModal.vue:254 #: src/views/website/CreateModal.vue:259 #: src/views/website/ListView.vue:107 msgid "Remark" msgstr "" #: src/views/website/EditView.vue:94 msgid "Edit Website - %{ name }" msgstr "" #: src/views/website/EditView.vue:96 msgid "Edit Website" msgstr "" #: src/views/website/EditView.vue:135 msgid "Reset successfully" msgstr "" #: src/views/website/EditView.vue:152 msgid "Issued successfully" msgstr "" #: src/views/website/EditView.vue:166 msgid "The selected certificate is invalid" msgstr "" #: src/views/website/EditView.vue:245 msgid "Exact Match (=)" msgstr "" #: src/views/website/EditView.vue:246 msgid "Priority Prefix Match (^~)" msgstr "" #: src/views/website/EditView.vue:247 msgid "Prefix Match" msgstr "" #: src/views/website/EditView.vue:248 msgid "Case-sensitive Regex (~)" msgstr "" #: src/views/website/EditView.vue:249 msgid "Case-insensitive Regex (~*)" msgstr "" #: src/views/website/EditView.vue:395 msgid "URL Redirect" msgstr "" #: src/views/website/EditView.vue:396 msgid "Host Redirect" msgstr "" #: src/views/website/EditView.vue:397 msgid "404 Redirect" msgstr "" #: src/views/website/EditView.vue:402 msgid "Moved Permanently" msgstr "" #: src/views/website/EditView.vue:403 msgid "Found" msgstr "" #: src/views/website/EditView.vue:404 msgid "Temporary Redirect" msgstr "" #: src/views/website/EditView.vue:405 msgid "Permanent Redirect" msgstr "" #: src/views/website/EditView.vue:497 msgid "This Website" msgstr "" #: src/views/website/EditView.vue:498 msgid "Global" msgstr "" #: src/views/website/EditView.vue:525 msgid "Domain & Listening" msgstr "" #: src/views/website/EditView.vue:535 msgid "Listening Address" msgstr "" #: src/views/website/EditView.vue:570 msgid "Website Directory" msgstr "" #: src/views/website/EditView.vue:573 msgid "Enter website directory (absolute path)" msgstr "" #: src/views/website/EditView.vue:576 msgid "Running Directory" msgstr "" #: src/views/website/EditView.vue:580 msgid "Enter running directory (needed for Laravel etc.) (absolute path)" msgstr "" #: src/views/website/EditView.vue:584 msgid "Default Document" msgstr "" #: src/views/website/EditView.vue:597 msgid "Anti-cross-site Attack" msgstr "" #: src/views/website/EditView.vue:603 msgid "Upstreams" msgstr "" #: src/views/website/EditView.vue:624 msgid "Upstream name" msgstr "" #: src/views/website/EditView.vue:638 #: src/views/website/EditView.vue:645 msgid "Round Robin (default)" msgstr "" #: src/views/website/EditView.vue:646 msgid "Least Busy" msgstr "" #: src/views/website/EditView.vue:647 msgid "By Traffic" msgstr "" #: src/views/website/EditView.vue:652 msgid "Keepalive Connections" msgstr "" #: src/views/website/EditView.vue:690 msgid "Backend Servers" msgstr "" #: src/views/website/EditView.vue:700 msgid "Server address, e.g., 127.0.0.1:8080" msgstr "" #: src/views/website/EditView.vue:714 msgid "Options, e.g., weight=5 backup" msgstr "" #: src/views/website/EditView.vue:740 msgid "No upstreams configured" msgstr "" #: src/views/website/EditView.vue:749 msgid "Proxies" msgstr "" #: src/views/website/EditView.vue:767 #: src/views/website/EditView.vue:1052 msgid "Rule" msgstr "" #: src/views/website/EditView.vue:775 msgid "Match Type" msgstr "" #: src/views/website/EditView.vue:782 msgid "Match Expression" msgstr "" #: src/views/website/EditView.vue:785 msgid "e.g., /, /api, ^/api/v[0-9]+/" msgstr "" #: src/views/website/EditView.vue:793 msgid "Backend address, e.g., http://127.0.0.1:8080 or http://upstream_name" msgstr "" #: src/views/website/EditView.vue:800 msgid "Proxy Host" msgstr "" #: src/views/website/EditView.vue:804 msgid "Default: $proxy_host, or extracted from Proxy Pass" msgstr "" #: src/views/website/EditView.vue:808 msgid "Proxy SNI" msgstr "" #: src/views/website/EditView.vue:811 msgid "Optional, for HTTPS backends" msgstr "" #: src/views/website/EditView.vue:814 msgid "Enable Cache" msgstr "" #: src/views/website/EditView.vue:817 msgid "Enable Buffering" msgstr "" #: src/views/website/EditView.vue:848 msgid "Response Content Replacement" msgstr "" #: src/views/website/EditView.vue:858 msgid "Original content" msgstr "" #: src/views/website/EditView.vue:874 msgid "Replacement content" msgstr "" #: src/views/website/EditView.vue:898 msgid "Add Replacement Rule" msgstr "" #: src/views/website/EditView.vue:908 msgid "No proxy rules configured" msgstr "" #: src/views/website/EditView.vue:913 msgid "Add Proxy Rule" msgstr "" #: src/views/website/EditView.vue:920 msgid "Certificate Information" msgstr "" #: src/views/website/EditView.vue:922 msgid "Certificate Validity" msgstr "" #: src/views/website/EditView.vue:936 msgid "Domains" msgstr "" #: src/views/website/EditView.vue:951 msgid "Main Switch" msgstr "" #: src/views/website/EditView.vue:957 msgid "Use Existing Certificate" msgstr "" #: src/views/website/EditView.vue:971 msgid "HTTP Redirect" msgstr "" #: src/views/website/EditView.vue:974 msgid "OCSP Stapling" msgstr "" #: src/views/website/EditView.vue:979 msgid "TLS Version" msgstr "" #: src/views/website/EditView.vue:991 msgid "Cipher Suites" msgstr "" #: src/views/website/EditView.vue:995 msgid "Enter the cipher suite, leave blank to reset to default" msgstr "" #: src/views/website/EditView.vue:1019 msgid "Rewrite" msgstr "" #: src/views/website/EditView.vue:1034 msgid "Redirects" msgstr "" #: src/views/website/EditView.vue:1065 msgid "Redirect Type" msgstr "" #: src/views/website/EditView.vue:1068 msgid "Status Code" msgstr "" #: src/views/website/EditView.vue:1077 msgid "Source" msgstr "" #: src/views/website/EditView.vue:1083 msgid "Source path, e.g., /old" msgstr "" #: src/views/website/EditView.vue:1084 msgid "Source host, e.g., example.com" msgstr "" #: src/views/website/EditView.vue:1096 msgid "Target path, e.g., /new" msgstr "" #: src/views/website/EditView.vue:1097 msgid "Target URL, e.g., https://example.com" msgstr "" #: src/views/website/EditView.vue:1101 msgid "Keep URI" msgstr "" #: src/views/website/EditView.vue:1104 msgid "Keep the original request path and query parameters" msgstr "" #: src/views/website/EditView.vue:1115 msgid "No redirect rules configured" msgstr "" #: src/views/website/EditView.vue:1120 msgid "Add Redirect Rule" msgstr "" #: src/views/website/EditView.vue:1124 msgid "Advanced Settings" msgstr "" #: src/views/website/EditView.vue:1127 msgid "Rate Limiting" msgstr "" #: src/views/website/EditView.vue:1129 msgid "Enable Rate Limiting" msgstr "" #: src/views/website/EditView.vue:1133 msgid "Concurrent Limit" msgstr "" #: src/views/website/EditView.vue:1141 msgid "Limit the maximum concurrent connections for this site" msgstr "" #: src/views/website/EditView.vue:1144 msgid "Per IP Limit" msgstr "" #: src/views/website/EditView.vue:1152 msgid "Limit the maximum concurrent connections per IP" msgstr "" #: src/views/website/EditView.vue:1155 msgid "Rate Limit" msgstr "" #: src/views/website/EditView.vue:1163 msgid "Limit the rate of each request (unit: KB)" msgstr "" #: src/views/website/EditView.vue:1171 msgid "Real IP" msgstr "" #: src/views/website/EditView.vue:1174 msgid "Configure trusted proxy IPs (e.g., CDN or Frp) to identify real visitor IPs." msgstr "" #: src/views/website/EditView.vue:1181 msgid "If using Frp, fill in the Frp IP address (e.g., 127.0.0.1). If using CDN, fill in the CDN IP ranges. If unsure, you can fill in 0.0.0.0/0 (ipv4) or ::/0 (ipv6) [insecure]." msgstr "" #: src/views/website/EditView.vue:1187 msgid "Enable" msgstr "" #: src/views/website/EditView.vue:1191 msgid "IP Sources" msgstr "" #: src/views/website/EditView.vue:1194 msgid "e.g., 127.0.0.1 or 10.0.0.0/8" msgstr "" #: src/views/website/EditView.vue:1197 msgid "IP Header" msgstr "" #: src/views/website/EditView.vue:1205 msgid "Recursive" msgstr "" #: src/views/website/EditView.vue:1208 msgid "Recursively search for real IP in X-Forwarded-For header" msgstr "" #: src/views/website/EditView.vue:1216 msgid "Basic Authentication" msgstr "" #: src/views/website/EditView.vue:1218 msgid "User Credentials" msgstr "" #: src/views/website/EditView.vue:1270 msgid "Visitors will need to enter a username and password to access this website." msgstr "" #: src/views/website/EditView.vue:1278 msgid "Custom Configs" msgstr "" #: src/views/website/EditView.vue:1296 msgid "Config" msgstr "" #: src/views/website/EditView.vue:1305 msgid "Config name (letters, numbers, underscore, hyphen)" msgstr "" #: src/views/website/EditView.vue:1313 msgid "Content" msgstr "" #: src/views/website/EditView.vue:1327 msgid "No custom configs" msgstr "" #: src/views/website/EditView.vue:1332 msgid "Add Custom Config" msgstr "" #: src/views/website/EditView.vue:1336 msgid "Access Log" msgstr "" #: src/views/website/EditView.vue:1340 #: src/views/website/EditView.vue:1352 msgid "All logs can be viewed by downloading the file" msgstr "" #: src/views/website/EditView.vue:1342 #: src/views/website/EditView.vue:1354 msgid "view" msgstr "" #: src/views/website/EditView.vue:1348 msgid "Error Log" msgstr "" #: src/views/website/EditView.vue:1371 msgid "Clear Logs" msgstr "" #: src/views/website/EditView.vue:1384 msgid "One-click Certificate Issuance" msgstr "" #: src/views/website/EditView.vue:1389 msgid "Reset Configuration" msgstr "" #: src/views/website/EditView.vue:1392 msgid "Are you sure you want to reset the configuration?" msgstr "" #: src/views/website/IndexView.vue:23 msgid "Pure Static" msgstr "" #: src/views/website/ListView.vue:22 msgid "Website Name" msgstr "" #: src/views/website/ListView.vue:75 msgid "Certificate expiration" msgstr "" #: src/views/website/ListView.vue:89 msgid "Not configured" msgstr "" #: src/views/website/ListView.vue:92 msgid "Expired %{ days } days ago" msgstr "" #: src/views/website/ListView.vue:97 msgid "Expires in %{ days } days" msgstr "" #: src/views/website/ListView.vue:162 msgid "Are you sure you want to delete website %{ name }?" msgstr "" #: src/views/website/ListView.vue:173 msgid "Delete website directory" msgstr "" #: src/views/website/ListView.vue:181 msgid "Delete local database with the same name" msgstr "" #: src/views/website/ListView.vue:294 msgid "This will delete the website directory but not the database with the same name. Are you sure you want to delete the selected websites?" msgstr "" #: src/views/website/SettingView.vue:43 msgid "Default Page" msgstr "" #: src/views/website/SettingView.vue:48 #: src/views/website/SettingView.vue:58 #: src/views/website/SettingView.vue:68 #: src/views/website/SettingView.vue:116 msgid "Save Changes" msgstr "" #: src/views/website/SettingView.vue:53 msgid "Stop Page" msgstr "" #: src/views/website/SettingView.vue:63 msgid "404 Page" msgstr "" #: src/views/website/SettingView.vue:73 msgid "Default Site" msgstr "" #: src/views/website/SettingView.vue:76 msgid "Default Settings" msgstr "" #: src/views/website/SettingView.vue:80 msgid "Modifying the default TLS version and cipher suites will affect all newly created websites. Existing websites will not be affected." msgstr "" #: src/views/website/SettingView.vue:87 msgid "Please adjust the settings carefully, improper configuration may lead to website inaccessible." msgstr "" #: src/views/website/SettingView.vue:93 msgid "Default TLS Version" msgstr "" #: src/views/website/SettingView.vue:105 msgid "Default Cipher Suites" msgstr "" #: src/views/website/SettingView.vue:110 msgid "Enter the default cipher suite, leave blank to reset to default" msgstr ""