Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

call request.FormFile() Upload special files. Will cause the service to crash without any error messages #43708

Closed
cloudmer opened this issue Jan 15, 2021 · 3 comments

Comments

@cloudmer
Copy link

cloudmer commented Jan 15, 2021

What version of Go are you using (go version)?

$ go version
go version go1.14.5 linux/amd64

Does this issue reproduce with the latest release?

Yes, There is still no solution

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/cloud/.cache/go-build"
GOENV="/home/cloud/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/cloud/work/golang"
GOPRIVATE=""
GOPROXY="https://goproxy.cn"
GOROOT="/usr/local/share/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/share/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build788491564=/tmp/go-build -gno-record-gcc-switches"

What did you do?

I'm using the HTTP service.
use gin https://github.com/gin-gonic/gin
I found that it had nothing to do with gin

I'm uploading a special file.

func Upload(ctx *gin.Context)  {
	file, err := ctx.FormFile("file")
	if err != nil {
		ctx.JSON(http.StatusOK, response.Error(err))
		return
	}
	fmt.Println(file, err)
        ctx.JSON(http.StatusOK, response.Success("ok", nil))
	return
}

he service didn't respond after I uploaded it.

And the service seems to be all right, no error prompt, no crash error prompt, it seems to be all right!!!

When I access this interface for the second time, return Error: connect ECONNREFUSED 127.0.0.1:8080

At this time, golang still looks very healthy, but he can't work any more

[09:51:43][EPDS] : [GIN-debug] DELETE /v1/field/testing/:id     --> epds/apis/v1/controllers.TestingFieldDelete (5 handlers)
[09:51:43][EPDS] : [GIN-debug] Listening and serving HTTP on 0.0.0.0:8080

Then I found out where the problem was.

I debug the code.

               // file, store in memory or on disk
		fh := &FileHeader{
			Filename: filename,
			Header:   p.Header,
		}
		n, err := io.CopyN(&b, p, maxMemory+1)
		fmt.Println(err, "eeeeeeeeeeeeeeeeeeeeeeeeeeeeee")
		if err != nil && err != io.EOF {
			return nil, err
		}
		fmt.Println("qqqqqqqqqqqqqqqqqqqqq")
		fmt.Println(b.Bytes(), "bbbbbbbbbbbbbbbbbbbbb")
		fmt.Println("The process has collapsed")

output

[09:57:19][EPDS] : [GIN-debug] Listening and serving HTTP on 0.0.0.0:8080
[09:57:32][EPDS] : EOF eeeeeeeeeeeeeeeeeeeeeeeeeeeeee
[09:57:32][EPDS] : qqqqqqqqqqqqqqqqqqqqq

The process has collapsed No output !!!!!!!!!!!!!
io.EOF error. Can no longer call b.Bytes()

Now I post my file
fileName: test.yaml

{{- $app_name := .Values.application.name -}}

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-config
data:
  components.php: |
    <?php

    $db = require(__DIR__ . '/db.php');

    $components = [

        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '3zX3FVJW7jtWMyNc8mHOIiZPzjwh-XIu1',
        ],

        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],

        'user' => [
            'identityClass'   => 'app\models\User',
            'enableAutoLogin' => true,
        ],

        'errorHandler' => [
            'errorAction' => 'touch/errors/error',
        ],

        /*
        'log' => [
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                [
                    'class'  => 'yii\log\FileTarget',
                    'levels' => ['error', 'warning'],
                ],
            ],
        ],
        */

        'log' =>[
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                'db' =>[
                    'class'   => 'yii\log\DbTarget',
                    'enabled' => true,
                    'prefix'  => function () {
                        return Yii::$app->user->id;
                    },
                    'categories' => ['admin', 'author'],
                    'levels'     => ['info'],
                    {{ $logTable := "{{%ts_log}}" }}
                    'logTable' => '{{$logTable}}',
                    'logVars'    => [],
                ],
            ],
        ],

        'mailer' => [
            // send all mails to a file by default. You have to set
            // 'useFileTransport' to false and configure a transport
            // for the mailer to send real emails.
            //'useFileTransport' => true,
            'class'            => 'yii\swiftmailer\Mailer',
            'viewPath'         => 'mail',
            'useFileTransport' => false,
            'transport' => [
                'class'      => 'fdsfsf',
                'host'       => 'gsdgsg',
                'port'       => 'gds',
                'encryption' => 'gsdgsd',
                'username'   => 'gdsgsd@gdsgsg.cn',
                'password'   => "dgsgsgsdgs",
            ],
        ],

        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName'  => false,
            'rules'           => [],
        ],

        'redis' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.session.host}}',
            'port' => {{.Values.redis.session.port}},
            'database' => {{.Values.redis.session.database}},
            'password' => '{{.Values.redis.session.password}}'
        ],
        'redis2' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.session.host}}',
            'port' => {{.Values.redis.session.port}},
            'database' => {{.Values.redis.session.database}},
            'password' => '{{.Values.redis.session.password}}'
        ],

        'script_authorize_redis_lock' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.dan.host}}',
            'port' => {{.Values.redis.dan.port}},
            'database' => {{.Values.redis.dan.database}},
            'password' => '{{.Values.redis.dan.password}}',
        ],

        'session' => [
            'class'      => 'yii\redis\Session',
            'useCookies' => true,
            'timeout' => defined('SESSIONID_LIFE_TIME') ? constant('SESSIONID_LIFE_TIME') : 86400,       // session 过期时间
            'redis' => [
              'hostname' => '{{.Values.redis.session.host}}',
              'port' => {{.Values.redis.session.port}},
              'database' => {{.Values.redis.session.database}},
              'password' => '{{.Values.redis.session.password}}'
            ],
        ],

        'aliyunoss' => [
            'class'  => 'app\components\Aliyunoss',
            'config' => $params['oss'],
        ],

        'elasticsearch' => [
            'class'  => 'app\components\Elasticsearch',
            'config' => $params['elasticsearch']
        ],

        'version_upload_log' => [
            'class' => 'app\components\Logger',
            'logFile' => '@runtime/script_upload/'.date('Y-m-d').'.log',
        ],
    ];
    return array_merge($components, $db);

  console.php: |
    <?php

    $params = require(__DIR__ . '/params.php');
    $db = require(__DIR__ . '/db.php');
    $components = require(__DIR__ . '/components.php');
    unset($components['request']);
    unset($components['errorHandler']);
    unset($components['mailer']);
    unset($components['user']);

    $config = [
        'id' => 'basic-console',
        'basePath' => dirname(__DIR__),
        'bootstrap' => ['log'],
        'controllerNamespace' => 'app\commands',

        /*
        'components' => [
            'cache' => [
                'class' => 'yii\caching\FileCache',
            ],
            'log' => [
                'targets' => [
                    [
                        'class' => 'yii\log\FileTarget',
                        'levels' => ['error', 'warning'],
                    ],
                ],
            ],
            'db' => $db,
        ],
        'params' => $params,
        */

        'components'   => $components,
        'params'       => $params,

        /*
        'controllerMap' => [
            'fixture' => [ // Fixture generation command line.
                'class' => 'yii\faker\FixtureController',
            ],
        ],
        */
    ];

    if (YII_ENV_DEV) {
        // configuration adjustments for 'dev' environment
        $config['bootstrap'][] = 'gii';
        $config['modules']['gii'] = [
            'class' => 'yii\gii\Module',
        ];
    }
    return $config;

  db.php: |
    <?php

    return [
        // 触动DB
        'db' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.main_rw_splitting.host}};dbname={{.Values.mysql.main_rw_splitting.dbname}}',
            'username' => '{{.Values.mysql.main_rw_splitting.user}}',
            'password' => '{{.Values.mysql.main_rw_splitting.password}}',
            'charset'  => 'utf8mb4',
            'attributes' => [
                PDO::MYSQL_ATTR_FOUND_ROWS => true,
            ],
        ],

        'db_pay' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.ts_pay.host}};dbname={{.Values.mysql.ts_pay.dbname}}',
            'username' => '{{.Values.mysql.ts_pay.user}}',
            'password' => '{{.Values.mysql.ts_pay.password}}',
            'charset'  => 'utf8'
        ],

        'db_elf' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.elf.host}};dbname={{.Values.mysql.elf.dbname}}',
            'username' => '{{.Values.mysql.elf.user}}',
            'password' => '{{.Values.mysql.elf.password}}',
            'charset'  => 'utf8'
        ],

        'db_ent' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.enterprise.host}};dbname={{.Values.mysql.enterprise.dbname}}',
            'username' => '{{.Values.mysql.enterprise.user}}',
            'password' => '{{.Values.mysql.enterprise.password}}',
            'charset'  => 'utf8'
        ],

        'db_pro' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.tspro.host}};dbname={{.Values.mysql.tspro.dbname}}',
            'username' => '{{.Values.mysql.tspro.user}}',
            'password' => '{{.Values.mysql.tspro.password}}',
            'charset' => 'utf8',
        ],

        'db_statis' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.ts_statis.host}};dbname={{.Values.mysql.ts_statis.dbname}}',
            'username' => '{{.Values.mysql.ts_statis.user}}',
            'password' => '{{.Values.mysql.ts_statis.password}}',
            'charset' => 'utf8',
        ],
    ];

  params.php: |
    <?php

    return [

        'loginUrl' => 'fsdfsdf',

        'oss' => [
            'OSS_ACCESS_ID'=>'{{.Values.ram.author_platform.access_id}}',
            'OSS_ACCESS_KEY'=>'{{.Values.ram.author_platform.access_key}}',
            'EndPoint'=>'http://fsdfsdf',
            'OSS_BUCKETNAME'=>'fsdfsd',
            'root'=>'fsdf',
            'auth_photo_root' => 'fdsfsf',
        ],

        'ts-source-bucket'=>'fsdfsdfs-fsd',

        'cdn' => [
            'tsp'=>"https://{{.fdsp}}",
            'update'=>"https://{{.fsd.fsd.fds.fsdf}}",
            'oss'=>"https://{{.fsd.fs.ds.oss}}",
        ],

        'RSA_private_key' => file_get_contents( __DIR__ . '/secret/RsaPrivateKey.pem' ),
        'RSA_public_key'  => file_get_contents( __DIR__ . '/secret/RsaPublicKey.pem' ),

        'TSP_private_key' => file_get_contents( __DIR__ . '/secret/TspPrivateKey.pem' ),

        'card_auth_device_max_year' => 3,

        'card_day_consume' => 1,

        'buy_point_unit_price' => 0.05,

        'card_forever_consume' => 1000,

        'elasticsearch' => [
            'host' => [
                'fsdfs.fdsfsdf.54.17:fds'
            ]
        ],


        'devices_list_es_search' => false,
        'system_upgrade' => false,

    ];

  web.php: |
    <?php

    $params = require(__DIR__ . '/params.php');
    $db = require(__DIR__ . '/db.php');
    $components = require(__DIR__ . '/components.php');

    $config = [
        'id'           => 'tsp',
        'basePath'     => dirname(__DIR__),
        'bootstrap'    => ['log'],
        'language'     => 'zh-CN',
        'components'   => $components,
        'params'       => $params,
    ];

    if (YII_ENV_DEV) {
        // configuration adjustments for 'dev' environment
        $config['bootstrap'][] = 'debug';
        $config['modules']['debug'] = [
            'class' => 'yii\debug\Module',
            // uncomment the following to add your IP if you are not connecting from localhost.
            'allowedIPs' => ['115.171.135.157'],
        ];

        $config['bootstrap'][] = 'gii';
        $config['modules']['gii'] = [
            'class' => 'yii\gii\Module',
            // uncomment the following to add your IP if you are not connecting from localhost.
        ];
    }

    return $config;


---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-nginx
data:
  nginx.conf: |
    limit_req_zone $binary_remote_addr zone=addr:10m rate=1000r/s;
    server {
        client_max_body_size 50m;
        listen 80;

        proxy_ignore_client_abort on;
        client_header_timeout 300s;
        client_body_timeout   300s;

        #server_name localhost dev.touchsprite.com;
        server_name  {{ template "nginx.servername" . }};
    	#limit_req   zone=req_one  burst=100;
        limit_req zone=addr burst=5000 nodelay;

        root /www/default/web;
        index index.php index.html index.htm;


        location /static/ {
            access_log off;
            expires 1d;
            root "/www/default/web/frontEnd/dist";
        }

        location /new_public/ {
           access_log off;
           expires 1d;
           root "/www/default/web/frontEnd";
        }

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location = /s-c-data {
          # 允许跨域
          add_header Access-Control-Allow-Origin *;
          add_header Access-Control-Allow-Headers X-Requested-With;
          add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
          default_type text/html;
          return 200 $msec;
        }

        location /ajax/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /site/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /images/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /css/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /js/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /assets/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /script/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }
        location /public/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /key/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /category/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /blacklist/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /device/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /temporary/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /log/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /about/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /weixin/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /openapi/luacts1 {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /weixinqa/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location ~ \.php$ {
            include fastcgi.conf;
            fastcgi_connect_timeout 300s;
            fastcgi_send_timeout 300s;
            fastcgi_read_timeout 300s;
            fastcgi_pass  unix:/var/run/php-fpm.sock;
            #fastcgi_pass   localhost:9000;
            #fastcgi_pass unix:/var/run/php5-fpm.sock;
            try_files $uri =404;
        }
    }



---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-web
data:
  index.php: |
    <?php

    define("SESSIONID_LIFE_TIME", 86400);
    ini_set('session.cookie_lifetime', SESSIONID_LIFE_TIME);

    $host = $_SERVER['HTTP_HOST'];
    $suffix = substr($host, strrpos($host, '.'));

    ini_set('session.cookie_domain', "touchsprite{$suffix}");

    // comment out the following two lines when deployed to production
    {{- if .Values.debug }}
    defined('YII_DEBUG') or define('YII_DEBUG', true);
    defined('YII_ENV') or define('YII_ENV', 'dev');
    {{- else }}
    defined('YII_DEBUG') or define('YII_DEBUG', false);
    defined('YII_ENV') or define('YII_ENV', 'dev');
    {{- end }}


    require(__DIR__ . '/../vendor/autoload.php');
    require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');

    $config = require(__DIR__ . '/../config/web.php');

    (new yii\web\Application($config))->run();



---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-supervisor
data:


---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-root
data:


---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-secret
data:
  TspPrivateKey.pem: |
    -----BEGIN RSA PRIVATE KEY-----
    MIIEpQIBAAKCAQEAzwyG5Ag2AnoAab+87ZJS/h7Jh4ZyIgH3JTbQTW1nsxuP/dNp
    a0uHqNkFjgN6QETVin3WTP/nTQt0PqKlJn9Tb8O8R+0iP1pGtacENd8iiUoNc1ts
    8Pu29IyFrQTnT+CG2eb4EVVNSwYXKyQeQirLohNDE5ld+dnjQlMDcKZCdlveb6T7
    22qJ6pYSvxi7D5yVCdaAmHCXzNEWpYizon5dxDJlhXZsyTPJmkvYWaxkhK0oIU4S
    b/cJBLgBT9VmQGLuCNK3UzZmR7rzoHj70aVDc9nKSUu7RD9chYWJaz61dehfgG8e
    NF6kOSnW83J+4dPi6miEsGcN/5PTM+MX/ddmiQIDAQABAoIBADFM5U2k2t9qF3EW
    s7DJ97MEt63qiICqgSO+UoktNNUEChxBW8etm2bMDjOLhm+JNGOepQl+oZ/Jy2si
    pTpudPqW290wjMgTAeU9GJaPRBT2qg8+xMj41s6SKz5QfZeaeeGmyoiuDBKCJ8Ah
    AId20zgLaBxhl2vnwuJHC/mlzQuLVLvbC7g+S02e8WY4h4eBZ1iBQmL7D0pzyQ+j
    aiGlZvVJ+VBPXHpqHv+HM1wjqYmQAH2TfNJdSDOwuQCNpishBBV8yCPk6BrHZpAH
    xkTbrnGmBFOl6HqGfFaGKxaxl7v58jBckQVoVckqEm+pZmC9WGhu2rVZ/MZOSNQm
    bkkExVECgYEA8gEDF9asDanYQYcaNzI4fVzxWSR1xBTFiQGUGWhKC+u/RX2dT7gG
    rITy2jKtzZn74EKU5Ope65ISkw4Mo7Ha7RwFsDhv+QXel+CX2r6+8r7PfQ5CcGuj
    UldBXTHu2tmMRq3HORRIrpVbXa0qw0G9jt9Fcdw7pynvSdvnsPXBbX0CgYEA2wX9
    D2vh0BFC6SJwb30+DT5IX5ITXUybiBJ8C7+7eHfK5fwwgaZae6n5QUra/vhQ8yDz
    YFBshIVZYdV3vYH2RkbuoZy35Finyoq0jUmHdOQl2Ji4rRark9nvsYAWnCGXCZPc
    jH1TcToYVejjpTa9Jfcq9kfc0dbr3PxSs+Xlmv0CgYEAoye7hh7c8HlJqyQCsKPT
    IfG/ZXIHU6MNakj+KAL/qPnPgnIl1NEk7rrTX/g65RqjjZZV+99nDzrz+uDF9La7
    +o+h5iSmmSUz5QEuX/OpmM675Hvwnwpymdjp4IMBndp9kEkov3rFZa6cYpOU+P8h
    ZWlx0EnCjfjfstPnaI7HUaECgYEA1SNewEMb3H7vvi/leplGaVzS0S416fVC5YgX
    bteGeBUbPfPMwF5Cb1VZWlCeDMFZBUBrlq6s68lY0fwKKkDuiDU+w8berTgZEOEq
    EtQbHYVnzv/Pt6D4F0leGD2twwJtGMTrOfff0w6h1UhmXipD33VU7zT8ha8rPeZT9O8
    J5Txe4ECgYEA3yVm5TvZpi7GWtjklFGX+/4kISL8MkkvS7BhStk1y/F5Aj4F+/LI
    GbKzsC78vYhsqBhP+jNCWgKGSjEOBFsjMl7SnpU7zQ6wO+N5N4jDeOlDS7YbafCC
    mHVO5XDmVw93opRVsm8Fns6s0NhDQP4rzO1bODUFxZH1QNMZ4Hle7tw=
    -----END RSA PRIVATE KEY-----

  RsaPrivateKey.pem: |
    -----BEGIN RSA PRIVATE KEY-----
    MIICXAIBAAKBgQCh1l7EsjADCC2sSBFun7SbAftCnufCklS9OsFE6U4PY/M/dE8q
    LAP36SUkS28CesC7DBN7kka7F+LQHiO2KmxQi8YcayKZ5IPGvNhoh0gCdTnvXRE9
    FSmP42KiDbnJOGWQO86Y1LpQY74MJvYsnxBNYURc719A/ZRuV9uPJSZXHwIDAQAB
    AoGAL03NnYjH59r4HqdiEQe1bqmBm9N+wqyrADSwUUgwfOcmLqH8kcMT1d7b8GPs
    KrlepE2/VBtJeV5d+Z8VqSV1Sw7Rmkpn2nMeQ1rhavkipnB3tanEYwFgpI9TFg+F
    GRINrrREbvsYMVSe44G0BxB3LcgdLcfsssdi6QLWzXMEoddFdrAECQQDM4CQWVceK8XTS
    w6Bx6eQJAUZr7vK5YdnrZxGQ0Q85HMlD7uPeFCbwkPYGUKHiNj9vCyzJ3iPz3v5P
    1Ncg5n+fAkEAyjjdfw4Ub188kfnC+JYzHzdZODPrqiatCsAaXoEDq7Iul9NDAH75
    HW4WR6z2SMTozcfIaqz7QSQ4AK/CheL4gQJAENpTPZ8axfwsvvWmqhgyUOdQ8qn6
    P3OkKHAXCtGXrfwHNlZdWjRQK7PQ+R4C4wfRWgISUhy62mG6i7iXZbZwQwJBALZ6
    +A1GJFSX6S2E51axGzKpHH6mA5xISFByJ5lt7GUMZhUlU8nnyl6vT7WgM6JY5geD
    p6vzqssOpuafs/ZjaYECQEzevhkcJUzSBOTU8y46fx9vBcMbxFC8wAXn0rnIfUB5
    bl2s/46Qxw6KS0+ZD6XXSFfgxi7Rj9nP9Kq0YhZ65d0=
    -----END RSA PRIVATE KEY-----

  RsaPublicKey.pem: |
    -----BEGIN PUBLIC KEY-----
    MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCh1l7EsjADCC2sSBFun7SbAftC
    nufCklS9OsFE6U4PY/M/dE8qLAP36fffSUkS28CesC7DBN7kka7F+LQHiO2KmxQi8Yc
    ayKZ5IPGvNhoh0gCdTnvXRE9FSmP42KiDbnJOGWQO86Y1LpQY74MJvYsnxBNYURc
    719A/ZRuV9uPJSZXHwIDAQAB
    -----END PUBLIC KEY-----


---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-fpm
data:
  zzz-docker.conf: |
    [global]
    daemonize = no

    [www]
    listen = /var/run/php-fpm.sock
    listen.mode = 0777

What did you expect to see?

I need information remind To help me

What did you see instead?

I didn't see any information

@theckman
Copy link
Contributor

@cloudmer closing the loop from the Gophers Slack: the Go issue tracker isn't the right place to ask for this kind of help. Feel free to direct your question to the #newbies or #general channels.

I think this issue can be closed.

@cloudmer
Copy link
Author

@cloudmer关闭了Gophers Slack的循环:Go问题跟踪器不是寻求此类帮助的正确位置。随时将您的问题定向#newbies#general渠道。

我认为这个问题可以解决。

thank you

@cloudmer
Copy link
Author

I found that I used it in the project. https://github.com/oxequa/realize
This is the problem that has arisen

@golang golang locked and limited conversation to collaborators Jan 15, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants