mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-10-24 06:27:37 +08:00
fix: 强制拉取镜像样式调整 (#1602)
This commit is contained in:
parent
b9227caaf8
commit
07bbf057d0
7 changed files with 35 additions and 12 deletions
|
|
@ -236,6 +236,19 @@ const checkIntegerNumber = (rule: any, value: any, callback: any) => {
|
|||
}
|
||||
};
|
||||
|
||||
const checkIntegerNumberWith0 = (rule: any, value: any, callback: any) => {
|
||||
if (value === '' || typeof value === 'undefined' || value == null) {
|
||||
callback(new Error(i18n.global.t('commons.rule.integer')));
|
||||
} else {
|
||||
const reg = /^[0-9]*$/;
|
||||
if (!reg.test(value) && value !== '') {
|
||||
callback(new Error(i18n.global.t('commons.rule.integer')));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const checkFloatNumber = (rule: any, value: any, callback: any) => {
|
||||
if (value === '' || typeof value === 'undefined' || value == null) {
|
||||
callback(new Error(i18n.global.t('commons.rule.integer')));
|
||||
|
|
@ -413,6 +426,7 @@ interface CommonRule {
|
|||
email: FormItemRule;
|
||||
number: FormItemRule;
|
||||
integerNumber: FormItemRule;
|
||||
integerNumberWith0: FormItemRule;
|
||||
floatNumber: FormItemRule;
|
||||
ip: FormItemRule;
|
||||
ipV4V6: FormItemRule;
|
||||
|
|
@ -515,6 +529,11 @@ export const Rules: CommonRule = {
|
|||
validator: checkIntegerNumber,
|
||||
trigger: 'blur',
|
||||
},
|
||||
integerNumberWith0: {
|
||||
required: true,
|
||||
validator: checkIntegerNumberWith0,
|
||||
trigger: 'blur',
|
||||
},
|
||||
floatNumber: {
|
||||
required: true,
|
||||
validator: checkFloatNumber,
|
||||
|
|
|
|||
|
|
@ -504,7 +504,8 @@ const message = {
|
|||
appHelper:
|
||||
'This container is sourced from the application store. Upgrading it may cause the service to be unavailable. Do you want to continue?',
|
||||
|
||||
forcePull: 'Pull the latest image',
|
||||
forcePull: 'forced image pull ',
|
||||
forcePullHelper: 'Ignore existing images on the server and pull again.',
|
||||
server: 'Host',
|
||||
serverExample: 'e.g. 80, 80-88, ip:80 or ip:80-88',
|
||||
containerExample: 'e.g. 80 or 80-88',
|
||||
|
|
|
|||
|
|
@ -493,7 +493,8 @@ const message = {
|
|||
targetImageHelper: '請輸入目標鏡像版本',
|
||||
appHelper: '該容器來源於應用商店,升級可能導致該服務不可用,是否繼續?',
|
||||
|
||||
forcePull: '拉取最新鏡像',
|
||||
forcePull: '強製拉取鏡像',
|
||||
forcePullHelper: '忽略服務器已存在的鏡像,重新拉取一次',
|
||||
server: '服務器',
|
||||
serverExample: '例: 80, 80-88, ip:80 或者 ip:80-88',
|
||||
containerExample: '例: 80 或者 80-88',
|
||||
|
|
|
|||
|
|
@ -493,7 +493,8 @@ const message = {
|
|||
targetImageHelper: '请输入目标镜像版本',
|
||||
appHelper: '该容器来源于应用商店,升级可能导致该服务不可用,是否继续?',
|
||||
|
||||
forcePull: '拉取最新镜像',
|
||||
forcePull: '强制拉取镜像',
|
||||
forcePullHelper: '忽略服务器已存在的镜像,重新拉取一次',
|
||||
server: '服务器',
|
||||
serverExample: '例: 80, 80-88, ip:80 或者 ip:80-88',
|
||||
containerExample: '例: 80 或者 80-88',
|
||||
|
|
|
|||
|
|
@ -453,6 +453,12 @@ const buttons = [
|
|||
dialogContainerLogRef.value!.acceptParams({ containerID: row.containerID, container: row.name });
|
||||
},
|
||||
},
|
||||
{
|
||||
label: i18n.global.t('commons.button.upgrade'),
|
||||
click: (row: Container.ContainerInfo) => {
|
||||
dialogUpgradeRef.value!.acceptParams({ container: row.name, image: row.imageName, fromApp: row.isFromApp });
|
||||
},
|
||||
},
|
||||
{
|
||||
label: i18n.global.t('container.monitor'),
|
||||
disabled: (row: Container.ContainerInfo) => {
|
||||
|
|
@ -462,12 +468,6 @@ const buttons = [
|
|||
onMonitor(row);
|
||||
},
|
||||
},
|
||||
{
|
||||
label: i18n.global.t('commons.button.upgrade'),
|
||||
click: (row: Container.ContainerInfo) => {
|
||||
dialogUpgradeRef.value!.acceptParams({ container: row.name, image: row.imageName, fromApp: row.isFromApp });
|
||||
},
|
||||
},
|
||||
{
|
||||
label: i18n.global.t('container.rename'),
|
||||
click: (row: Container.ContainerInfo) => {
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
<el-checkbox v-model="dialogData.rowData!.forcePull">
|
||||
{{ $t('container.forcePull') }}
|
||||
</el-checkbox>
|
||||
<span class="input-help">{{ $t('container.forcePullHelper') }}</span>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('commons.table.port')">
|
||||
<el-radio-group v-model="dialogData.rowData!.publishAllPorts" class="ml-4">
|
||||
|
|
@ -302,7 +303,7 @@ const rules = reactive({
|
|||
name: [Rules.requiredInput, Rules.volumeName],
|
||||
image: [Rules.requiredSelect],
|
||||
network: [Rules.requiredSelect],
|
||||
cpuShares: [Rules.floatNumber, checkNumberRange(0, 262144)],
|
||||
cpuShares: [Rules.integerNumberWith0, checkNumberRange(0, 262144)],
|
||||
nanoCPUs: [Rules.floatNumber],
|
||||
memory: [Rules.floatNumber],
|
||||
});
|
||||
|
|
@ -385,7 +386,6 @@ const onSubmit = async (formEl: FormInstance | undefined) => {
|
|||
return;
|
||||
}
|
||||
dialogData.value.rowData!.memory = Number(dialogData.value.rowData!.memory);
|
||||
dialogData.value.rowData!.cpuShares = Number(dialogData.value.rowData!.cpuShares);
|
||||
dialogData.value.rowData!.nanoCPUs = Number(dialogData.value.rowData!.nanoCPUs);
|
||||
|
||||
loading.value = true;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<el-drawer v-model="drawerVisiable" :destroy-on-close="true" :close-on-click-modal="false" size="30%">
|
||||
<el-drawer v-model="drawerVisiable" :destroy-on-close="true" :close-on-click-modal="false" size="50%">
|
||||
<template #header>
|
||||
<DrawerHeader :header="$t('commons.button.upgrade')" :resource="form.name" :back="handleClose" />
|
||||
</template>
|
||||
|
|
@ -42,6 +42,7 @@
|
|||
<el-checkbox v-model="form.forcePull">
|
||||
{{ $t('container.forcePull') }}
|
||||
</el-checkbox>
|
||||
<span class="input-help">{{ $t('container.forcePullHelper') }}</span>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-col>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue