feat: support workspace empty

This commit is contained in:
YuMao 2024-09-24 15:32:22 +08:00
parent ccd50605ea
commit d9661483c3
13 changed files with 15 additions and 16 deletions

View File

@ -2,7 +2,7 @@ import { t } from "i18next";
import { commandStringToArray } from "../entity/commands/base/command_parser";
import DockerPullCommand from "../entity/commands/docker/docker_pull";
import Instance from "../entity/instance/instance";
import { DefaultDocker } from "./docker_service"
import { DefaultDocker } from "./docker_service";
import path from "path";
import { $t } from "../i18n";
@ -116,7 +116,8 @@ export class SetupDockerContainer extends AsyncTask {
// Whether to use TTY mode
const isTty = instance.config.terminalOption.pty;
const workingDir = instance.config.docker.workingDir ?? "/workspace/";
const workingDir = instance.config.docker.workingDir ?? "";
// output startup log
logger.info("----------------");
@ -127,7 +128,12 @@ export class SetupDockerContainer extends AsyncTask {
logger.info(`CWD: ${cwd}, WORKING_DIR: ${workingDir}`);
logger.info(`NET_MODE: ${instance.config.docker.networkMode}`);
logger.info(`OPEN_PORT: ${JSON.stringify(publicPortArray)}`);
logger.info(`BINDS: ${JSON.stringify([`${cwd}->${workingDir}`, ...extraBinds])}`);
logger.info(
`BINDS: ${JSON.stringify([
workingDir ? `${cwd}->${workingDir}` : "<No WorkSpace>",
...extraBinds
])}`
);
logger.info(`NET_ALIASES: ${JSON.stringify(instance.config.docker.networkAliases)}`);
logger.info(`MEM_LIMIT: ${maxMemory || "--"} MB`);
logger.info(`TYPE: Docker Container`);

View File

@ -533,7 +533,7 @@ defineExpose({
</a-typography-paragraph>
<a-input
v-model:value="options.config.docker.workingDir"
:placeholder="t('TXT_CODE_b23cc3e')"
:placeholder="t('TXT_CODE_2082f659')"
/>
</a-form-item>
</a-col>

View File

@ -26,7 +26,9 @@ import { reportErrorMsg } from "@/tools/validator";
// eslint-disable-next-line no-unused-vars
enum UNZIP {
// eslint-disable-next-line no-unused-vars
ON = 1,
// eslint-disable-next-line no-unused-vars
OFF = 0
}
@ -257,7 +259,7 @@ const createInstance = async () => {
{{ t("TXT_CODE_3c37583b") }}
</a-typography-text>
</a-typography-paragraph>
<a-input v-model:value="formData.docker.workingDir" :placeholder="t('TXT_CODE_2082f653')" />
<a-input v-model:value="formData.docker.workingDir" :placeholder="t('TXT_CODE_2082f659')" />
</a-form-item>
<a-form-item name="startCommand">

View File

@ -127,7 +127,6 @@
"TXT_CODE_2054155a": "Die maximale Höhe, in der Spieler Blöcke auf dem Server platzieren",
"TXT_CODE_206f0c11": "Wenn man Spielern erlaubt, sich zu registrieren, stimmt das nicht unbedingt mit ihrem Charakternamen überein",
"TXT_CODE_2076e91e": "zeigen",
"TXT_CODE_2082f653": "Standard: /workspace/",
"TXT_CODE_20ce2aae": "Build fehlgeschlagen",
"TXT_CODE_20cec54": "Wagenrücklauf-Zeilenvorschubsymbol",
"TXT_CODE_21b8b71a": "Normale Berechtigungen eignen sich für Geschäftsanwender und die höchsten Berechtigungen eignen sich für Manager.",

View File

@ -1817,7 +1817,6 @@
"TXT_CODE_95c5e900": "Complete image name, e.g. openjdk:17",
"TXT_CODE_fdec1b6f": "Mount Working Directory",
"TXT_CODE_3c37583b": "Directories under file management will be mounted to this directory inside the container",
"TXT_CODE_2082f653": "Default: /workspace/",
"TXT_CODE_26495d02": "You can enter a startup command, such as java -jar demo.jar. If no startup command is entered, the command defined inside the image will be used.",
"TXT_CODE_a85091a4": "Automatically assigned by default",
"TXT_CODE_7da6e84": "Complete all required fields to create. For more options, please go to instance settings after creation.",

View File

@ -127,7 +127,6 @@
"TXT_CODE_2054155a": "La hauteur maximale à laquelle les joueurs placent des blocs sur le serveur",
"TXT_CODE_206f0c11": "Autoriser les joueurs à s'inscrire ne correspond pas nécessairement au nom de leur personnage",
"TXT_CODE_2076e91e": "montrer",
"TXT_CODE_2082f653": "Par défaut : /espace de travail/",
"TXT_CODE_20ce2aae": "Échec de construction",
"TXT_CODE_20cec54": "symbole de saut de ligne de retour chariot",
"TXT_CODE_21b8b71a": "Les autorisations normales conviennent aux utilisateurs professionnels et les autorisations les plus élevées conviennent aux gestionnaires.",

View File

@ -127,7 +127,6 @@
"TXT_CODE_2054155a": "プレイヤーがサーバー上にブロックを配置する最大の高さ",
"TXT_CODE_206f0c11": "プレイヤーの登録を許可しても、キャラクター名が必ずしも一致するとは限りません",
"TXT_CODE_2076e91e": "見せる",
"TXT_CODE_2082f653": "デフォルト: /ワークスペース/",
"TXT_CODE_20ce2aae": "ビルドに失敗しました",
"TXT_CODE_20cec54": "キャリッジリターン、ラインフィード記号",
"TXT_CODE_21b8b71a": "通常の権限はビジネス ユーザーに適しており、最高の権限は管理者に適しています。",

View File

@ -127,7 +127,6 @@
"TXT_CODE_2054155a": "플레이어가 서버에 블록을 배치하는 최대 높이",
"TXT_CODE_206f0c11": "플레이어의 등록을 허용하는 것이 반드시 캐릭터 이름과 일치하는 것은 아닙니다.",
"TXT_CODE_2076e91e": "보여주다",
"TXT_CODE_2082f653": "기본값: /작업공간/",
"TXT_CODE_20ce2aae": "빌드 실패",
"TXT_CODE_20cec54": "캐리지 리턴 줄 바꿈 기호",
"TXT_CODE_21b8b71a": "일반 권한은 비즈니스 사용자에게 적합하며, 가장 높은 권한은 관리자에게 적합합니다.",

View File

@ -1816,7 +1816,6 @@
"TXT_CODE_95c5e900": "Nome completo da imagem, por exemplo: openjdk:17",
"TXT_CODE_fdec1b6f": "Montar Diretório de Trabalho",
"TXT_CODE_3c37583b": "Diretórios sob gerenciamento de arquivos serão montados neste diretório dentro do contêiner",
"TXT_CODE_2082f653": "Padrão: /workspace/",
"TXT_CODE_26495d02": "Você pode inserir um comando de inicialização, como java -jar demo.jar. Se nenhum comando de inicialização for inserido, o comando definido dentro da imagem será usado.",
"TXT_CODE_a85091a4": "Atribuído automaticamente por padrão",
"TXT_CODE_7da6e84": "Complete todos os campos obrigatórios para criar. Para mais opções, por favor, vá para as configurações da instância após a criação.",

View File

@ -127,7 +127,6 @@
"TXT_CODE_2054155a": "Максимальная высота, на которой игроки размещают блоки на сервере",
"TXT_CODE_206f0c11": "Разрешение игрокам зарегистрироваться не обязательно соответствует имени их персонажа.",
"TXT_CODE_2076e91e": "показывать",
"TXT_CODE_2082f653": "По умолчанию: /рабочая область/",
"TXT_CODE_20ce2aae": "Сборка не удалась",
"TXT_CODE_20cec54": "символ перевода строки возврата каретки",
"TXT_CODE_21b8b71a": "Обычные разрешения подходят для бизнес-пользователей, а самые высокие разрешения подходят для менеджеров.",

View File

@ -1817,7 +1817,6 @@
"TXT_CODE_95c5e900": "Tam görüntü adı, örneğin openjdk:17",
"TXT_CODE_fdec1b6f": "Çalışma Dizinini Bağla",
"TXT_CODE_3c37583b": "Dosya yönetimi altındaki dizinler konteyner içindeki bu dizine bağlanacaktır",
"TXT_CODE_2082f653": "Varsayılan: /workspace/",
"TXT_CODE_26495d02": "java -jar demo.jar gibi bir başlangıç komutu girebilirsiniz. Herhangi bir başlangıç komutu girilmezse, görüntünün içinde tanımlanan komut kullanılır.",
"TXT_CODE_a85091a4": "Varsayılan olarak otomatik olarak atanır",
"TXT_CODE_7da6e84": "Oluşturmak için gerekli tüm alanları doldurun. Daha fazla seçenek için lütfen oluşturduktan sonra örnek ayarlarına gidin.",

View File

@ -1817,7 +1817,6 @@
"TXT_CODE_95c5e900": "镜像完整名列如openjdk:17",
"TXT_CODE_fdec1b6f": "挂载工作目录",
"TXT_CODE_3c37583b": "文件管理功能下的目录将挂载到容器内的此目录",
"TXT_CODE_2082f653": "默认:/workspace/",
"TXT_CODE_26495d02": "可以填写启动命令,如 java -jar demo.jar不填写启动命令将以镜像内部定义的命令为准",
"TXT_CODE_a85091a4": "默认自动分配",
"TXT_CODE_7da6e84": "完善所有必填项后即可创建,更多其他设置请创建完成后,在应用实例设置中可以编辑!",
@ -1943,5 +1942,6 @@
"TXT_CODE_78e88c3f": "标签分组",
"TXT_CODE_7333c7f7": "清空",
"TXT_CODE_6d8bc58d": "保存失败单个标签最多只支持9个字符",
"TXT_CODE_dc9fb6ce": "保存失败单个实例最多只支持6个标签"
"TXT_CODE_dc9fb6ce": "保存失败单个实例最多只支持6个标签",
"TXT_CODE_2082f659": "注意:如果此处为空,则不会绑定文件管理中的文件到容器中!"
}

View File

@ -1817,7 +1817,6 @@
"TXT_CODE_95c5e900": "映像完整名列如openjdk:17",
"TXT_CODE_fdec1b6f": "掛載工作目錄",
"TXT_CODE_3c37583b": "檔案管理功能下的目錄將掛載到容器內的此目錄",
"TXT_CODE_2082f653": "預設:/workspace/",
"TXT_CODE_26495d02": "可以填入啟動指令,如 java -jar demo.jar不填入啟動指令將以映像內部定義的指令為準",
"TXT_CODE_a85091a4": "預設自動指派",
"TXT_CODE_7da6e84": "完善所有必填項後即可創建,更多其他設定請建立完成後,在應用程式實例設定中可以編輯!",