docker下载安装-镜像加速-镜像制作

本文详细介绍了如何在CentOS系统上安装Docker,包括检查系统版本、确保网络连接、安装基础环境、添加稳定镜像仓库、安装DockerCE以及常用命令。还讨论了Docker相对于虚拟机的优势和镜像、容器的相关操作。
摘要由CSDN通过智能技术生成

一:docker的安装

1:查看CentOS的版本

目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在CentOS 7 (64-bit)上, 要求系统为64位、Linux系统内核版本为 3.8以上,这里选用Centos7.x

cat /etc/redhat-release

用来查看Red Hat系列Linux发行版的版本信息的

 uname -r
命令用于显示操作系统的发行版号

2:确定你的虚拟机可以上外网

ping www.jd.com  或者 ping www.baidu.com

YUM相当于一个大的智能仓库里面啥组件和依赖包都有而且一次性找多个东西,在Linux中可以解决多个依赖包的关系。比如要安装支持c和c++的语言编译器,如gcc、gcc-c++要使用RPM方式安装,则要一个个装多个依赖包,太繁琐了,这里我们用YUM就可以一键安装非常方便。

先安装基础环境。

yum -y install gcc

yum -y install gcc-c++

3:安装需要的软件包(官网要求)

执行:

yum install -y yum-utils

4:设置stable镜像仓库

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

5:更新yum软件包索引

yum makecache fast

 6:安装DOCKER CE

yum -y install docker-ce docker-ce-cli containerd.io

  7:启动docker

systemctl start docker

   8:测试docker

docker version

阿里云镜像加速

操作流程

复制 配置 在Linux上运行自动运行即可。

systemctl restart docker   重启docker

为什么docker 比虚拟机快

(1)docker有着比虚拟机更少的抽象层

由于docker不需要Hypervisor(虚拟机)实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上docker将会在效率上有明显优势。

(2)docker利用的是宿主机的内核,而不需要加载操作系统OS内核

当新建一个容器时,docker不需要和虚拟机一样重新加载一个操作系统内核。进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程是分钟级别的。而docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个docker容器只需要几秒钟。

docker 常用命令

·启动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
·查看docker命令帮助文档: docker 具体命令 --help

镜像相关

# 搜索镜像仓库,推荐:https://hub.docker.com/ (界面)  
docker search 镜像名称 

# 查看本地镜像 
docker images

# 下载(拉取)镜像,镜像名称格式为 名称:版本号
docker pull 镜像名称

# 删除镜像(慎重)
docker rmi 镜像名称

容器相关

# 查看本地容器
docker ps 	  # 能查看正在运行容器
docker ps -a  # 能查看所有的容器(运行的和停止的)

# 创建一个新的容器并运行(-d  后台运行容器,并返回容器ID  -p 主机端口:容器端口  指定映射关系)
docker run -d -p 8089:80 --name=容器名 镜像名称

# 进入容器内部
docker exec -it 容器名称 /bin/bash          /bin/bash  希望交互模式是shell

# 查看容器信息
docker inspect 容器名称

# 启动容器
docker start 容器名称

# 停止容器
docker stop 容器名称

# 删除容器
docker rm 容器名称

#删除所有容器
docker rm -f $(docker ps -aq)

举例:
1. 查看容器  docker ps -a
2. 运行nginx进行为容器 docker run -d -p 8089:80 --name=mynginx  nginx
3. 进入 docker exec -it mynginx  /bin/bash
4. 停止 docker stop mynginx
5. 删除 docker rm  mynginx

Docker镜像制作

Docker镜像是一个分层文件系统,最底端是bootfs,它会直接使用宿主机的bootfs;第二层是root文件系统rootfs,称为base image

然后再往上可以叠加其他的镜像文件,一个镜像可以放在另一个镜像的上面。位于下面的镜像称为父镜像,最底部的镜像成为基础镜像。

docker允许将一个容器直接转化为镜像,使用的命令如下:

docker commit 容器id 镜像名称:版本号

案例:修改当前的nginx容器中的index.html文件内容为hehe,然后将修改后的容器做成一个名为mynginx:hehe的镜像

#1. 查看当前正在运行的容器
[root@itcast ~]# docker ps
CONTAINER ID        IMAGE        COMMAND                 CREATED             STATUS              PORTS                     NAMES
0ce0bf14399d        nginx       "/docker-entrypoint.…"   14 hours ago        Up 14 hours         0.0.0.0:80->80/tcp        nginx

#2. 进入nginx容器,然后向主页面覆盖写入"hehe",然后退出容器
[root@itcast ~]# docker exec -it nginx /bin/bash
root@0ce0bf14399d:/# echo "hehe" > /usr/share/nginx/html/index.html
root@0ce0bf14399d:/# exit

#3. 将修改之后的容器生成为mynginx:hehe镜像
[root@itcast ~]# docker commit nginx mynginx:hehe
sha256:139a9ea6a6008bc5557566e54316ccd8b93f508dba1daf7296235a461c8d471e

#4. 查看镜像
[root@itcast ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
mynginx             hehe                139a9ea6a600        8 seconds ago       133MB

Docker下载infulxDB时序数据库

docker pull influxdb
#拉取influxdb镜像


#查看所有镜像
 docker images


#启动influxdb
docker  run --name  influxdb --restart=always -p 8086:8086 influxdb




docker logs --since 30m   influxdb
--since 30m 是查看此容器30分钟之内的日志情况。

随后访问  ip+8086即可

172.17.0.1 容器内去呼叫服务器内的ip地址   172.17.0.1:8080 呼叫服务器的8080端口号    -network host   容器与服务器都是同一个网段  127.0.0.1:8080  呼叫服务器的8080端口

127.0.0.1  去呼叫容器内的地址                        私有化的系统   8080 8090 127.0.0.1:8080  呼叫容器内的8080

docker 进入mysql 命令:

 
docker exec -it <容器ID或名称> /bin/bash
mysql -h localhost -u <用户名> -p

docekr run 到底是干了一个什么事情图解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值