Docker(安装 命令)

本文详细介绍Docker的安装步骤,包括官方与阿里云源的配置,以及一系列核心命令如镜像管理、容器操作和配置选项。涵盖了docker build、pull、commit、run等关键功能的使用方法和示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker理论方面:Docker(理论)_sxpnp的博客-优快云博客

目录

Docker安装

安装条件

安装 / 卸载

AWS EC2 安装 docker

配置文件位置

像加速器配置

使用命令

(1)帮助命令

docker version

docker info

docker --help

(2)镜像命令

查询本地镜像:docker images

查询仓库镜像:docker search

文件生成镜像:docker build

下载拉取镜像:docker pull

删除本地镜像:docker rmi

赋予镜像标签:docker tag

(3)容器命令

容器打包镜像:docker commit

新建启动容器:docker run

查询运行容器:docker ps

进入运行容器:docker attach / exech

退出运行容器:exit / ctrl+P+Q

启动重启容器:docker start / restart

停止运行容器:docker stop / kill

删除停止容器:docker rm

(4)其他命令

查看容器日志:docker logs

查看内部进程命令:docker top

查看容器内部细节:docker inspect

将容器内拷贝到主机上或相反:docker cp

查看镜像构建历史:docker history


Docker安装

安装条件

安装 / 卸载

官方安装文档:

(1)更新yum源库

yum update 

(2).安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

yum install -y yum-utils device-mapper-persistent-data lvm2

(3)安装 gcc

yum -y install gcc #docker涉及的软件,不用管直接装 gcc -v #查看gcc 版本

(4)向源库添加源(添加了源才能安装)

官方的源(不建议使用):yum-config-manager --add-repo https://download.docker.0com/linux/centos/docker-ce.repo

阿里云的源(建议使用): yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum list docker-ce --showduplicates | sort -r #查看库中版本

(5)安装docker

yum install docker-ce

命令补齐功能

yum -y install bash-completion
source /usr/share/bash-completion/bash_completion

(6)启动Docker,设置开机启动,停止Docker

sudo systemctl start docker
sudo systemctl status docker  
sudo systemctl enable docker 
sudo systemctl stop docker   

(7)查看docker 版本

docker --version #只显示安装版本 
docker version #安装的详细信息 

(8)卸载docker

先关闭docker 
yum -y remove docker-ce 
yum remove -y docker-* #此处使用通配符,卸载docker为开头的所有docker软件 
yum remove -y docker \                    
    docker-client \                    
    docker-client-latest \                    
    docker-common \                    
    docker-latest \                   
    docker-latest-logrotate \                   
    docker-logrotate \                   
    docker-engine 
rm -rf /var/lib/docker

AWS EC2 安装 docker

配置文件位置

docker配置文件: /etc/docker/daemon.json

注意:此文件原本没有,需要手动创建

mkdir  /etc/docker

touch daemon.json

像加速器配置

阿里云

需要注册登入

阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

/etc/docker/daemon.json 此文件中添加,类似于一下字段

网易云

无需注册登入

保存,然后执行

sudo systemctl daemon-reload sudo systemctl restart docker

使用命令

(1)帮助命令

docker version

查看docker版本信息

docker info

查看docker 详细信息(比version更详细,有客户端和服务器端)

docker --help

docker帮助命令,用来查命令,或命令使用方式(类似于linux 的man)

OPTIONS = 可选参数

COMMAND = 命令

arg = 命令的对像 / 参数

(2)镜像命令

查询本地镜像:docker images

格式:docker images 参数

列出本地主机上的镜像

注意:默认标签为: latest =最新版

定义Tag 格式:repository:latest 即为 仓库源:Tag 来定义不同的镜像(一般用来定义版本标签

参数(OPTIONS)

-a :列出本地所有的镜像(含中间映像层) 
-q :只显示镜像ID 
--digests :显示镜像的摘要信息 
--no-trunc :显示完整的镜像信息(会显示完整的信息包括ID号,默认只截取12位,此参数可以看所有位数的ID号)

注意:

(1)镜像就像是千层饼,是分层的,如上图,最外面那一层是hellowold(REPOSITORY)

(2)ID 相当于镜像的唯一主键

查询仓库镜像:docker search

格式:docker search [OPTIONS] 镜像名字

 从仓库docker hub(官方仓库:https://hub.docker.com)上查询镜像

OPTIONS

-f=[选项]=值 :根据所提供的条件过滤输出     
    -f=stars=30 选项为STAPS时候:列出收藏数不小于指定值的镜像(即上图STAPS)  
--no-trunc :显示完整的镜像描述 
--automated :只列出 automated build 类型的镜像 (即为上图的AUTOMATED)

文件生成镜像:docker build

将 dockerfile 生成镜像文件

格式:docker build -t ImageName:TagName dir(只能如下格式写,才能执行)

不加 -f,需要当前dockerfile 命名必须是:Dockerfile 名字,且在当前目录下

-f :绝对路径文件 (dockerfile 已经在当前目录下就无需加-f参数) 
-t :给镜像加一个TAG 
.  :当前目录下

 

下载拉取镜像:docker pull

格式:docker pull  [OPTIONS] 镜像名字或ID[:TAG] (如果不填TAG,则默认是latest)

拉取 / 下载镜像

-a (--all-tags) 下载所有标签的镜像,且忽略 
-q (--quiet) 不输出详细信息

删除本地镜像:docker rmi

格式:docker rmi [OPTIONS] 镜像名字或ID[:TAG] (如果不填TAG,则默认是latest)

删除镜像

-f (--force) 强制删除镜像(一般用来删除正在运行的镜像)

赋予镜像标签:docker tag

格式:源镜像名称:tag 新名称:tag

(3)容器命令

容器打包镜像:docker commit

提交容器副本使之成为一个新镜像

格式下图

原理:在容器内部进行自定义 配置搭建修改,在把当前容器打包成一个镜像

使用ctrl + p+q

使用docker run 运行的时候,需要写全了,把标签写全,不然就是latest

新建启动容器:docker run

docker run [OPTIONS] image [command] [arg]

--name="容器新名字" :为启动容器指定一个别名     
    可以通过docker ps 命令name字段可以查看到     
    用过的别名,无法再使用,需要删除docker rm命令      

-d :后台运行容器,并返回容器ID,也即 启动守护式容器     
    理论篇中有讲运行原理     
    一般使用:会一直前台有一个交互,但是不交互界面,向日志打印内容     
    docker run -d centos /bin/sh -c "while true;do echo in service;sleep 2;done"     
    查看:docker logs 容器ID      
    会显示出打印内容:in service  

-i :以交互模式运行容器,通常与-t 同时使用 
-t :为容器重新分配一个伪输入终端,通常与-i 同时使用     
    -it [镜像名或ID] :进入到运行的容器里面,同时进入的是此容器的输入终端界面  

-dit :可以分配给伪终端,让容器不停止,同时在后台运行  

-v : 容器和数据卷绑定     
           格式:宿主路径:容器路径
        此参数命令,不能在dockerfile中实现 
-P : 随机端口映射     
        使用docker ps 命令查询主机的映射端口 
-p : 指定端口映射     
        格式:         
    ip:hostPort:containerPort (常用,可以写一致)         
    ip::containerPort         
    hostPort:containerPort         
    containerPort 

-e (export):定义容器内部的环境变量

--link 容器名 :运行容器的时候配置hosts文件,为另一个容器写一个容器名和IP的映射
--net 网络模式:默认是net bridge 桥接模式--net    
    即:docker run -d -P --name tomcat01 --net bridge tomcat

其他:

运行原理

寻找hello-world镜像,并使用此镜像为模板,生成一个hello-world的容器实例寻找顺序从

寻找顺序

(1)先从本地寻找此镜像

(2)本地没有此镜像,会从配置的阿里云仓库里拉取

成功显示为下图

查询运行容器:docker ps

docker ps [OPTIONS]

不加参数的情况下,查看docker里面有那些容器实例在运行

-a :列出当前所有正在运行的容器 + 历史上运行过的  
-l :显示最近创建的容器 
-n :显示最近n个创建的容器  
-q:静默模式,只显示容器编号 
--no-trunc:完整输出

 容器ID 镜像ID 启动容器命令 创建时间 容器状态/时间(up即在运行)映射端口 容器别名

进入运行容器:docker attach / exech

格式:docker attach 容器ID

进入容器里面打开终端

格式:docker exech -t容器ID 要执行的命令

在容器外面打开新的终端,对容器使用命令

-t 分配一个伪终端

退出运行容器:exit / ctrl+P+Q

  1. exit 退出容器交互界面,关闭容器
  2. ctrl + P + Q 退出容器交互界面,不关闭容器

启动重启容器:docker start / restart

格式:docker start / restart 容器ID 或 容器名

停止运行容器:docker stop / kill

格式:docker stop / kill 容器ID 或 容器名

docker stop 正常关闭,类似于电脑的关闭

docker kill    强制重启,类似于电脑快速强制关机

删除停止容器:docker rm

格式:docker rm [OPTIONS] 容器ID 或 容器名

之前启动过的容器,会保存在docker日志里,此命令可以删除启动过的容器,

-f 强制删除,删除没有停止的容器

 

(4)其他命令

查看容器日志:docker logs

格式:docker logs [OPTIONS] 容器ID

-t 加入时间戳 
-f 跟随最新的日志打印 
--tail [number] 显示最后多少条

查看内部进程命令:docker top

格式:docker top 容器ID

原理:其类似于linux top,因为容器本质运行的式简易版的linux,大部分linux命令都能够使用

查看容器内部细节:docker inspect

格式:docker inspect 容器ID

显示内容如下图

将容器内拷贝到主机上或相反:docker cp

格式:

docker cp 容器ID:容器内路径 目的主机路径

docker cp 目的主机路径  容器ID:容器内路径

注意:尽量使用绝对路径

查看镜像构建历史:docker history

即为查看该镜像的所有只读镜像层

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值