知是行的主意,行是知的功夫。这篇文章主要讲述#yyds干货盘点#--docker容器快速入门相关的知识,希望能为你提供帮助。
一、docket是什么Docker是通过内核虚拟化技术(namespaces及cgroups)来提供容器的资源隔离与资源限制。由于Docker通过操作系统层的虚拟化实现隔离(对操作系统的内核有要求),所以Docker容器在运行时,不需要类似虚拟机(VM)额外的操作系统开销,从而比kvm虚拟机更轻量。
docker是一种软件的打包技术
二、docker的理念docker的主要目标是"
Build,Ship and Run any App,Angwhere"
,构建,运输,和运行任何应用程序
- 构建:制作docker镜像,打包容器的所有系统目录文件
- 运输:下载docker镜像
- 运行:基于docker镜像提供的rootfs,启动容器
三、docker的优点
- 解决了操作系统和软件运行环境的依赖
nginxopenssl
gitopenssl
- 对于开发人员来说,再也不用担心不会部署开发环境
- 开发环境,测试环境和生产环境高度一致。
- 让用户体验产品新特性的又一种思路。
rm -fr/etc/yum.repos.d/local.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
sed -i s#download.docker.com#mirrors.tuna.tsinghua.edu.cn/docker-ce#g /etc/yum.repos.d/docker-ce.repo
4.2 安装docker-ce:并启动
yum install docker-ce -y[root@docker1 ~]# systemctl start docker.service
[root@docker1 ~]# systemctl statusdocker.service
五、启动第一个docker容器docker容器是一种软件的打包技术,接下来我们体验一下
- 传统编译安装nginx:
- 官网下载Nginx源码包wget
- tar解压源码包
- 创建Nginx用户
- 安装依赖包
- 编译安装三部曲configure,make,make install
- 修改nginx配置文件
- 启动nginx
docker run -d -p 80:80nginx
参数说明:
- run(创建并运行一个容器)
- -d放在后台
- -p端口映射
- nginxdocker镜像的名字
vi /etc/docker/daemon.json"registry-mirrors": ["https://registry.docker-cn.com"] #更换成国内镜像源systemctlrestart docker
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"] 中国科技大学加速
七、 镜像管理命令
- 搜索镜像:docker search
文章图片
选镜像的建议:
- 优先考虑官方
- starts数量多
- 获取镜像
docker pull(push)
镜像加速器:阿里云加速器,daocloud加速器,中科大加速器,Docker 中国官方镜像加速:https://registry.docker-cn.com
docker pull centos:6.8(没有指定版本,默认会下载最新版)
docker pull daocloud.io/huangzhichong/alpine-cn:latest
例:
文章图片
- 查看镜像
docker images - 删除镜像
docker rmi- 例子:docker image rm centos:latest
- 导出镜像
docker save- 例子:docker image save centos > docker-centos7.4.tar.gz
- 导入镜像
docker load- 例子:docker image load -i docker-centos7.4.tar.gz
- 停止容器
- docker stop ID或名字
文章图片
- docker container stop 接容器名字或id
文章图片
- docker stop ID或名字
- 杀死容器
- docker kill container_name
文章图片
- docker kill container_name
- 查看容器列表
- docker ps查看up状态容器列表
- docker ps –a查看所有容器列表
- docker ps -a -l--no-trunc 查看完整状态
文章图片
- 删除容器
docker rm
文章图片
- 批量删除容器(退出状态)
- docker rm -f
docker ps -a -q
- docker rm -f
- 启动一个docker容器
docker run -d -p 80:80nginx
参数说明:
- run(创建并运行一个容器)
- -d放在后台
- -p端口映射
- nginxdocker镜像的名字
- 启动容器并直接进入后台
docker run -it --name centos6 centos:6.8 /bin/bash
- -it分配交互式的终端
- --name指定容器的名字
- /bin/sh覆盖容器的初始命令
- --cpus指定cpu的数量
- --memory限定内存的大小
- -h指定容器的主机名
- 进入容器的方法
方法一:
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
- 例子:
docker exec -it容器id或容器名字 /bin/bash
docker attach [OPTIONS] CONTAINER
- 例子:
docker attach容器id或容器名字
nsenter(安装yum install -y util-linux 弃用)
- docker的本质
所以:docker容器内的第一个进程必须一直处于前台运行的状态(必须夯住),否则这个容器,就会处于退出状态!
- 查看容器日志
docker logs container-name/container-id
推荐阅读
- 深入浅出 Java 中枚举的实现原理
- 数仓建设保姆级教程,离线和实时一网打尽(理论+实战)
- xp系统如何转移我的文档保存资料的转移办法
- XP系统如何进行硬盘分区的简便设置
- XP系统不能识别u盘的排查办法的几种原因?
- xp系统如何跳过登录框直接进入桌面的几种办法
- xp系统如何提取相册图片上的文字容易方便
- xp系统中找不到Normal.dot文件的位置怎样办?
- XP系统Excel如何查看打印浏览提示“尚未安装打印机”的几种处理步骤