docker 环境搭建、docker 与容器常用指令大全(推荐)

 更新时间:2022年06月29日 14:48:18   作者:Developer 小马  
这篇文章主要介绍了docker 环境搭建、docker 与容器常用指令大全,主要包括docker容器操作命令汇总,文中介绍需要注意的是如果想要删除一个容器,需要先停止该容器且如果镜像中有运行状态的容器,也是无法删除容器的,需要的朋友可以参考下

一、Docker 环境搭建

1. 准备工作(已有 Linux 环境可省略)

在这里我们用 VM 虚拟机 +CentOS 的环境进行 Docker 部署(建议使用 CentOS 7 以上版本)。

首先准备一台 CentOS 系统的虚拟机,可以看到主机的 IP 地址为 192.168.200.129;

为了更加直观,我将使用 Xhell 7 连接虚拟机进行操作演示;

2. 安装 Docker

第一步:yum 包更新到最新;

//更新yum
sudo yum update

第二步:安装需要的软件包,yum-util(提供 yum-config-manager 功能),device-mapper-persistent-datalvm2(devicemapper 驱动依赖);

//安装需要的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

第三步:设置 yum 源为阿里云;

//设置阿里云源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

第四步:安装 Docker;

//安装docker
sudo yum install docker-ce

第五步:检查 Docker 版本;

//检查 docker 版本
docker -v

使用 docker -v 命令可以查看到版本号即说明安装成功。

3. 设置 ustc 镜像

Docker 安装完成之后还需要执行一个操作那就是设置国内镜像站点,否则 Docker 中下载操作会很慢。

ustc 是老牌 Linux 镜像服务提供者,它的 Docker 加速器速度很快,而且不需要注册,是真正的公共服务。

需要注意的是在设置之前要先启动 docker 服务,如果不启动服务就编辑 .json 文件是无法正常保存的,因为它无法找到 Docker 进程。启动 Docker 服务使用指令:

service docker start

然后 vi 进入文件 /etc/docker/daemon.json,在文件中添加以下内容;

{
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

退出保存即可。

二、Docker/容器操作命令汇总

1. Docker 操作命令

systemctl start docker //启动 Docker;

systemctl stop docker //停止 Docker;

systemctl restart docker //重启 Docker;

systemctl status docker //查看 Docker 状态;

systemctl enable docker //开机自启动 Docker;

docker info //查看 Docker 概要信息;

docker --help //查看 Docker 帮助文档;

2. 镜像相关命令

docker images //查看镜像(这些镜像都存储于 /var/lib/docker 目录下)

  • repository - 镜像名称;
  • tag - 镜像标签;
  • image id - 镜像 id;
  • created - 镜像的创建日期;

size - 镜像的大小;

docker search 镜像名称 //搜索镜像,从网络查找需要的镜像

  • name - 仓库名称;
  • description - 镜像描述;
  • stars - 用户评价,反映该镜像的受欢迎程度;
  • official - 是否官方;

automated - 自动构建,表示该镜像是由 Docker Hub 自动构建流程创建的。

docker pull 镜像名称 //拉取镜像,从中央仓库下载镜像到本地

如下载 centos 7 镜像:

docker rmi 镜像ID //删除镜像,可根据镜像 ID 也可根据镜像名称

docker rmi `docker images -q` //删除所有镜像

3. 查看容器

docker ps //查看容器

docker ps -a //查看所有容器

docker ps -l //查看最后一次运行的容器

docker ps -f statu=exited //查看停止的容器

4. 创建容器

docker run

docker run 参数

包含参数如下:

  • -i 运行容器
  • -t 容器启动后自动进入其命令行
  • --name 为创建的容器命名
  • -v 表示目录映射关系,前者为宿主机目录,后者是映射到宿主机上的目录
  • -d 加了这个参数则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器)

-p 表示端口映射,前者为宿主机端口,后者是容器内的映射端口

常用创建容器的方式为交互式创建容器和守护式创建容器,如下:

//交互式创建容器
docker run -it --name=容器名称 镜像名称:标签 /bin/bash
//退出当前容器
exit
//守护式创建容器
docker run -di --name=容器名称 镜像名称:标签
//登录守护式容器
docker exec -it 容器名称/ID /bin/bash

5. 停止与启动容器

docker stop 容器名称/ID //停止容器

docker start 容器名称/ID //启动容器

6. 文件挂载

docker cp 需要拷贝的文件/目录 容器名称:目录 //将文件拷贝到容器内

docker cp 容器名称:目录 需要拷贝的文件/目录 //将文件从容器拷贝出来

7. 目录挂载

在创建容器时,我们可以将宿主机的目录与容器内的目录进行映射,这样就可以通过修改宿主机的目录文件从而直接影响容器了。

docker run -di -v 宿主机目录:容器目录--name=容器名称 镜像名称:标签

如果共享多级的目录,可能会出现权限不足的提示。这是由于 CentOS 7 中的安全模块 selinux 将权限禁止了,这时候可以添加参数 --privileged=true 来解决此问题。

8. 查看容器 IP 地址

docker inspect 容器名称/ID //查看容器 ip 以及相关的各种数据

docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称/ID //查看容器 ip 地址并输出

9. 删除容器

docker rm 容器名称/ID //删除指定的容器

需要注意的是如果想要删除一个容器,需要先停止该容器;且如果镜像中有运行状态的容器,也是无法删除容器的。

到此这篇关于docker 环境搭建、docker 与容器常用指令大全的文章就介绍到这了,更多相关docker容器常用指令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何通过vs2017的Dockerfile来生成镜像

    如何通过vs2017的Dockerfile来生成镜像

    这篇文章主要为大家详细介绍了如何通过vs2017的Dockerfile来生成镜像,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • docker 学习笔记之docker连接网络的设置

    docker 学习笔记之docker连接网络的设置

    本篇文章主要介绍了docker 学习笔记之docker连接网络的设置 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • springboot整合docker部署实现两种构建Docker镜像方式

    springboot整合docker部署实现两种构建Docker镜像方式

    这篇文章主要介绍了springboot整合docker部署实现两种构建Docker镜像方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • 如何给一个正在运行的Docker容器动态添加Volume

    如何给一个正在运行的Docker容器动态添加Volume

    这篇文章主要介绍了如何给一个正在运行的Docker容器动态添加Volume,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-03-03
  • docker容器直接退出如何进入容器调试模式

    docker容器直接退出如何进入容器调试模式

    这篇文章主要介绍了docker容器直接退出,如何进入容器调试,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09
  • 利用nexus作为私库进行代理docker,进行上传和下载镜像操作

    利用nexus作为私库进行代理docker,进行上传和下载镜像操作

    这篇文章主要介绍了利用nexus作为私库进行代理docker,进行上传和下载镜像操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Docker中关于Namespace隔离机制全面解析

    Docker中关于Namespace隔离机制全面解析

    为了更好地理解容器的运行原理,本篇文章将会以 Linux 宿主机为例,介绍容器的底层技术,包括容器的命名空间、控制组、联合文件系统等,需要的朋友可以参考下
    2022-06-06
  • docker中mysql开启日志的实现步骤

    docker中mysql开启日志的实现步骤

    本文主要介绍了docker中mysql开启日志的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • 删除docker中没有被使用的数据卷volume

    删除docker中没有被使用的数据卷volume

    发现docker占用宿主机的磁盘空间很大,这个时候如何来释放这些数据卷占用的空间呢,通过执行相关命令即可顺利解决,下面小编给大家介绍下删除docker中没有被使用的数据卷volume,感兴趣的朋友跟随小编一起看看吧
    2023-01-01
  • Docker工作模式及原理详解

    Docker工作模式及原理详解

    Docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上,通过Socket从客户端访问!DockerServer接受到DockerClient的指令,就会执行这个命令
    2021-09-09

最新评论