Docker的初体验!!!

概述

Docker是基于容器技术的轻量级虚拟化解决方案,docker是由容器引擎,把linux的cgroup、namespace等容器底层技术进行完美的封装、并抽象为用户提供从创建和管理容器的便捷界面(Cli、api等)C/S

Docker的优点

docker把容器化技术做成了标准化平台CAAS (docker统一/指定了容器化技术的标准化平台)
docker引擎统一了基础设施环境:docker环境。
docker引擎统一了程序打包(装箱)方式。
docker引擎统一了程序部署(运行)方式:docker容器基于镜像,运行为容器(可运行的环境)实现了一次构建、多次、多处使用。

三大组件

① 镜像:模板;组资源集合,包含了应用程序软件包、应用程序相关的依赖包、运行应用所需要的基础环境(泛指操作系统环境),可以理解为容器的模板
②容器(docker container):基于镜像的一中运行时状态
③仓库(docker reqistry):存放image镜像模板;
仓库分类:共有仓库(docker hub)
私有仓库(registry harbor)

部署

配置环境

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# setenforce 0
[root@localhost ~]# vim /etc/selinux/config
SELINUX=disabled
[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 114.114.114.114
[root@docker yum.repos.d]# yum install -y docker-ce #安装docker开源版
[root@docker yum.repos.d]# systemctl start docker
[root@docker yum.repos.d]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

镜像加速

登录https://help.aliyun.com/document_detail/60750.html
登录容器镜像控制台,在左侧导航栏选择镜像工具 > 镜像加速器,在镜像加速器页面就会显示为您独立分配的加速器地址

mkdir -p /etc/docker
 tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://yteuctxu.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker

优化网络

在这里插入图片描述

ps:优化配置
[root@docker docker]# vim /etc/docker/daemon.json		
	{
	"graph": "/data/docker", #数据目录
	"storage-driver": "overlay2", #存储引擎(overlayfs:文件系统,解决docker镜像分层)
	"insecure-registries": [" registry.access.redhat.com", "quary.io"] #私有仓库位置
	"registry-mirrors": ["https://3hftxm5s.mirror.aliyuncs.com"] #镜像加速
	"bip": "172.7.5.1/24", #docker网络;控制网段的位置;需要创建新的网桥,系统默认的docker0是不变的
	"exec-opts": ["native.cgroupdriver-systemd"], #启动时候的额外参数(驱动)
	"live-restore":true #当docker容器引擎挂掉的时候,使用docker跑起来的容器还能运行(分离)
	}

[root@docker docker]# systemctl daemon-reload
[root@docker docker]# systemctl restart docker	

相关命令

#查看正在运行容器列表
[root@docker docker]# docker ps 
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

#查看所有容器(包含正在运行和已停止的)
[root@docker docker]# docker ps -a 
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
#查看镜像列表
[root@docker docker]# docker image ls 
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE
[root@docker docker]# docker images(常用)
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE
#查看docker版本
[root@docker docker]# docker -v 
Docker version 20.10.8, build 3967b7d
[root@docker docker]# docker version #查看详尽信息
Client: Docker Engine - Community #客户端
 Version:           20.10.8 #docker引擎版本
 API version:       1.41 #API版本
 Go version:        go1.16.6 #Go语言版本
 Git commit:        3967b7d 
 Built:             Fri Jul 30 19:55:49 2021 #创建时间
 OS/Arch:           linux/amd64 #操作系统/版本
 Context:           default #连接方式(默认)
 Experimental:      true 

Server: Docker Engine - Community
 Engine:
  Version:          20.10.8
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.6
  Git commit:       75249d8
  Built:            Fri Jul 30 19:54:13 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd: #容器
  Version:          1.4.9 #容器版本
  GitCommit:        e25210fe30a0a703442421b0f60afac609f950a3 
 runc: 运行时容器
  Version:          1.0.1
  GitCommit:        v1.0.1-0-g4144b63
 docker-init: #初始化
  Version:          0.19.0
  GitCommit:        de40ad0

相关镜像操作

在这里插入图片描述

[root@docker docker]# docker ps -a
CONTAINER ID   IMAGE         COMMAND    CREATED         STATUS                     PORTS     NAMES
a8412ff6e97a   hello-world   "/hello"   3 minutes ago   Exited (0) 3 minutes ago             distracted_chatelet
[root@docker docker]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    d1165f221234   6 months ago   13.3kB

创建镜像标签

[root@docker docker]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
nginx        latest    822b7ec2aaf2   25 hours ago   133MB
[root@docker docker]# docker tag nginx:latest nginx:lnmp
[root@docker docker]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
nginx        latest    822b7ec2aaf2   25 hours ago   133MB
nginx        lnmp      822b7ec2aaf2   25 hours ago   133MB

删除镜像

[root@docker docker]# docker rmi nginx:lnmp
Untagged: nginx:lnmp
[root@docker docker]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
nginx        latest    822b7ec2aaf2   25 hours ago   133MB
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值