博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker 常用命令
阅读量:6948 次
发布时间:2019-06-27

本文共 2838 字,大约阅读时间需要 9 分钟。

hot3.png

1.Docker安装与启动

1.1 安装Docker

yum install docker

当询问“Is this OK”,记得输入y

1.2 安装后查看Docker版本

docker -v

1.3 启动与停止Docker

systemctl命令是系统服务管理器指令,它是 service 和 chkconfig 两个命令组合。

  • 启动docker:systemctl start docker
  • 停止docker:systemctl stop docker
  • 重启docker:systemctl restart docker
  • 查看docker状态:systemctl status docker
  • 开机启动:systemctl enable docker
  • 查看docker概要信息:docker info
  • 查看docker帮助文档:docker --help

2.Docker镜像操作

2.1 列出镜像

列出docker下的所有镜像

docker images

  • REPOSITORY:镜像所在的仓库名称
  • TAG:镜像标签
  • IMAGE ID:镜像ID
  • CREATED:镜像的创建日期(不是获取该镜像的日期)
  • SIZE:镜像大小

这些镜像都是存储在Docker宿主机的/var/lib/docker目录下

2.2 搜索镜像

如果你需要从网络中查找需要的镜像,可以通过以下命令搜索

docker search 镜像名称

  • NAME:仓库名称
  • DESCRIPTION:镜像描述
  • STARS:用户评价,反应一个镜像的受欢迎程度
  • OFFICIAL:是否官方
  • AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的

2.3 拉取镜像

从Docker Hub拉取
docker pull centos:7
ustc的镜像

ustc是老牌的linux镜像服务提供者了,还在遥远的ubuntu 5.04版本的时候就在用。ustc的docker镜像加速器速度很快。ustc docker mirror的优势之一就是不需要注册,是真正的公共服务。

步骤:

(1)编辑该文件:vi /etc/docker/daemon.json // 如果该文件不存在就手动创建;说明:在centos7.x下,通过vi。

(2)在该文件中输入如下内容:

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

(3)注意:一定要重启docker服务,如果重启docker后无法加速,可以重新启动OS

然后通过docker pull命令下载镜像:速度杠杠的。

2.4 删除镜像

1、docker rmi $IMAGE_ID:删除指定镜像2、docker rmi `docker images -q`:删除所有镜像

3.Docker容器操作

3.1 查看容器

  • 查看正在运行容器:
docker ps
  • 查看所有的容器(启动过的历史容器):
docker ps –a
  • 查看最后一次运行的容器:
docker ps –l
  • 查看停止的容器
docker ps -f status=exited

3.2 创建与启动容器

创建容器常用的参数说明:

  • 创建容器命令:docker run
  • -i:表示运行容器
  • -t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
  • --name :为创建的容器命名。
  • -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
  • -d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
  • -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
3.2.1 交互式容器
  • 创建一个交互式容器并取名为mycentos
docker run -it --name=mycentos centos:7 /bin/bash
  • 退出当前容器
exit
3.2.2 守护式容器
  • 创建一个守护式容器:如果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器。命令如下(容器名称不能重复):
docker run -di --name=mycentos2 centos:7
  • 登录守护式容器方式:
docker exec -it container_name (或者 container_id)  /bin/bash

exit退出时,容器不会停止

3.3 停止与启动容器

  • 停止正在运行的容器:
docker stop container_name(或者 container_id)
  • 启动已运行过的容器
docker start container_name(或者 container_id)

3.4 文件拷贝

  • 如果我们需要将文件拷贝到容器内可以使用cp命令
docker cp 需要拷贝的文件或目录 容器名称:容器目录

也可以将文件从容器内拷贝出来

docker cp 容器名称:容器目录 需要拷贝的文件或目录

3.5 目录挂载

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

  • 创建容器,并实现目录挂载
docker run -di -v 宿主机目录:容器目录 --name=mycentos2 centos:7

如果你共享的是多级的目录,可能会出现权限不足的提示。

这是因为CentOS7中的安全模块selinux把权限禁掉了,我们需要添加参数 **--privileged=true ** 来解决挂载的目录没有权限的问题,如

docker run -di -v 宿主机目录:容器目录 --name=mycentos2 centos:7 --privileged=true

3.6 查看容器IP地址

  • 我们可以通过以下命令查看容器运行的各种数据
docker inspect mycentos2
  • 也可以直接执行下面的命令直接输出IP地址
docker inspect --format='{
{.NetworkSettings.IPAddress}}' mycentos2

3.7 删除容器

注意,只能删除停止的容器

  • 删除指定的容器
docker rm container_name(或者 container_id)
  • 删除所有容器:
docker rm `docker ps -a -q`

其中docker ps -a -q是查看所有容器的 container_id

转载于:https://my.oschina.net/edisonOnCall/blog/3035419

你可能感兴趣的文章
《文献管理与信息分析》第一章 学习笔记
查看>>
apache kafka系列之在zookeeper中存储结构
查看>>
Python初体验_基础(一)
查看>>
ORACLE 问题解决
查看>>
IOS 视图传值
查看>>
【转】WEB网站常见受攻击方式及解决办法
查看>>
【八】虚拟机工具 01 jps命令详解
查看>>
[转]五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)
查看>>
关于预编绎网站的问题[已预编译此应用程序的错误]
查看>>
BZOJ 4869: [Shoi2017]相逢是问候
查看>>
Solr数据备份
查看>>
系统管理模块_部门管理_实现基本的增删改查功能
查看>>
web项目部署到阿里云服务器步骤
查看>>
ABP理论学习之依赖注入
查看>>
php读取文件的各种方法
查看>>
re模块 正则表达式
查看>>
06-标准文档流,块级元素和行内元素,浮动,margin的用法
查看>>
tomcat的默认路径ROOT怎么改变,我想设置tomcat的默认路径,怎么设置?
查看>>
sqlite使用手册(转)
查看>>
学习:深度和广度之谈
查看>>