Docker 入门基础
2019-05-02 13:14 *奋斗* 阅读(131) 评论(0) 收藏 举报Docker 好在哪里呢?
快速的持续集成;服务的弹性伸缩;部署简单,解放了运维;为企业节省了机器资源。
它解决了运行环境不一致所带来的问题,docker 之间的运行互不影响,让应用快速扩展弹性伸缩变得简单。
Docker 最初的目标是?
将linux中的应用打包,可以轻松的在服务器之间迁移。说白了,它就是一个装应用的容器。
Docker 思想是什么?
1)集装箱
2)标准化(运输方式标准化、存储方式标准化、API接口标准化)
3)隔离(lxc)
一句话:docker 负责来运送,不需要关心存储,由api来做统一的应用控制,将应用从超集码头运送到仓库。
专业一些的表达:去仓库把镜像拉取到本地,然后用一条命令把镜像运行起来,变成容器。
Docker 的三个核心概念?
镜像(集装箱)、仓库(超集码头)、容器(运行程序的地方)。
镜像:就是一系列的文件(应用程序文件、运行环境文件,只读),联合文件系统可以将不同的目录挂载到同一个文件系统下。类似于一个虚拟目录将多个目录的文件同时显示出来,并可以进行操作。这里面用到了分层的思想,不同的目录对应一个不同的层;
容器:本质就是一个进程(可读可写);
仓库:存放一系列镜像的地方,hub.docker.com(c.163.com 是网易镜像中心);
Docker 可以搭建自己的镜像中心吗?
可以,我们可以在内网搭建自己的镜像中心。
docker 对win10做了原生的支持,win10以下的版本需要用 docker-toolbox 的支持(在windows上虚拟一个 linux 运行环境);
docker 对 yosemite 10+做了原生支持,但其它旧版本也需要用 docker-toolbox 的支持(mac,home + 空格,是搜索应用程序的快捷方式);
在Linux 上,uname -r / -v 可以输出和系统本身相关的内容,在linux上安装的方式:apt-get install -y docker.io。
Docker 安装方便吗?
windows 10 被docker原生默认支持,docker for windows Installer.exe 安装完成后,需要重启 docker。
命令行操作 docker 时,如果提示“unauthorized: incorrect username or password”,需要 docker login 然后输入“用户名”和“密码”,输入邮箱不行!命令操作完成后,如果提示 Login Succeeded,表示登录成功!
Docker 和虚拟机相比的优势?
虚拟机占用资源多,冗余步骤多,启动慢,资源独占。因为它本身就是一个操作系统;
docker 启动快,资源占用少,体积小,多个 docker 可以共享资源;
Dockerfile 是什么?
它的作用就是告诉 docker 我要怎么制作我的镜像。
docker build 是什么?
就是来执行 dockerfile 中提到的每一件事情。
--- 常用操作命令 ---:
docker pull hello-wolrd // 拉取 hello-world 镜像
docker run hello-world // 运行 hello-world 容器应用
docker stop 7bw... // 停止容器应用
docker ps -a // 查找当前在运行中的容器应用
docker images // 查看当前都有哪些镜像
docker rmi 镜像id // 删除某个镜像
docker rm 容器id // 删除某个容器
docker run -d -p 8080:80 nginx // 将主机上的8080端口映射为docker中的80端口,run -d 表示后台运行,-p表示端口映射
docker exec -it 9d bash // 进入容器中的命令行操作
netstat -na|grep 8080 // 查看当前有哪些应用占用了8080端口
* docker stop $(docker ps -q) // 停用全部运行中的容器
* docker rm $(docker ps -aq) // 删除全部容器
docker build . -t jpress:latest // 编译 Dockerfile,生成镜像,jpress 为镜像名称,latest 为 tag
安装 Jenkins 在 windows 10环境下需要执行的命令:
docker run -u root --rm -d -p 8080:8080 -p 50000:50000 -v jenkins-data:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock jenkinsci/blueocean
浙公网安备 33010602011771号