启动已被终止的容器名为mycentos的容器代码为()。(1 分) A.docker restart mycentos B.docker run mycentos C.docker start mycentos D.docker stop mycentos
时间: 2023-08-14 20:49:06 浏览: 44
正确答案是 C.docker start mycentos。需要使用`docker start`命令来启动已经被终止的容器。例如,要启动一个名为mycentos的容器,可以使用`docker start mycentos`命令。与之不同的是,`docker run`命令用于启动一个新容器,而`docker restart`用于重启正在运行的容器。而`docker stop`命令用于停止正在运行的容器。
相关问题
普通用户可以特权方式启动docker容器吗?docker run --privileged
默认情况下,只有 root 用户才能使用 `--privileged` 参数启动 Docker 容器,因为该参数会让容器拥有访问宿主机系统资源的特权。如果使用普通用户启动容器,会提示权限不足的错误。
不过,您可以通过配置 Docker 守护进程来允许普通用户启动特权容器。具体来说,您需要将普通用户添加到 `docker` 用户组中,并将 Docker 守护进程配置为允许该用户组的成员使用特权容器。
具体操作步骤如下:
1. 将普通用户添加到 `docker` 用户组中:
```
sudo usermod -aG docker your_username
```
其中,`your_username` 是您要添加到 `docker` 用户组中的用户名。
2. 编辑 Docker 配置文件 `/etc/docker/daemon.json`,配置容器运行时的默认参数:
```
{
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
},
"runcmd": [
"/usr/sbin/sysctl -w kernel.perf_event_paranoid=-1"
],
"max-concurrent-downloads": 10,
"max-concurrent-uploads": 10,
"iptables": true,
"ipv6": true,
"userns-remap": "default",
"experimental": true,
"features": {
"buildkit": true
},
"group": "docker"
}
```
其中,`group` 参数设置为 `docker`,表示允许属于 `docker` 用户组的成员使用 Docker。
3. 重新启动 Docker 守护进程:
```
sudo systemctl daemon-reload
sudo systemctl restart docker
```
4. 使用普通用户身份启动特权容器:
```
docker run --privileged -it bcc-image
```
现在,普通用户已经可以使用特权容器了。需要注意的是,使用特权容器会增加安全风险,需要谨慎使用。
docker 容器 改为 自动重启
要将Docker容器设置为自动重启,可以使用Docker的restart策略。Docker提供了四种可用的restart策略:
1. "no":不自动重启容器。这是默认策略。
2. "on-failure":只有在非零退出代码时才会自动重启容器。
3. "always":总是自动重启容器,不考虑退出代码。
4. "unless-stopped":除非手动停止容器,否则始终自动重启。
要将容器设置为自动重启,可以使用`docker run`命令的`--restart`标志。例如,要将容器设置为每次都自动重启,可以运行以下命令:
```shell
docker run --restart always <image>
```
如果您只想在容器失败时才自动重启,可以使用以下命令:
```shell
docker run --restart on-failure <image>
```
您还可以使用Docker Compose来设置自动重启。在您的docker-compose.yml文件中,可以为每个服务指定`restart`选项。例如:
```yaml
services:
myservice:
image: <image>
restart: always
```
使用上述方法,您可以将Docker容器配置为自动重启以确保持续运行。