理论实验:Docker基本管理初始篇---------------------------熬夜整
Docker基本管理初始篇前言一、概览1、Docker是什么?2、Docker与虚拟机的区别3、Docker的使用场景4、Docker核心概念5、CentOS安装Docker的两种方式二、实验1、安装docker工具2、关闭防火墙3、编辑配置文件4、启动服务5、镜像加速6、启用路由转发功能7、docker使用8、导入导出镜像9、容器使用10、容器的导入导出及删除前言Docker是Docker.Ln
·
Docker基本管理初始篇
前言
Docker是Docker.Lnc公司开源的一个基于LXC技术之上搭建的Container容器引擎,源代码托管在Github上,基于Go语言并遵从Apache2.0协议开源。
Docker属于Linux容器的一种封装,提供简单易用的容器使用接口。
Docker将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了Docker,就不用担心环境问题。
总体来说,Docker的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。
#
一、概览
1、Docker是什么?
是一种轻量级的“虚拟机”
在L inux容器里运行应用的开源工具
2、Docker与虚拟机的区别
… | docker | 虚拟机 |
---|---|---|
资源 | 少 | 多 |
启动时间 | 短十几毫秒 | 长几分钟 |
安全 | 共享内核,不安全 | 系统逻辑隔离,安全 |
服务 | 一个容器只跑一个服务 | 可以运行多个服务 |
3、Docker的使用场景
- 打包应用程序简化部署
- 可脱离底层硬件任意迁移
- 例:服务器从腾讯云迁移到阿里云
4、Docker核心概念
- 镜像是一个面向Docker容器引擎的只读模板
- 容器是从镜像创建的运行实例
- 仓库是集中保存镜像的地方
5、CentOS安装Docker的两种方式
- 使用CURL获得Docker的安装脚本进行安装
- 使用YUM仓库来安装Docker
二、实验
1、安装docker工具
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce
2、关闭防火墙
systemctl stop firewalld
setenforce 0
3、编辑配置文件
vim /etc/selinux/config
SELINUX=disabled
4、启动服务
systemctl start docker
systemctl enable docker
5、镜像加速
##一定要部署镜像加速#
cd /etc/docker/
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://sl6elacs.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload ##重新加载系统参数
systemctl restart docker
6、启用路由转发功能
vim /etc/sysctl.conf ##启用路由转发功能
net.ipv4.ip_forward=1
sysctl -p
systemctl restart network
systemctl restart docker
7、docker使用
docker version ##查看docker版本
docker search nginx ##搜索nginx镜像(公有仓库)
docker pull nginx ##下载nginx镜像
docker images ##查看下载镜像信息
docker inspect 7e4d58f0e5f3 ##获取镜像信息
docker inspect nginx:latest n##获取镜像信息
docker tag nginx:latest nginx:web ##添加新标签
docker images nginx:latest ##查看
docker images | grep nginx ##查询关键字过滤
docker rmi nginx:web ##删除
docker rmi 7e4d58f0e5f3 ##删除镜像,不能删除,有别名的镜像,要把别名删除,才能用id来删除镜像
8、导入导出镜像
cd /opt
docker save -o /opt/nginx nginx:latest ##存出镜像命名为nginx存在当前目录下
docker rmi nginx:latest ##删除镜像
docker load < /opt/nginx ##从本地载入镜像
9、容器使用
docker create -it nginx:latest /bin/bash ##容器创建
docker ps -a ##查看容器
docker start 7380d166e929 ##启动容器
docker ps -a ##查看容器状态为up
docker pull paigeeworld/centos7 ##启动执行命令查看系统根目录
docker create -it paigeeworld/centos7 /bin/bash
docker start 123
docker run paigeeworld/centos7 /usr/bin/bash -c ls /
//执行完成直接关闭 状态是Exited
docker run -d paigeeworld/centos7 /bin/bash -c "while true;do echo hello;done"
docker ps -a
docker stop 123 //终止运行
docker start 678687687 //一定要是运行状态,才能进入容器
docker exec -it 8938493 /bin/bash //进入容器
exit //退出容器
10、容器的导入导出及删除
docker export 6c9aabe7b1e5 > nginx_c //容器导出
cat nginx_c | docker import - nginx:web //容器导入(会生成镜像,而不会创建容器)
docker rm 44r34343343 //删除容器
docker ps -a | awk '{print "docker rm "$1}' | bash //批量删除容器
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)