Docker的部署和控制命令
admin
2023-03-26 15:41:37
0

一、Docker概述

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

一个完整的Docker有以下几个部分组成:

DockerClient客户端

Docker Daemon守护进程

Docker Image镜像

DockerContainer容器

二、与虚拟机的比较

Docker的部署和控制命令

三、Docker核心概念

镜像(Image): 类似虚拟机镜像

容器(Container): 类似linux系统环境,运行和隔离应用。容器从镜像启动的时候,docker会在镜像的最上一层创建一个可写层,镜像本身是只读的,保持不变。

仓库(Repository): 每个仓库存放某一类镜像。

容器、仓库、镜像运行关系图:
Docker的部署和控制命令

四、Docker基本部署

1、安装环境包

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

2、使用阿里的docker仓库

[root@localhost ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
//安装docker-ce
[root@localhost ~]# yum install -y docker-ce
systemctl  start  docker
systemctl  enable  docker
systemctl  stop  firewalld.service
setenforce 0

3、加速镜像的下载

[root@localhost docker]# tee /etc/docker/daemon.json <

容器脚本,一键执行即可部署docker:

#!/bin/bash
#Docker引擎部署
#安装依赖包
yum install yum-utils device-mapper-persistent-data lvm2 -y

#设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

#安装Docker-ce
yum install -y docker-ce

#关闭防火墙及增强型安全功能
systemctl stop firewalld.service
setenforce 0

#启动Docker并设置为开机自启动
systemctl start docker.service
systemctl enable docker.service

#镜像加速服务(每个人的阿里加速地址都不同,请自行前往阿里官网获取)
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://123456.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload

#网络优化
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
service network restart 
systemctl restart docker

#检验容器是否启动完成
docker images
if [ $? -eq 0 ];then
    echo "Docker启动完成"
else
    echo "ERROR"
    systemctl status docker
    exit 1
fi

五、Docker基本控制命令

(一)镜像篇

1、搜索镜像

docker search 关键字

2、获取镜像

docker pull 仓库名[:标签]

3、查看已存在的所有镜像

docker images
4、查看镜像信息

docker images 仓库名[:标签]

docker inspect 镜像ID号

5、更改原有标签

docker tag 原名称[:原标签] 新名称[:新标签]

6、删除镜像

docker rmi 仓库名[:标签]

7、导出镜像
docker save -o 保存文件名 保存的镜像名

8、载入镜像
docker load --input 保存文件名

docker load < 保存文件名

9、上传镜像
docker push 仓库名[:标签]

(二)容器篇

1、创建容器
docker  create  [选项]  运行的镜像  /bin/bash环境

常用选项:
“-i” 容器的标准输入常开
“-t” 让docker分配一个伪终端

2、查看容器运行状态
docker  ps  [选项]

常用选项:
“-a” 列出最近一次启动的容器

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

4、终止容器
docker  stop  容器ID/名称

5、创建容器并启动执行shell命令
docker run [选项] 容器名 执行的命令

常用选项:
“-d” 在后台运行

run 执行镜像流程:
创建容器→启动容器→进入容器执行命令→退出容器
若镜像不存在则会多出下载镜像这一步

实例
//以/usr/bin/bash交互模式,启动paigeeworld/centos7容器,执行ls /命令
    docker run paigeeworld/centos7 /usr/bin/bash -c ls /

6、进入容器
docker exec [选项]  容器ID/名称 /bin/bash

#以交互模式执行容器

7、导出容器
docker export 容器ID/名称 > 保存文件名

8、导入容器(仅能导入容器中的镜像,容器需要手动创建)
cat 保存文件名 | docker import -生成的镜像名:标签

9、删除容器
docker rm [选项] 容器ID/名称

10、批量删除容器
docker ps -a | awk '{"docker rm "$1}' | bash
Docker的部署和控制命令

相关内容

热门资讯

伊朗提议美方在30天内撤销对伊... 据伊朗方面10日消息,知情人士表示,伊朗在其向美方的提议中,要求美国财政部外国资产控制办公室在30天...
特朗普:伊朗的回应“完全不可接... 当地时间5月10日,美国总统特朗普在其社交媒体“真实社交”发文表示,他刚刚读了伊朗那些所谓的“代表”...
训练运行模式缺陷或致AI提供危... 据新华社伦敦5月9日电 英国《自然》杂志网站日前发表文章说,人工智能(AI)聊天机器人可能向用户提供...
原创 都... 其实也很简单,很大一部分人就是找不到成就感。 只能去信这些,几乎没有认知门槛啊。 智商75以上的人,...
“宇宙超级快递小哥”即将出发 ... 新一单“太空快递”即将发货! 近日 天舟十号完成转运和全区合练 各项发射准备工作全部就绪 我国第十艘...
美媒证实一艘美国商船遭伊朗无人... 新华社华盛顿5月10日电 (记者徐剑梅 黄强)据美国福克斯新闻数字网报道,一艘美国商船10日在波斯湾...
特朗普声称伊朗47年来一直在“... 美国总统特朗普于当地时间5月10日在社交媒体发文,“猛烈抨击”伊朗长期“玩弄”美国和世界,同时还痛批...
学生放学回家后又返回学校坠亡,... 学生符某放学后回到家中,后又从家中返回学校,并于当晚从学校教学楼楼顶坠亡。符某父母随后将学校告上法庭...
泽连斯基称乌已向俄方提交100... 当地时间10日,乌克兰总统泽连斯基表示,乌俄双方将以“千人换千人”的方式交换战俘,乌方已向俄方提交了...
国网上海市电力公司举办“明灯引... 5月7日至9日,在第十个“中国品牌日”来临之际,国网上海市电力公司(以下简称“国网上海电力”)以“明...