首页 > 其他分享 >Docker(十七)-修改Docker容器启动配置参数

Docker(十七)-修改Docker容器启动配置参数

时间:2024-04-24 14:00:11浏览次数:18  
标签:容器 十七 sudo server mysql Docker docker

有时候,我们创建容器时忘了添加参数 --restart=always ,当 Docker 重启时,容器未能自动启动,

现在要添加该参数怎么办呢,方法有二:

1、Docker 命令修改

docker container update --restart=always 容器名字

2、直接改配置文件

首先停止容器,不然无法修改配置文件

配置文件路径为:/var/lib/docker/containers/容器ID

在该目录下找到一个文件 hostconfig.json ,找到该文件中关键字 RestartPolicy

修改前配置:"RestartPolicy":{"Name":"no","MaximumRetryCount":0}

修改后配置:"RestartPolicy":{"Name":"always","MaximumRetryCount":0}

最后启动容器。

 

修改docker容器的挂载路径


 

  • 停止所有docker容器
    sudo docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)
  • 停止docker服务
    sudo service docker stop
  • 修改mysql路径
    cd ~
    sudo cp -r mysql/ /home/server/
  • 备份容器配置文件
    cd /var/lib/docker/containers/de9c6501cdd3
    cp hostconfig.json hostconfig.json.bak
    cp config.v2.json config.v2.json.bak
  • 修改hostconfig的冒号前的配置路径
    vi hostconfig.json
    
    "Binds": ["/home/server/mysql/conf/my.cnf:/etc/mysql/my.cnf", "/home/server/mysql/logs:/logs", "/home/server/mysql/data:/mysql_data"],
  • 修改config的Source的配置路径 复制代码
    vi config.v2.json
    
           "MountPoints": {
    
                  "/etc/mysql/my.cnf": {
    
                         "Source": "/home/server/mysql/conf/my.cnf",
    
                         "Destination": "/etc/mysql/my.cnf",
    
                         "RW": true,
    
                         "Name": "",
    
                         "Driver": "",
    
                         "Relabel": "",
    
                         "Propagation": "rprivate",
    
                         "Named": false,
    
                         "ID": ""
    
                  },
    
                  "/logs": {
    
                         "Source": "/home/server/mysql/logs",
    
                         "Destination": "/logs",
    
                         "RW": true,
    
                         "Name": "",
    
                         "Driver": "",
    
                         "Relabel": "",
    
                         "Propagation": "rprivate",
    
                         "Named": false,
    
                         "ID": ""
    
                  },
    
                  "/mysql_data": {
    
                         "Source": "/home/server/mysql/data",
    
                         "Destination": "/mysql_data",
    
                         "RW": true,
    
                         "Name": "",
    
                         "Driver": "",
    
                         "Relabel": "",
    
                         "Propagation": "rprivate",
    
                         "Named": false,
    
                         "ID": ""
    
                  },
    
                  "/var/lib/mysql": {
    
                         "Source": "",
    
                         "Destination": "/var/lib/mysql",
    
                         "RW": true,
    
                         "Name": "85d91bff7012b57606af819480ce267449084e81ab386737c80ace9fe75f6621",
    
                         "Driver": "local",
    
                         "Relabel": "",
    
                         "Propagation": "",
    
                         "Named": false,
    
                         "ID": "897cd0152dd152166cb2715044ca4a3915a1b66280e0eb096eb74c2d737d7f77"
    
                  }
    
           },
    复制代码
  • 启动docker服务
     sudo service docker start
  • 启动所有docker容器
    sudo docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)

     

修改docker默认的存储位置


 

docker 的所有images及相关信息存储位置为:/var/lib/docker

  • 查看默认的docker存储路径
    docker info |grep 'Docker Root Dir'
    WARNING: No swap limit support Docker Root Dir: /var/lib/docker
  • 停止所有docker容器
    sudo docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)
  • 停止docker服务
    sudo service docker stop
    cd /var/lib
  • 打包docker目录
    sudo tar -czvf /usr/docker.tar.gz docker/
    cd /usr/
    sudo tar -xzvf docker.tar.gz
  • 修改docker默认的存储位置
    sudo vim /etc/docker/daemon.json
    
    {
        "graph": "/home/server/docker"
    }
  • 启动docker服务
    sudo service docker start
  • 启动所有docker容器
    sudo docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)
  • 查看修改后docker存储路径
    docker info |grep 'Docker Root Dir'
    WARNING: No swap limit support Docker Root Dir: /usr/docker


      原文:https://i.cnblogs.com/posts/edit

标签:容器,十七,sudo,server,mysql,Docker,docker
From: https://www.cnblogs.com/lvjinlin/p/18155141

相关文章

  • Docker(十四)-Docker四种网络模式
    Docker安装时会自动在host上创建三个网络,我们可用 dockernetworkls 命令查看:none模式,使用--net=none指定,该模式关闭了容器的网络功能。host模式,使用--net=host指定,容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。bridge模式,使用--net=bridge指定......
  • Pandas 2.2 中文官方教程和指南(十七)
    原文:pandas.pydata.org/docs/重复标签原文:pandas.pydata.org/docs/user_guide/duplicates.htmlIndex对象不需要是唯一的;你可以有重复的行或列标签。这一点可能一开始会有点困惑。如果你熟悉SQL,你会知道行标签类似于表上的主键,你绝不希望在SQL表中有重复项。但pandas的......
  • P3667 [USACO17OPEN] Bovine Genomics G (set容器)
    [USACO17OPEN]BovineGenomicsG题目描述FarmerJohnowns\(N\)cowswithspotsand\(N\)cowswithoutspots.Havingjustcompletedacourseinbovinegenetics,heisconvincedthatthespotsonhiscowsarecausedbymutationsinthebovinegenome.Atgr......
  • 关于set容器
    简介集合(set)用以有序地存储互异元素的容器。其实现是由节点组成的红黑树,每个节点都包含着一个元素,节点之间以某种比较元素大小的谓词进行排列。头文件#include<set>常用操作声明set<数据类型>变量名操作插入与删除insert(x)当容器中没有等价元素的时候,将元素......
  • springboot源码:容器启动过程(扩展业务对象、bean 生命周期)&动态注册自己的业务对象&
    0.SpringbootRun方法启动org.springframework.boot.SpringApplication#run(java.lang.String...)启动 publicConfigurableApplicationContextrun(String...args){ longstartTime=System.nanoTime(); DefaultBootstrapContextbootstrapContext=createBootstrap......
  • docker-desktop使用redis镜像问题
    在学习docker的过程中尝试安装redis提供服务给本地开发环境,由于在windows环境下开发所以使用docker-desktop+wsl模式下运行,具体安装过程这里不展示。1.挂载配置文件与存储目录  刚开始的时候想挂载在docker运行的宿主wsl子系统中,docker-desktop运行时会启动docker-desktop与do......
  • 【Docker系列】Section 2: Creating Kubernetes Development Clusters, Understandi
    引言:在Section2中,我们将转移到Kubernetes集群和对象。本节的第一章将解释如何使用一个流行的工具来创建库集群,称为KinD。我们将解释如何创建不同的网络集群,其范围从single-node(单节点)集群到使用HAProxy作为工作节点的负载平衡器的multiple-node(多节点)集群。通过一个可工作......
  • ubuntu安装docker及k8s
    一.安装Docker第一步:更新系统软件包索引sudoaptupdate第二步:安装必要依赖包sudoaptinstallapt-transport-httpsca-certificatescurlgnupglsb-releasesoftware-properties-common第三步:添加Docker官方GPG密钥curl-fsSLhttps://download.docker.com/linux/u......
  • Hyperf - windows11 使用docker搭建hyperf框架
    一、创建文件夹按自己习惯创建一个文件夹D:\workspace二、创建docker容器并搭建Hyperf1.创建Hyperf容器打开win+R输入:PowerShell进入命令页dockerrun-d--namehyperf-vD:/workspace/skeleton:/hyperf-skeleton-p9501:9501-it--privileged-uroothyperf/hype......
  • 微服务--Docker
    视频笔记链接  https://b11et3un53m.feishu.cn/wiki/space/7229522334074372099?ccm_open_type=lark_wiki_spaceLink&open_tab_from=wiki_homeDocker内相关名词自己的理解:镜像:便携式提供服务的文件(打包好了应用本身,应用所需的环境、配置、系统函数库),相比于往常我们对于32位......