代码改变世界

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