安装docker

官方源:https://download.docker.com/linux/centos/docker-ce.repo
阿里源:http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
这里使用官方源来安装,Docker在国内还算稳定,只是偶尔抽风

yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce

启动docker

systemctl start docker

添加docker开机启动

systemctl enable docker

常用操作

1. 拉取镜像

命令:

docker pull [镜像名]

下面我们将示例从Docker Hub下载Nginx镜像:

docker pull nginx

2. 运行镜像

语法格式:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

options 参数说明

参数讲解
-i以交互模式运行容器,通常与 -t 同时使用
-t启动容器后,为容器分配一个命令行,通常与 -i 同时使用
-i以交互模式运行容器,通常与 -t 同时使用
-d守护进程,后台运行该容器
-p指定端口映射,格式:主机(宿主)端口:容器端口
-P随机端口映射,容器内部端口随机映射到主机的端口(49153起始 49153到65535)
-v目录映射,容器目录挂载到宿主机目录,格式: <host目录>:<容器目录>
--name my_container为容器指定名称 my_container 为你可自定义的值
--restartalways:容器在退出后将自动重启;no:容器退出时不重启;on-failure:容器非正常退出(退出代码不为0)时重启;unless-stopped:除非手动停止,否则容器将一直重启
--network指定容器所在的网络
-m, --memory bytes设置容器使用内存最大值
-h, --hostname string指定容器的 host name
–dns 8.8.8.8指定容器 dns 服务器
-e username="teacher"设置环境变量
–privileged容器内是否使用真正的 root 权限
–dns 8.8.8.8指定容器 dns 服务器
-it以交互模式运行容器
-rm容器停止后自动删除
这里仅列出常见的参数。

示例

我们将使用以下代码创建一个Nginx容器:

docker run --name my-nginx-container -p 8080:80 -d nginx

这个命令做了以下几件事情:

  • 以Nginx镜像为基础创建一个新的容器。
  • 将容器命名为“my-nginx-container”。
  • 将容器的80端口映射到本地计算机的8080端口。
  • 在后台运行容器。

3. 查看容器

查看正在运行的容器

docker ps

查看包括正在运行的和已停止的容器

docker ps -a

4. 重启容器

命令:

docker restart [容器名称]

示例:

docker restart my_container

5. 停止容器

命令:

docker stop [容器名称]

示例:

docker stop my-nginx-container

6. 删除容器

命令:

docker rm [容器名称]

示例:

docker rm my-nginx-container

7. 查看容器的详细信息

可以使用以下命令来查看:

docker inspect <container_id>

其中,<container_id>是要查看的容器的ID。该命令将返回一个JSON格式的详细信息列表,包括容器的配置、网络设置、卷挂载等。

8. 查看容器的日志

docker logs <container_id>

该命令将返回容器的标准输出和标准错误输出。可以通过添加参数-f来实时查看容器的日志信息。例如:

docker logs -f <container_id>

其中,<container_id>是要查看的容器的ID。

9. 删除镜像

docker rmi <image_id>

其中,<image_id>是要删除的镜像的ID或名称。如果镜像已经被使用,该命令将会失败。如果要强制删除镜像,可以添加参数-f。例如:

docker rmi -f <image_id>

如果要删除所有未被使用的镜像,可以使用以下命令:

docker image prune

该命令将删除所有未被使用的镜像,包括悬空镜像、未被标记的镜像和未被使用的构建缓存。

如果要删除所有镜像,包括被使用的和未被使用的镜像,可以使用以下命令:

docker image prune -a

该命令将删除所有镜像,并清除所有未被使用的构建缓存和悬空镜像。请注意,该命令将删除所有镜像,包括正在运行的容器使用的镜像。因此,在使用该命令之前,请确保已经停止并删除所有容器。

10. 更新容器参数

在Docker中,可以使用docker update命令来更新容器的参数,例如容器的资源限制、环境变量、端口映射等。下面是更新容器参数的步骤:

1. 查看容器的当前参数

使用docker inspect命令可以查看容器的当前参数。例如,以下命令可以查看名为“my_container”的容器的详细信息:

docker inspect my_container

在输出结果中,可以找到容器的各种参数,例如资源限制、环境变量、端口映射等。

2. 更新容器的参数

使用docker update命令可以更新容器的参数。例如,以下命令可以更新名为“my_container”的容器的CPU限制:

docker update --cpus 2 my_container

在上面的命令中,--cpus选项表示更新容器的CPU限制,2表示将容器的CPU限制设置为2个。

可以使用其他选项来更新容器的其他参数,例如--memory选项用于更新容器的内存限制,--env选项用于更新容器的环境变量,--publish选项用于更新容器的端口映射等。

3. 查看更新后的容器参数

使用docker inspect命令可以再次查看容器的参数,以确保更新已成功应用。例如,以下命令可以查看名为“my_container”的容器的详细信息:

docker inspect my_container

在输出结果中,可以找到容器的各种参数,例如更新后的资源限制、环境变量、端口映射等。

总结:

使用docker update命令可以方便地更新容器的参数,以满足应用程序的需求。在更新容器参数之前,建议先使用docker inspect命令查看容器的当前参数,以确保更新已成功应用。

最后修改:2023 年 05 月 16 日
如果觉得我的文章对你有用,请随意赞赏