网站开发申请微信支付,域名解析后如何建设网站,石家庄网站关键词推广,专做医药中间体的网站ubuntu20.04设置docker容器开机自启动 1 docker自动启动2 容器设置自动启动3 容器自启动失败处理 1 docker自动启动
#xff08;1#xff09;查看已启动的服务
$ sudo systemctl list-units --typeservice此命令会列出所有当前加载的服务单元。默认情况下#xff0c;此命令… ubuntu20.04设置docker容器开机自启动 1 docker自动启动2 容器设置自动启动3 容器自启动失败处理 1 docker自动启动
1查看已启动的服务
$ sudo systemctl list-units --typeservice此命令会列出所有当前加载的服务单元。默认情况下此命令仅列出激活状态为active的服务单元。--all选项可列出所有服务单位无论激活状态如何。 UNIT服务单元名称 LOAD表示systemd是否正确解析了单元的配置并将该单元加载到内存中 ACTIVE表示单元的高级激活状态此信息表示单元是否已经成功启动 SUB表示单元的低级别激活状态此信息指示有关该单元的更多详细信息 DESCRIPTION表示单元的简短描述 图中docker明务已经启动如果没有启动则执行启动命令 systemctl start docker
2查看是否设置开机启动
$ sudo systemctl list-unit-files | grep docker
#或者使用查看status
$ sudo systemctl status docker.service显示enabled说明docker服务已设置开机启动 如果未设置则执行命令 systemctl enable docker.service
2 容器设置自动启动
1在启动命令中添加 --restartalways
sudo docker run -d --restartalways --namenginx 605c77e624dd参数说明 --restartalways 表示容器退出时docker会总是自动重启这个容器 --restarton-failure:3 表示容器的退出状态码非0(非正常退出)自动重启容器3是自动重启的次数。超过3此则不重启 --restartno 默认值容器退出时docker不自动重启容器 --restartunless-stopped 表示容器退出时总是重启但是不考虑docker守护进程运行时就已经停止的容器 2把运行中的容器更新为自启动
$ sudo docker update --restartalways [容器id或name] 参考文章 Docker服务以及容器如何设置服务器开机自动启动 docker服务设置自动启动
3 容器自启动失败处理
1在执行以下命令启动容器后重启服务器发现容器没有自动启动。
$ sudo docker run -d --name test --gpus all -p 192.168.3.30:80:5000 --restartalways waf/facerecognition/arm64v8
$ sudo reboot查看docker服务自启动状态
$ sudo docker ps
$ sudo journalctl -u docker.service出现错误信息 levelwarning msgFailed to allocate and map port 80-80: Error starting userland proxy: listen tcp4 192.168.3.30:80: bind: cannot assign requested address … levelerror msgfailed to start container containerecfb585203a6d0d172d... errordriver failed programming external connectivity on endpoint test (18458c46.. 2修改-p参数执行启动容器命令后重启服务器test和test2容器均可以自启动。
$ sudo docker run -d --name test --gpus all -p 127.0.0.1:80:5000 --restartalways waf/facerecognition/arm64v8
$ sudo docker run -d --name test2 --gpus all -p 90:5000 --restartalways waf/facerecognition/arm64v8
$ sudo reboot
$ sudo docker ps但是使用postman发送请求时只有test2即90端口可以接收到80无法接收到。所以在部署服务启动容器时-p参数直接写端口不要写ip(192.168.3.30)或者“127.0.0.1”。 参考文档 Bind: cannot assign requested address