docker从入门到遗忘

镜像:

相当于是一个vm的虚拟机,举个栗子,这个虚拟机安装了python,mysql,django,那么我们可以叫这个镜像叫python-web镜像。

容器:

容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,而这些容器都是相互隔离、互不可见的。

Docker容器(Container)类似于一个轻量级的沙箱子(因为Docker是基于Linux内核的虚拟技术,所以消耗资源十分少),Docker利用容器来运行和隔离应用。

仓库:

Docker仓库(Repository)类似与代码仓库,是Docker集中存放镜像文件的场所。

目前,最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括Docker Pool等,可以提供稳定的国内访问。如果用户不希望公开分享自己的镜像文件,Docker也支持用户在本地网络内创建一个只能自己访问的私有仓库。

下载:

windows 取官网下载安装即可,与vm不兼容。

centos 分yum安装和脚本安装,yum比较复杂一点,就直接sh安装简单干脆

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun

启动docker:

$ sudo systemctl enable docker
$ sudo systemctl start docker

测试:

$ docker run hello-world

  

基础命令:

镜像:

获取镜像

$ docker pull dl.dockerpool.com:5000/ubuntu:14.04 # docker pull centos:7

dl.dockerpool.com为注册服务器,5000为端口号,ubuntu为仓库名称,14.04是镜像也是版本号

列出镜像:

$ docker image ls # docker image ls centos:7 

删除镜像:

$ docker image rm cnetos:7  

容器:

启动容器:

$ docker run -it centos:7 bash
$ docker run centos:7 echo "hello world"

-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开

列出容器:

$ docker container ls # 正在运行中的容器
$ docker container ls -a # 所有,包括已经结束的容器  

重新启动已终止的容器

$ docker container start 

守护态运行

$ docker run -d centos:7

终止容器

$ docker container stop

导出、导入容器

$ docker export 7691a814370e > centos.tar

$ docker import centos.tar zn/centos:7 

清除所有处于终止状态的容器:

$ docker container prune

  

外部访问容器:

容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P 或 -p 参数来指定端口映射。

$ docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py 

挂载:

$ docker run -it -v /d/project:/root/project centos /bin/bash  

之后在进行

$ cp -r ./project/ ./project2/

  

猜你喜欢

转载自www.cnblogs.com/zenan/p/9837252.html
今日推荐