MCPcopy Create free account
hub / github.com/1Panel-dev/1Panel / UpdateIpv6Option

Method UpdateIpv6Option

agent/app/service/docker.go:290–327  ·  view source on GitHub ↗
(req dto.Ipv6Option)

Source from the content-addressed store, hash-verified

288}
289
290func (u *DockerService) UpdateIpv6Option(req dto.Ipv6Option) error {
291 err := createIfNotExistDaemonJsonFile()
292 if err != nil {
293 return err
294 }
295
296 file, err := os.ReadFile(constant.DaemonJsonPath)
297 if err != nil {
298 return err
299 }
300 daemonMap := make(map[string]interface{})
301 _ = json.Unmarshal(file, &daemonMap)
302
303 daemonMap["ipv6"] = true
304 daemonMap["fixed-cidr-v6"] = req.FixedCidrV6
305 if req.Ip6Tables {
306 daemonMap["ip6tables"] = req.Ip6Tables
307 }
308 if req.Experimental {
309 daemonMap["experimental"] = req.Experimental
310 }
311 newJson, err := json.MarshalIndent(daemonMap, "", "\t")
312 if err != nil {
313 return err
314 }
315 if err := os.WriteFile(constant.DaemonJsonPath, newJson, 0640); err != nil {
316 return err
317 }
318
319 if err := validateDockerConfig(); err != nil {
320 return err
321 }
322
323 if err := controller.HandleRestart("docker"); err != nil {
324 return fmt.Errorf("failed to restart Docker: %v", err)
325 }
326 return nil
327}
328
329func (u *DockerService) UpdateConfByFile(req dto.DaemonJsonUpdateByFile) error {
330 err := createIfNotExistDaemonJsonFile()

Callers

nothing calls this directly

Calls 3

validateDockerConfigFunction · 0.85
WriteFileMethod · 0.80

Tested by

no test coverage detected