类别:Linux / 日期:2025-04-23 / 浏览:320 / 评论:0
在 Portainer 中设置容器自启动(即容器在 Docker 主机启动时自动运行)可以通过以下步骤完成:
方法 1:通过 Portainer 界面设置
登录 Portainer
打开 Portainer Web 界面,进入你的 Docker 环境(Local 或远程环境)。找到目标容器
点击左侧菜单的 Containers。
在容器列表中找到需要设置自启动的容器,点击其名称进入详情页。
配置重启策略
Always:容器退出后总是重启(包括 Docker 服务重启时)。
Unless stopped:除非手动停止,否则始终重启(推荐)。
On failure:仅当容器异常退出(非零状态码)时重启。
点击右上角的 Duplicate/Edit 按钮(如果是运行中的容器,需要先停止它才能编辑)。
在 Advanced container settings 部分,找到 Restart policy(重启策略)。
选择以下选项之一:
点击 Deploy the container 保存设置。
方法 2:通过 docker run
命令设置
如果你是通过命令行创建容器,可以在运行命令时直接指定重启策略:
docker run -d --restart unless-stopped --name my_container my_image
--restart
参数可选值:no
(默认):不自动重启。always
:总是重启。unless-stopped
:除非手动停止,否则重启。on-failure[:max-retries]
:失败时重启,可指定最大重试次数。
方法 3:修改已运行容器的配置
如果容器已存在,可以通过以下步骤更新重启策略:
停止容器:
docker stop my_container
修改容器配置:
docker update --restart unless-stopped my_container
启动容器:
docker start my_container
验证设置
通过以下命令检查容器的重启策略:
docker inspect my_container | grep -i restart
重启 Docker 服务后确认容器是否自动启动:
sudo systemctl restart dockerdocker ps -a | grep my_container
注意事项
Portainer 版本差异:不同版本的 Portainer 界面可能略有不同,但关键选项名称类似。
Docker 服务依赖:容器自启动的前提是 Docker 服务本身已设置为开机启动(通常默认启用)。
unless-stopped
vsalways
:unless-stopped
更灵活,手动停止后不会自动重启。always
会无视手动停止操作,在 Docker 重启后强制启动容器。