#yyds干货盘点#--docker容器快速入门

网友投稿 237 2022-10-23

#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容器,那么docker镜像中已经安装好的软件也可以运行,所以说docker是一种软件的打包技术。

三、docker的优点

解决了操作系统和软件运行环境的依赖nginx opensslgit openssl 对于开发人员来说,再也不用担心不会部署开发环境 开发环境,测试环境和生产环境高度一致。 让用户体验产品新特性的又一种思路。

四、docker安装

4.1 配置yum源

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 status docker.service

五、启动第一个docker容器

docker容器是一种软件的打包技术,接下来我们体验一下

传统编译安装nginx: 官网下载Nginx源码包wget tar解压源码包 创建Nginx用户 安装依赖包 编译安装三部曲configure,make,make install 修改nginx配置文件 启动nginx

启动一个docker容器

docker run -d -p 80:80 nginx

参数说明:

run (创建并运行一个容器) -d 放在后台 -p 端口映射 nginx docker镜像的名字 注释:docker run == docker create + docker start

六、docker容器加速

vi /etc/docker/daemon.json { "registry-mirrors": ["#更换成国内镜像源 } systemctl restart docker

{ "registry-mirrors": ["中国科技大学加速 }

七、 镜像管理命令

搜索镜像:docker search

选镜像的建议:

优先考虑官方 starts数量多

扩展:查询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 run -d -p 80:80 nginx

参数说明:

run (创建并运行一个容器) -d 放在后台 -p 端口映射 nginx docker镜像的名字

启动容器并直接进入后台 docker run -it --name centos6 centos:6.8 /bin/bash -it 分配交互式的终端 --name 指定容器的名字 /bin/sh 覆盖容器的初始命令

--cpus 指定cpu的数量 --memory 限定内存的大小 -h 指定容器的主机名

注释:docker run == docker create + docker start

进入容器的方法

目的:排错,调试

方法一:

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容器内的第一个进程必须一直处于前台运行的状态(必须夯住),否则这个容器,就会处于退出状态!

查看容器日志 docker logs container-name/container-id

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java 在游戏中探索数组二维数组
下一篇:API耐辐射压控声表面波振荡器的性能特点
相关文章

 发表评论

暂时没有评论,来抢沙发吧~