mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-12-18 05:19:19 +08:00
feat: optimization install php extensions (#10403)
This commit is contained in:
parent
37ef2059f1
commit
fd21e8de14
3 changed files with 76 additions and 22 deletions
|
|
@ -689,9 +689,15 @@ func checkContainerStatus(name string) (string, error) {
|
|||
return "", nil
|
||||
}
|
||||
|
||||
func delPHPExtensions(dir, phpExtensionDir, fileName, extName string) {
|
||||
fileOp := files.NewFileOp()
|
||||
_ = fileOp.DeleteFile(path.Join(phpExtensionDir, fileName))
|
||||
_ = fileOp.DeleteFile(path.Join(dir, "conf", "conf.d", "docker-php-ext-"+extName+".ini"))
|
||||
_ = removePHPIniExt(path.Join(dir, "conf", "php.ini"), fileName)
|
||||
}
|
||||
|
||||
func unInstallPHPExtension(runtime *model.Runtime, delExtensions []string) error {
|
||||
dir := runtime.GetPath()
|
||||
fileOP := files.NewFileOp()
|
||||
var phpExtensions []response.SupportExtension
|
||||
if err := json.Unmarshal(nginx_conf.GetWebsiteFile("php_extensions.json"), &phpExtensions); err != nil {
|
||||
return err
|
||||
|
|
@ -700,16 +706,20 @@ func unInstallPHPExtension(runtime *model.Runtime, delExtensions []string) error
|
|||
phpExtensionDir := path.Join(dir, "extensions", getExtensionDir(phpVersion))
|
||||
|
||||
delMap := make(map[string]struct{})
|
||||
for _, ext := range phpExtensions {
|
||||
for _, del := range delExtensions {
|
||||
for _, del := range delExtensions {
|
||||
exist := false
|
||||
for _, ext := range phpExtensions {
|
||||
if ext.Name == del {
|
||||
exist = true
|
||||
delMap[ext.Check] = struct{}{}
|
||||
_ = fileOP.DeleteFile(path.Join(phpExtensionDir, ext.File))
|
||||
_ = fileOP.DeleteFile(path.Join(dir, "conf", "conf.d", "docker-php-ext-"+ext.Check+".ini"))
|
||||
_ = removePHPIniExt(path.Join(dir, "conf", "php.ini"), ext.File)
|
||||
delPHPExtensions(dir, phpExtensionDir, ext.Check, ext.Name)
|
||||
break
|
||||
}
|
||||
}
|
||||
if !exist {
|
||||
delMap[del] = struct{}{}
|
||||
delPHPExtensions(dir, phpExtensionDir, del+".so", del)
|
||||
}
|
||||
}
|
||||
extensions := getRuntimeEnv(runtime.Env, "PHP_EXTENSIONS")
|
||||
var (
|
||||
|
|
|
|||
|
|
@ -1,4 +1,25 @@
|
|||
[
|
||||
{
|
||||
"name": "amqp",
|
||||
"check": "amqp",
|
||||
"file": "amqp.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "apcu",
|
||||
"check": "apcu",
|
||||
"file": "apcu.so",
|
||||
"versions": ["56", "70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "bcmath",
|
||||
"check": "bcmath",
|
||||
"file": "bcmath.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "ionCube",
|
||||
"check": "ionCube Loader",
|
||||
|
|
@ -41,13 +62,7 @@
|
|||
"versions": ["70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "apcu",
|
||||
"check": "apcu",
|
||||
"file": "apcu.so",
|
||||
"versions": ["56", "70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
|
||||
{
|
||||
"name": "imagick",
|
||||
"check": "imagick",
|
||||
|
|
@ -363,13 +378,7 @@
|
|||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "bcmath",
|
||||
"check": "bcmath",
|
||||
"file": "bcmath.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
|
||||
{
|
||||
"name": "pcntl",
|
||||
"check": "pcntl",
|
||||
|
|
@ -383,5 +392,40 @@
|
|||
"file": "sodium.so",
|
||||
"versions": ["70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "gettext",
|
||||
"check": "gettext",
|
||||
"file": "gettext.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "soap",
|
||||
"check": "soap",
|
||||
"file": "soap.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "sysvsem",
|
||||
"check": "sysvsem",
|
||||
"file": "sysvsem.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "sockets",
|
||||
"check": "sockets",
|
||||
"file": "sockets.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
},
|
||||
{
|
||||
"name": "xmlrpc",
|
||||
"check": "xmlrpc",
|
||||
"file": "xmlrpc.so",
|
||||
"versions": ["56","70", "71", "72", "73", "74", "80", "81", "82", "83","84"],
|
||||
"installed": false
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -9,9 +9,9 @@
|
|||
:autoClose="false"
|
||||
>
|
||||
<template #content>
|
||||
<el-form ref="formRef" :model="form" label-position="top">
|
||||
<el-form ref="formRef" :model="form" label-position="top" @submit.prevent>
|
||||
<el-form-item :label="$t('commons.table.user')" prop="user">
|
||||
<el-input placeholder="root" clearable v-model="form.user">
|
||||
<el-input placeholder="root" clearable v-model="form.user" @keyup.enter="reConnect">
|
||||
<template #append>
|
||||
<el-button @click="reConnect">{{ $t('commons.button.conn') }}</el-button>
|
||||
</template>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue