Docker容器的重命名和自动重启

一、docker的容器的名称

  1. 重命名
    创建容器的时候,没有执行名字的话,默认是随机生成的名字。如果想对它进行重命名的话,可以使用下列语法:
    docker rename [旧容器名] [新容器名]
    
    实例如下:
    [root@localhost ~]# docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
    9e003c5ce2e9        centos:httpd        "/bin/sh -c /usr/l..."   28 minutes ago      Up 28 minutes       0.0.0.0:80->80/tcp   thirsty_kalam
    [root@localhost ~]# docker rename thirsty_kalam centos-httpd
    [root@localhost ~]# docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
    9e003c5ce2e9        centos:httpd        "/bin/sh -c /usr/l..."   32 minutes ago      Up 32 minutes       0.0.0.0:80->80/tcp   centos-httpd
    
    可以看到,原本名字为thirsty_kalam的容器,被改成了centos-httpd
  2. 容器命名
    如果在创建的时候,想给容器命名的话,可以使用下列语法:
    docker run -d --name [容器名称] centos:httpd /bin/bash
    
    实例如下:
    [root@localhost ~]# docker run -d --name mycentos centos:httpd /bin/bash
    572ae047517b1d08660d368b2884f542f20f56804cd3aa4b73e735fdffa35110
    [root@localhost ~]# docker ps -a
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS                NAMES
    572ae047517b        centos:httpd        "/bin/bash"              31 seconds ago      Exited (0) 30 seconds ago                        mycentos
    9e003c5ce2e9        centos:httpd        "/bin/sh -c /usr/l..."   37 minutes ago      Up 37 minutes               0.0.0.0:80->80/tcp   centos-httpd
    
    可以看到,名称为mycentos的容器已经创建成功。
  3. 设定容器的主机名
    使用-h设定,语法如下:
    docker run -it -h [主机名] centos:httpd /bin/bash
    
    实例如下:
    [root@localhost ~]# docker run -it -h centos-host centos:httpd /bin/bash
    [root@centos-host /]# 
    
    可以看到创建的成功的容器,主机名已经由随机的名称,变成我们自定义的centos-host了。

二、设定容器自动重启

设定容器的开机自动启动的语法如下:

docker run --restart=always -itd centos:httpd /bin/bash

创建的时候,添加--restart参数。
docker的重启策略有以下几种:

no:默认策略,在容器退出时丌重启容器
on-failure:在容器非正常退出时(退出状态非 0),才会重启容器
on-failure:3:在容器非正常退出时重启容器,最多重启 3 次 failure失败
always:在容器退出时总是重启容器
unless-stopped:在容器退出时总是重启容器,但是丌考虑在 Docker 守护迚程启劢时就已经停止了的容器。

实例如下:

[root@localhost ~]# docker run --restart=always -itd centos:httpd bash
461c2c475f1e443e531c0a9552704c76eeb1015f7d5bd454a285d60718c8bd2f
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
461c2c475f1e        centos:httpd        "bash"              9 seconds ago       Up 9 seconds                            condescending_hodgkin
[root@localhost ~]# systemctl restart docker
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
461c2c475f1e        centos:httpd        "bash"              34 seconds ago      Up 3 seconds                            condescending_hodgkin

在docker服务重启后,容器依然重启成功。

如果创建时未指定--restart=always,可通过 update 命令设置
语法:

docker update --restart=always [容器ID或名字] 

你可能感兴趣的:(Docker容器的重命名和自动重启)