如何设置docker开机自启动,并设置容器自动重启

 更新时间:2023年02月14日 09:18:26   作者:IT_狂奔者  
这篇文章主要介绍了如何设置docker开机自启动,并设置容器自动重启问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

设置docker开机自启动,并设置容器自动重启

设置docker开机启动

systemctl enable docker

设置容器自动重启

1)创建容器时设置

docker run -d --restart=always --name 设置容器名 使用的镜像
(上面命令  --name后面两个参数根据实际情况自行修改)
 
# Docker 容器的重启策略如下:
 --restart具体参数值详细信息:
       no        // 默认策略,容器退出时不重启容器;
       on-failure    // 在容器非正常退出时(退出状态非0)才重新启动容器;
       on-failure:3    // 在容器非正常退出时重启容器,最多重启3次;
       always      // 无论退出状态是如何,都重启容器;
       unless-stopped  // 在容器退出时总是重启容器,但是不考虑在 Docker 守护进程启动时就已经停止了的容器。

2)修改已有容器,使用update

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

docker update --restart=always 容器ID(或者容器名)
(容器ID或者容器名根据实际情况修改)

docker常用命令 设置docker、容器 自动启动

启动docker 设置docker 自动启动

测试环境我们为了方便很多都适用docker 容器进行安装环境方便管理和设置,为了避免在开机和关机过程中频繁的手动重启容器,我们可以设置容器跟随docker 服务自动重启,命令如下设置,同时我们可以将docker 服务设置启动服务器自动启动,即可解决我们的问题。

#设置docker 服务 跟随服务器操作系统启动
systemctl enable docker.service

#设置docker内部的容器 自动跟随docker自动启动 ,增加参数 --restart=always
docker run --restart=always .....
# 更新内部 修改 内部容器 自动启动
docker update --restart=always
# docker 修改容器的名字 , 例如一下命令
docker rename xjignf redis

docker启动容器实例

docker启动mysql容器

命令说明:

  • -p 3306:3306:将容器的3306端口映射到主机的3306端口
  • -v $PWD/conf/my.cnf:/etc/mysql/my.cnf:将主机当前目录下的conf/my.cnf挂载到容器的/etc/mysql/my.cnf
  • -v $PWD/logs:/logs:将主机当前目录下的logs目录挂载到容器的/logs
  • -v $PWD/data:/mysql_data:将主机当前目录下的data目录挂载到容器的/mysql_data
  • -e MYSQL_ROOT_PASSWORD=123456:初始化root用户的密码

具体的操作命令如下,可以进行参考

#启动命令,启动mysql实例
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql --restart=always
#如果行保留在容器外面方便后期更新服务和更换服务保留数据,可以将数据映射到主机的文建目录中
docker run -itd --name mysql -v /data/docker/mysql:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql --restart=always

docker启动mysql容器

开发测试中必不可少的缓存服务,可以参考执行命令

docker run -p 6379:6379 -v /data/docker/redis:/data -d redis redis-server  --restart=always

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 使用docker搭建redis主从的方法步骤

    使用docker搭建redis主从的方法步骤

    这篇文章主要介绍了使用docker搭建redis主从的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • docker多个容器的相互通信实现步骤

    docker多个容器的相互通信实现步骤

    本文介绍了在宿主机上运行多个Docker容器时的几种通信方式,包括默认的桥接网络、自定义网络、--link参数、Host网络、Docker-compose和共享数据卷等,每种方式都有其特点和适用场景,感兴趣的朋友跟随小编一起看看吧
    2025-02-02
  • CentOS7 Nexus安装步骤详细介绍

    CentOS7 Nexus安装步骤详细介绍

    这篇文章主要介绍了CentOS7 Nexus安装步骤详细介绍的相关资料,这里对CentOS7 安装Nexus 进行了详细介绍,需要的朋友可以参考下
    2016-11-11
  • 使用docker创建和运行跨平台的容器化mssql数据库

    使用docker创建和运行跨平台的容器化mssql数据库

    这篇文章主要介绍了使用docker创建和运行跨平台的容器化的mssql数据库,本章介绍了在window10专业版下如何利用docker创建mssql数据库,需要的朋友可以参考下
    2022-05-05
  • docker-compose搭建prometheus+grafana+钉钉告警

    docker-compose搭建prometheus+grafana+钉钉告警

    本文主要介绍了docker-compose搭建prometheus+grafana+钉钉告警,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Docker启动失败报错Failed to start Docker Application Container Engine的解决办法

    Docker启动失败报错Failed to start Docker Application Containe

    最近在启动Docker的时候发现了个错误,所以下面这篇文章主要给大家介绍了关于Docker启动失败报错Failed to start Docker Application Container Engine的解决办法,需要的朋友可以参考下
    2022-08-08
  • Docker如何实现搭建本地私有仓库

    Docker如何实现搭建本地私有仓库

    这篇文章主要介绍了Docker搭建本地私有仓库的实现过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-07-07
  • docker镜像拉取过程和远程代理配置过程

    docker镜像拉取过程和远程代理配置过程

    Docker镜像拉取过程涉及客户端、守护进程、注册表和网络通信,客户端发送请求,守护进程处理并从注册表下载镜像层,配置包括Docker守护进程的代理、TLS设置和防火墙规则,确保网络策略和安全措施到位,以优化镜像拉取和保护传输过程
    2024-11-11
  • 用Jenkins+Docker+Maven+Git实现持续集成(超详细)

    用Jenkins+Docker+Maven+Git实现持续集成(超详细)

    本文通过较大的篇幅详细介绍了Harbor这款企业级docker管理工具的使用,并通过案例演示了如何在jenkins中配置任务集成Harbor,从而实现镜像的构建推送与分发,需要的朋友可以参考下
    2024-04-04
  • 解决docker不加载 /etc/docker/daemon.json文件的问题小结

    解决docker不加载 /etc/docker/daemon.json文件的问题小结

    在Ubuntu 24.04 LTS Server上安装Docker后,发现镜像不保存且配置文件路径不正确,通过检查发现Docker服务启动时加载了非预期的配置文件,最终通过修改服务配置文件解决了问题,感兴趣的朋友跟随小编一起看看吧
    2024-11-11

最新评论