PJzhang:docker基础知识的2个疗程-one
猫宁!!!
参考:http://virtual.51cto.com/art/201805/572135.htm
https://www.cnblogs.com/rkit/p/9237696.html
https://zhang.ge/5126.html
http://www.ityouknow.com/docker/2018/03/07/docker-introduction.html
http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html
深入浅出话Docker
https://cloud.tencent.com/edu/learning/live-1027
容器技术

容器和虚拟机的区别
docker更加轻量化,灵活高效,资源占用,性能消耗较小,适合单一用户;传统虚拟化则相对臃肿,但相互之间的隔离效果很好,适合混合用户。
docker相当于android手机上安装app,传统虚拟化则是android手机上安装一个软件,在软件上安装各种操作系统。



docker machine相当于集装箱的吊车,容器就是集装箱
docker可以解决系统环境统一化问题
docker隔离了各个进程
docker可以快速实现环境的搭建,通过仓库
集装箱改变世界,低成本,实现产业细化,促进全球化
各种东西都可以放入一个集装箱



docker build建立镜像。
docker环境搭建实战
https://cloud.tencent.com/edu/learning/course-1392
docker的基础概念



dockerhub地址
https://hub.docker.com/
docker可以事先搭好环境基础,解决好各种依赖问题。(私有仓库)
docker对应centos、ubantu
docker安装与常用命令
centos7系统
更新系统
yum -y update
缓存源
yum -y makecache
添加镜像源,因为没有
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker
yum -y install docker-ce

docker -v

启动docker
systemctl enable docker,开机自启动

systemctl start docker,启动
查看docker镜像,空的,依次镜像类型,镜像标签(可以自定义),镜像id,镜像被作者创建时间,镜像大小

拉取一个nginx镜像到本地


dockerhub中会对如何使用镜像进行详细说明



因下载太慢,换用腾讯云的源,vim /etc/sysconfig/docker
OPTIONS='--registry-mirror=https://mirror.ccs.tencentyun.com'

systemctl daemon-reload,重新加载服务配置
systemctl restart docker,重启docker

docker pull hello-world

显示hello-world的内容

创建dockerfile


docker build -t nginx:v1 .,-t指定创建目标的镜像,tag是v1

docker run -p 80:80 -d nginx:v1,本地的80端口,映射到镜像的80端口
获得5a6c7ced20e4e16095a1c380bffa7a59a8df74466e156467a430a13ddc65cd16
访问本地机器的ip

打镜像标签,选择v1的image id,image id不变,镜像类型名称改变

tag改变

docker ps显示目前运行的docker情况

运行容器的方式
docker run -p 80:80 -d nginx:v1,第一个80是宿主的端口,第二个80是容器的端口

docker top musing_almeida,top后面跟的是容器的名字,查看进程情况,用容器的id替代容器的名字也是可以的。

容器运行停止

docker start musing_almeida,启动容器
移除容器需要先关停docker

移除docker 之后,显然已经没有容器运行了

端口可以映射,目录也是可以映射的,docker容器的/root映射到宿主机的/root上,-v实现
docker run -it -p 80:80 -v /root:/root nginx:v2 /bin/bash


容器中root目录下创建一个test.txt,exit退出容器,可以看到宿主机中也有test.txt

退出容器,再次执行docker run -it -p 80:80 -v /root:/root nginx:v2 /bin/bash,可以重新进入,但是主机名已经改变了。
这里初步会对docker有一个掌握。
PJzhang:docker基础知识的2个疗程-one的更多相关文章
- Docker03 Docker基础知识、Docker实战
1 Docker基础知识 1.1 什么是Docker Docker是一个可以装应用的容器,就像杯子可以装水.书包可以装书一样:docker官网 Docker是Docker公司开发的,并开源到GitHu ...
- PJzhang:python基础入门的7个疗程-one
猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 安全从 ...
- docker 基础知识分享ppt
给团队做的docker基础分享ppt, 见下面的附件. https://files.cnblogs.com/files/harrychinese/docker_intro.pptx
- Docker基础知识及入门
什么是Docker? Docker是由dotcloud公司使用golang语言进行开发的,基于Linux内核的 cgroup,namespace,以及OverlayFS类的Union FS等技术,对进 ...
- PJzhang:python基础入门的7个疗程-two
猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 htt ...
- 史上最全docker基础知识汇总
正文 Docker常用命令 run docker run [OPTIONS] IMAGE [COMMAND] [ARG...] -e设置环境变量:-e username=zhj --name为容器指定 ...
- docker学习---docker基础知识
目录 docker的基础 1.安装docker 2.使用镜像 3.镜像迁移|导入和导出 4.docker Hub介绍 5.搭建私有镜像仓库 5.1.docker开源的镜像分发工具--docker Re ...
- docker基础知识普及(一)
背景 这篇内容是之前给部门同事培训时写的文档,旨在传达一些docker相关概念,有个基本印象,当然,以下内容都来自网络,我只是个搬运工.具体操作在下篇文章中 一.什么是docker? 1. Docke ...
- PJzhang:python基础入门的7个疗程-three
猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 第七天 ...
随机推荐
- windows下mysql5.6.x的日志正确配置方法(my.ini) (网上的都是5.6之前的版本)
https://blog.csdn.net/databatman/article/details/49951853 感谢楼主,找了好久,试了一下楼主的,果然是对的,网上的日志配置都是5.6之前的版本: ...
- css选择器学习(二)属性选择器
属性选择器 /*******************************************css2中的属性选择器*************************************** ...
- python字典的增删改查操作
一.字典 (键值对) 1.字典的基本格式:{key1:1,key2:2} 2.字典里的键必须是不可变的(如:数字,字符串,元组,bool值);值是可变的,可用数字,字符串,列表,字典等. 3.字典里 ...
- Codeforces Round #551 (Div. 2) F. Serval and Bonus Problem (DP/FFT)
yyb大佬的博客 这线段期望好神啊... 还有O(nlogn)FFTO(nlogn)FFTO(nlogn)FFT的做法 Freopen大佬的博客 本蒟蒻只会O(n2)O(n^2)O(n2) CODE ...
- MySQL 中Redo与Binlog顺序一致性问题
首先,我们知道在MySQL中,二进制日志是server层的,主要用来做主从复制和即时点恢复时使用的.而事务日志(redo log)是InnoDB存储引擎层的,用来保证事务安全的.现在我们来讨论一下My ...
- DP(第二版)
第一版请见:直通 话不多说,直接上题 1.P1040 加分二叉树 直通 思路: 已知中序遍历,相当于一段区间了,所以我们枚举一个k,如果以k为根节点,能够将分数更新,那么这段区间的根节点就置为k,最后 ...
- LOJ6436. 「PKUSC2018」神仙的游戏 [NTT]
传送门 思路 首先通过各种手玩/找规律/严谨证明,发现当\(n-i\)为border当且仅当对于任意\(k\in[0,i)\),模\(i\)余\(k\)的位置没有同时出现0和1. 换句话说,拿出任意一 ...
- (转)初试 Netflix 开源持续云交付平台 Spinnaker
目录 Spinnaker 介绍 环境.软件准备 安装 Development Spinnaker 配置依赖环境 配置并安装 Spinnaker 演示 Spinnaker Pipeline 演示 Spi ...
- vscode集成eslint
1. 安装 ESLint 扩展 首先,打开 VSCode 扩展面板并搜索 ESLint 扩展,然后点击安装 2. 项目安装eslint yarn add eslint -D 3. 设置eslint配置 ...
- win10 开启全局代理
1. 打开设置 2. 点击“网络和Internet” 3.设置手动代理 . 设置完成后就可以愉快的玩耍啦